## TL;DR

First, pgvector requires Supabase Postgres 15.1.0.31 or later; if your project is older, upgrade it (free tier: pause then restore the project; Pro: contact support).

## Steps

1. Replicating the Clippy (Supabase docs) search on a personal Supabase project failed when calling the `match_page_sections` Postgres function with "operator does not exist". Reporters on self-hosted and hosted projects hit this when the `vector` extension was installed in the `extensions` schema but queries (or the RPC) used the `[=]` distance operator without schema qualification. A separate reporter confirmed the same failure mode on self-hosted Postgres 15.1.0.84.

2. Two things to check. First, pgvector requires Supabase Postgres 15.1.0.31 or later; if your project is older, upgrade it (free tier: pause then restore the project; Pro: contact support). Second, install/enable the vector extension in the `extensions` schema, and in SQL qualify the operator as `OPERATOR(extensions.[=])` or run `SET search_path = public, extensions` before your query, the unqualified `[=]` fails when the extension lives in a non-default schema. Both fixes were confirmed in the thread.

## When to use

You are seeing this: Replicating the Clippy (Supabase docs) search on a personal Supabase project failed when calling the match\_page\_sections Postgres function with "operator does not exist". Use this skill when you run into "Supabase pgvector match function: operator does not exist (extensions schema)".

## When not to use

If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.

## Versions

Versions mentioned in the source: Postgres 15.1.0.84, Postgres 15.1.0.31. If you are on something much newer or older, the details may have shifted.

## Why this happens

The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.
