Docs

Extensions

Add features to Postgres: every extension Sovaria offers and what it is for, turning extensions on and off, extensions that need a higher plan, and the ones that aren't available.

Updated Oct 20, 2026
Schema › Extensions with enabled and available extensionsSchema › Extensions with enabled and available extensions
Schema › Extensions

Extensions add types, functions and index types to Postgres: vectors for AI search, geography, fuzzy text matching, encryption. They are installed per project database and turned on per project.

In the console

  • Schema › Extensions shows the extensions that are on, with their version, and those you can turn on, grouped by category. Search by name or purpose.
  • Each row links to the extension's documentation.
  • An extension your plan doesn't include shows Upgrade to … with the plan that has it.
  • Turning one on from the console also works for extensions Postgres reserves for superusers (PostGIS, pg_buffercache…): Sovaria creates them for you.

In the SQL editor, create extension if not exists pg_trgm; works for extensions that don't need a superuser.

Available extensions

ExtensionForRead more
vector (pgvector)Embeddings and nearest-neighbour search with hnsw and ivfflat indexesVector search and embeddings
pg_graphqlA GraphQL API over your tables at /graphql/v1Postgres clients and GraphQL
pg_stat_statementsStatistics for every query: calls, time, rows; powers Query PerformancePerformance
pgcryptogen_random_bytes(), crypt() password hashes, pgp_sym_encrypt()
uuid-osspMore UUID versions (gen_random_uuid() is built in without it)
pg_trgmSimilarity and fast ilike '%text%' with a gin indexIndexes
unaccent, citextAccent-insensitive search; case-insensitive text columns (emails)
fuzzystrmatchSound-alike and edit-distance matching (levenshtein, soundex)
btree_gin, btree_gistPlain columns in gin/gist indexes; exclusion constraints on ranges
hstore, ltreeKey-value columns; tree paths like shop.books.fiction
intarray, tablefunc, isn, seg, bloomInteger array operators, crosstab pivots, ISBN/EAN types, intervals, bloom indexes
dict_int, dict_xsynExtra full-text search dictionaries (numbers, synonyms)
tsm_system_rows, tsm_system_timeRandom samples of a big table with tablesample
postgisGeography types, spatial indexes and functions: distance, within, intersects
cube, earthdistanceGreat-circle distance without PostGIS
pgrowlocks, pgstattuple, pg_buffercache, pg_prewarmInspect locks, table bloat and the cache; warm the cache after a restartPerformance

Which of these each plan includes:

FreeProUltraTeamEnterprise
Database extensionsStandardAllAllAllAll custom

Examples

create extension if not exists pg_trgm;
create index products_name_trgm_idx on products using gin (name gin_trgm_ops);

select id, name, similarity(name, 'iphon') as score
from products
where name % 'iphon'
order by score desc
limit 10;

Turning an extension off

Turning an extension off drops its types and functions. Postgres refuses while a column, index or function of yours still uses them; remove those first or use drop extension … cascade in the SQL editor, which also drops the columns and indexes that depend on it. Take a backup first (Backups and recovery).

Not offered

  • dblink, postgres_fdw, file_fdw and other extensions that reach the network or the server's files: each project's database stays isolated. Use Edge Functions to combine data from other systems.
  • pg_cron: use function schedules (Event triggers), which have retries and logs.
  • Languages other than SQL and PL/pgSQL (plpython3u, plv8): write that code as an Edge Function.

Coming from Firebase or Supabase?

PlatformWhat this is called there
SupabaseSupabase Postgres Extensions
SovariaExtensions

Moving an existing app? Migrate from Supabase or Firebase imports users (with their passwords), data, files and rules.