Supported PostgreSQL Extensions

Last verified 28 Aug 2026

PostgreSQL is an open source, object-relational database built for extensibility, data integrity, and speed. Its concurrency support makes it fully ACID-compliant, and it supports dynamic loading and catalog-driven operations to let users customize its data types, functions, and more.

To expand the functionality of your PostgreSQL cluster, you can use extensions, which are bundled packages of SQL objects.

Install, Upgrade, or Disable Extensions

You can install supported extensions with psql’s CREATE EXTENSION command:

CREATE EXTENSION <extension-name>;

You can upgrade extensions to their latest version with psql’s ALTER EXTENSION command:

ALTER EXTENSION <extension-name> UPDATE;

You can disable extensions with psql’s DROP EXTENSION command:

DROP EXTENSION <extension-name>;

To see a list of extensions currently installed, use the following command:

\dx

The pg_stat_statements extension is required for Query Analytics when monitoring with Percona Monitoring and Management (PMM). See Configure a PMM Monitoring User.

Standard Edition Supported Extensions

The following versioned lists apply to PostgreSQL Standard Edition clusters. This list is current as of the Validated date in the page footer.

You can see available extensions from the psql command line with the following command:

SELECT * FROM pg_available_extensions;

Not all extensions listed in pg_available_extensions are installable on Standard Edition clusters. To list installable superuser-only and untrusted extensions on Standard Edition, run the following command.

SELECT *
FROM pg_available_extension_versions
WHERE name = ANY(string_to_array(current_setting('extwlist.extensions'), ','));

If required, assign superuser privileges to enable their use.

Request support for a new extension by voting for an existing request or submitting a new idea.

PostgreSQL 18 Standard Edition Extensions
Extension Name Description
address_standardizer Use to parse an address into constituent elements and support geocoding address normalization
address_standardizer_data_us A US sample dataset for Address standardizer
aiven_extras Use to perform privileged tasks such as logical replication without direct superuser access
anon Use to mask or replace personally identifiable information or commercially sensitive data
bloom An index access method based on Bloom filters
bool_plperl Use to transform between bool and plperl
btree_gin Support for indexing common data types in GIN
btree_gist Support for indexing common data types in GiST
citext A data type for case-insensitive character strings
cube A data type for multi-dimensional cubes
dblink Connect to other PostgreSQL databases
dict_int Text search dictionary template for integers
earthdistance Use to calculate distances across the surface of the Earth
fuzzystrmatch Use to determine similarities and distance between strings
hll A data type for HyperLogLog data
hstore A data type for sets of (key, value) pairs
intagg Integer aggregator and enumerator (obsolete)
intarray Functions, operators, and index support for 1-D arrays of integers
ip4r Data types and functions for IP addresses and ranges
isn Data types for international product-numbering standards
jsonb_plperl Transforms between jsonb and plperl
lo Use for large object maintenance
ltree A data type for hierarchical tree-like structures
pg_buffercache Use to examine the shared buffer cache
pg_cron Job scheduling tool
pg_partman Use to manage partitioned tables by time or ID
pg_prewarm Prewarm relation data
pg_repack Use to reorganize tables with minimal locks
pg_stat_monitor Use to view query origins, execution, planning statistics and details, query information, and metadata
pg_stat_statements Use to track planning and execution statistics of all SQL statements executed
pg_trgm Text similarity measurement and index searching based on trigrams
pgaudit Provides session and object audit logging for legal or certification compliance
pgcrypto Cryptographic functions
pgrowlocks Show row-level locking information
pgstattuple Show tuple-level statistics
plperl PL/Perl procedural language
plpgsql PL/pgSQL procedural language
postgis PostGIS geometry and geography spatial types and functions
postgis_raster PostGIS raster types and functions
postgis_sfcgal PostGIS SFCGAL functions
postgis_tiger_geocoder PostGIS tiger geocoder and reverse geocoder
postgis_topology PostGIS topology spatial types and functions
postgres_fdw Foreign-data wrapper for remote servers
seg Data type for representing line segments or floating-point intervals
sslinfo Info about SSL certificates
tablefunc Functions that manipulate entire tables, including crosstab
tcn Triggered change notifications
timescaledb Enables scalable inserts and complex queries for time-series data
tsm_system_rows TABLESAMPLE method which accepts number of rows as a limit
tsm_system_time TABLESAMPLE method which accepts time in milliseconds as a limit
unaccent Text search dictionary that removes accents
unit SI units
uuid-ossp Use to generate UUIDs
vector Type for vector similarity search
vectorscale Type for vector similarity search
PostgreSQL 17 Standard Edition Extensions
Extension Name Description
address_standardizer Use to parse an address into constituent elements and support geocoding address normalization
address_standardizer_data_us A US sample dataset for Address standardizer
anon Use to mask or replace personally identifiable information or commercially sensitive data
bloom An index access method based on Bloom filters
bool_plperl Use to transform between bool and plperl
btree_gin Support for indexing common data types in GIN
btree_gist Support for indexing common data types in GiST
citext A data type for case-insensitive character strings
cube A data type for multi-dimensional cubes
dblink Connect to other PostgreSQL databases
dict_int Text search dictionary template for integers
earthdistance Use to calculate distances across the surface of the Earth
fuzzystrmatch Use to determine similarities and distance between strings
h3 Bindings for H3, a hierarchical hexagonal geospatial indexing system
h3_postgis Integration for H3 PostGIS
hll A data type for HyperLogLog data
hstore A data type for sets of (key, value) pairs
intagg Integer aggregator and enumerator (obsolete)
intarray Functions, operators, and index support for 1-D arrays of integers
ip4r Data types and functions for IP addresses and ranges
isn Data types for international product-numbering standards
jsonb_plperl Transforms between jsonb and plperl
lo Use for large object maintenance
ltree A data type for hierarchical tree-like structures
pg_buffercache Use to examine the shared buffer cache
pg_cron Job scheduling tool
pg_partman Use to manage partitioned tables by time or ID
pg_prewarm Prewarm relation data
pg_repack Use to reorganize tables with minimal locks
pg_similarity Support similarity queries
pg_stat_monitor Use to view query origins, execution, planning statistics and details, query information, and metadata
pg_stat_statements Use to track planning and execution statistics of all SQL statements executed
pg_trgm Text similarity measurement and index searching based on trigrams
pgaudit Provides session and object audit logging for legal or certification compliance
pgcrypto Cryptographic functions
pgrouting Provide geospatial routing and other network analysis functionality
pgrowlocks Show row-level locking information
pgstattuple Show tuple-level statistics
plperl PL/Perl procedural language
plpgsql PL/pgSQL procedural language
postgis PostGIS geometry and geography spatial types and functions
postgis_raster PostGIS raster types and functions
postgis_sfcgal PostGIS SFCGAL functions
postgis_tiger_geocoder PostGIS tiger geocoder and reverse geocoder
postgis_topology PostGIS topology spatial types and functions
postgres_fdw Foreign-data wrapper for remote servers
rum RUM index access method
seg Data type for representing line segments or floating-point intervals
sslinfo Info about SSL certificates
tablefunc Functions that manipulate entire tables, including crosstab
tcn Triggered change notifications
timescaledb Enables scalable inserts and complex queries for time-series data
tsm_system_rows TABLESAMPLE method which accepts number of rows as a limit
tsm_system_time TABLESAMPLE method which accepts time in milliseconds as a limit
unaccent Text search dictionary that removes accents
unit SI units
uuid-ossp Use to generate UUIDs
vector Type for vector similarity search
vectorscale Type for vector similarity search
PostgreSQL 16 Standard Edition Extensions
Extension Name Description
address_standardizer Use to parse an address into constituent elements and support geocoding address normalization
address_standardizer_data_us A US sample dataset for Address standardizer
anon Use to mask or replace personally identifiable information or commercially sensitive data
bloom An index access method based on Bloom filters
bool_plperl Use to transform between bool and plperl
btree_gin Support for indexing common data types in GIN
btree_gist Support for indexing common data types in GiST
citext A data type for case-insensitive character strings
cube A data type for multi-dimensional cubes
dblink Connect to other PostgreSQL databases
dict_int Text search dictionary template for integers
earthdistance Use to calculate distances across the surface of the Earth
fuzzystrmatch Use to determine similarities and distance between strings
h3 Bindings for H3, a hierarchical hexagonal geospatial indexing system
h3_postgis Integration for H3 PostGIS
hll A data type for HyperLogLog data
hstore A data type for sets of (key, value) pairs
intagg Integer aggregator and enumerator (obsolete)
intarray Functions, operators, and index support for 1-D arrays of integers
ip4r Data types and functions for IP addresses and ranges
isn Data types for international product-numbering standards
jsonb_plperl Transforms between jsonb and plperl
lo Use for large object maintenance
ltree A data type for hierarchical tree-like structures
pg_buffercache Use to examine the shared buffer cache
pg_cron Job scheduling tool
pg_partman Use to manage partitioned tables by time or ID
pg_prewarm Prewarm relation data
pg_repack Use to reorganize tables with minimal locks
pg_similarity Support similarity queries
pg_stat_monitor Use to view query origins, execution, planning statistics and details, query information, and metadata
pg_stat_statements Use to track planning and execution statistics of all SQL statements executed
pg_trgm Text similarity measurement and index searching based on trigrams
pgaudit Provides session and object audit logging for legal or certification compliance
pgcrypto Cryptographic functions
pgrouting Provide geospatial routing and other network analysis functionality
pgrowlocks Show row-level locking information
pgstattuple Show tuple-level statistics
plperl PL/Perl procedural language
plpgsql PL/pgSQL procedural language
postgis PostGIS geometry and geography spatial types and functions
postgis_raster PostGIS raster types and functions
postgis_sfcgal PostGIS SFCGAL functions
postgis_tiger_geocoder PostGIS tiger geocoder and reverse geocoder
postgis_topology PostGIS topology spatial types and functions
postgres_fdw Foreign-data wrapper for remote servers
rum RUM index access method
seg Data type for representing line segments or floating-point intervals
sslinfo Info about SSL certificates
tablefunc Functions that manipulate entire tables, including crosstab
tcn Triggered change notifications
timescaledb Enables scalable inserts and complex queries for time-series data
tsm_system_rows TABLESAMPLE method which accepts number of rows as a limit
tsm_system_time TABLESAMPLE method which accepts time in milliseconds as a limit
unaccent Text search dictionary that removes accents
unit SI units
uuid-ossp Use to generate UUIDs
vector Type for vector similarity search
vectorscale Type for vector similarity search
PostgreSQL 15 Standard Edition Extensions
Extension Name Description
address_standardizer Use to parse an address into constituent elements and support geocoding address normalization
address_standardizer_data_us A US sample dataset for Address standardizer
anon Use to mask or replace personally identifiable information or commercially sensitive data
bloom An index access method based on Bloom filters
bool_plperl Use to transform between bool and plperl
btree_gin Support for indexing common data types in GIN
btree_gist Support for indexing common data types in GiST
citext A data type for case-insensitive character strings
cube A data type for multi-dimensional cubes
dblink Connect to other PostgreSQL databases
dict_int Text search dictionary template for integers
earthdistance Use to calculate distances across the surface of the Earth
fuzzystrmatch Use to determine similarities and distance between strings
h3 Bindings for H3, a hierarchical hexagonal geospatial indexing system
h3_postgis Integration for H3 PostGIS
hll A data type for HyperLogLog data
hstore A data type for sets of (key, value) pairs
intagg Integer aggregator and enumerator (obsolete)
intarray Functions, operators, and index support for 1-D arrays of integers
ip4r Data types and functions for IP addresses and ranges
isn Data types for international product-numbering standards
jsonb_plperl Transforms between jsonb and plperl
lo Use for large object maintenance
ltree A data type for hierarchical tree-like structures
pg_buffercache Use to examine the shared buffer cache
pg_cron Job scheduling tool
pg_partman Use to manage partitioned tables by time or ID
pg_prewarm Prewarm relation data
pg_repack Use to reorganize tables with minimal locks
pg_similarity Support similarity queries
pg_stat_monitor Use to view query origins, execution, planning statistics and details, query information, and metadata
pg_stat_statements Use to track planning and execution statistics of all SQL statements executed
pg_trgm Text similarity measurement and index searching based on trigrams
pgaudit Provides session and object audit logging for legal or certification compliance
pgcrypto Cryptographic functions
pgrouting Provide geospatial routing and other network analysis functionality
pgrowlocks Show row-level locking information
pgstattuple Show tuple-level statistics
plperl PL/Perl procedural language
plpgsql PL/pgSQL procedural language
postgis PostGIS geometry and geography spatial types and functions
postgis_legacy Legacy functions for PostGIS
postgis_raster PostGIS raster types and functions
postgis_sfcgal PostGIS SFCGAL functions
postgis_tiger_geocoder PostGIS tiger geocoder and reverse geocoder
postgis_topology PostGIS topology spatial types and functions
postgres_fdw Foreign-data wrapper for remote servers
rum RUM index access method
seg Data type for representing line segments or floating-point intervals
sslinfo Info about SSL certificates
tablefunc Functions that manipulate entire tables, including crosstab
tcn Triggered change notifications
timescaledb Enables scalable inserts and complex queries for time-series data
tsm_system_rows TABLESAMPLE method which accepts number of rows as a limit
tsm_system_time TABLESAMPLE method which accepts time in milliseconds as a limit
unaccent Text search dictionary that removes accents
unit SI units
uuid-ossp Use to generate UUIDs
vector Type for vector similarity search
PostgreSQL 14 Standard Edition Extensions
Extension Name Description
address_standardizer Use to parse an address into constituent elements and support geocoding address normalization
address_standardizer_data_us A US sample dataset for Address standardizer
bloom An index access method based on Bloom filters
bool_plperl Use to transform between bool and plperl
btree_gin Support for indexing common data types in GIN
btree_gist Support for indexing common data types in GiST
citext A data type for case-insensitive character strings
cube A data type for multi-dimensional cubes
dblink Connect to other PostgreSQL databases
dict_int Text search dictionary template for integers
earthdistance Use to calculate distances across the surface of the Earth
fuzzystrmatch Use to determine similarities and distance between strings
h3 Bindings for H3, a hierarchical hexagonal geospatial indexing system
h3_postgis Integration for H3 PostGIS
hll A data type for HyperLogLog data
hstore A data type for sets of (key, value) pairs
intagg Integer aggregator and enumerator (obsolete)
intarray Functions, operators, and index support for 1-D arrays of integers
ip4r Data types and functions for IP addresses and ranges
isn Data types for international product-numbering standards
jsonb_plperl Transforms between jsonb and plperl
lo Use for large object maintenance
ltree A data type for hierarchical tree-like structures
pg_buffercache Use to examine the shared buffer cache
pg_cron Job scheduling tool
pg_partman Use to manage partitioned tables by time or ID
pg_prewarm Prewarm relation data
pg_repack Use to reorganize tables with minimal locks
pg_similarity Support similarity queries
pg_stat_monitor Use to view query origins, execution, planning statistics and details, query information, and metadata
pg_stat_statements Use to track planning and execution statistics of all SQL statements executed
pg_trgm Text similarity measurement and index searching based on trigrams
pgaudit Provides session and object audit logging for legal or certification compliance
pgcrypto Cryptographic functions
pgrouting Provide geospatial routing and other network analysis functionality
pgrowlocks Show row-level locking information
pgstattuple Show tuple-level statistics
plperl PL/Perl procedural language
plpgsql PL/pgSQL procedural language
postgis PostGIS geometry and geography spatial types and functions
postgis_legacy Legacy functions for PostGIS
postgis_raster PostGIS raster types and functions
postgis_sfcgal PostGIS SFCGAL functions
postgis_tiger_geocoder PostGIS tiger geocoder and reverse geocoder
postgis_topology PostGIS topology spatial types and functions
postgres_fdw Foreign-data wrapper for remote servers
rum RUM index access method
seg Data type for representing line segments or floating-point intervals
sslinfo Info about SSL certificates
tablefunc Functions that manipulate entire tables, including crosstab
tcn Triggered change notifications
timescaledb Enables scalable inserts and complex queries for time-series data
tsm_system_rows TABLESAMPLE method which accepts number of rows as a limit
tsm_system_time TABLESAMPLE method which accepts time in milliseconds as a limit
unaccent Text search dictionary that removes accents
unit SI units
uuid-ossp Use to generate UUIDs
vector Type for vector similarity search

Advanced Edition Supported Extensions

PostgreSQL Advanced Edition clusters include a limited set of extensions. Advanced Edition is in public preview, and the supported extensions below may change before general availability.

The following extensions are pre-installed on Advanced Edition clusters and don’t require the CREATE EXTENSION command: pg_repack, pg_stat_statements, pgaudit, plpgsql, and vector.

To enable an extension that isn’t pre-installed, use CREATE EXTENSION as described in Install, Upgrade, or Disable Extensions.

Extension Description PostgreSQL 16 PostgreSQL 17 PostgreSQL 18
pg_repack Use to reorganize tables with minimal locks Pre-installed Pre-installed Pre-installed
pg_stat_statements Use to track planning and execution statistics of all SQL statements executed Pre-installed Pre-installed Pre-installed
pgaudit Provides session and object audit logging for legal or certification compliance Pre-installed Pre-installed Pre-installed
plpgsql PL/pgSQL procedural language Pre-installed Pre-installed Pre-installed
vector Type for vector similarity search Pre-installed Pre-installed Pre-installed
address_standardizer Use to parse an address into constituent elements and support geocoding address normalization Available Available Available
address_standardizer_data_us A US sample dataset for Address standardizer Available Available Available
adminpack Provides support functions for remote server file and log management, used by pgAdmin Available Not supported Not supported
amcheck Functions for verifying relation integrity Available Available Available
autoinc Functions for auto-incrementing fields Available Available Available
bloom An index access method based on Bloom filters Available Available Available
btree_gin Support for indexing common data types in GIN Available Available Available
btree_gist Support for indexing common data types in GiST Available Available Available
citext A data type for case-insensitive character strings Available Available Available
cube A data type for multi-dimensional cubes Available Available Available
dblink Connect to other PostgreSQL databases Available Available Available
dict_int Text search dictionary template for integers Available Available Available
dict_xsyn Text search dictionary template for extended synonym processing Available Available Available
earthdistance Use to calculate distances across the surface of the Earth Available Available Available
file_fdw Foreign-data wrapper for flat file access Available Available Available
fuzzystrmatch Use to determine similarities and distance between strings Available Available Available
hstore A data type for sets of (key, value) pairs Available Available Available
hstore_plperl Transforms between hstore and plperl Available Available Available
hstore_plperlu Transforms between hstore and plperlu Available Available Available
insert_username Functions for tracking who changed a table Available Available Available
intagg Integer aggregator and enumerator (obsolete) Available Available Available
intarray Functions, operators, and index support for 1-D arrays of integers Available Available Available
isn Data types for international product-numbering standards Available Available Available
jsonb_plperl Transforms between jsonb and plperl Available Available Available
jsonb_plperlu Transforms between jsonb and plperlu Available Available Available
lo Use for large object maintenance Available Available Available
ltree A data type for hierarchical tree-like structures Available Available Available
moddatetime Functions for tracking last modification time Available Available Available
old_snapshot Provides functions for inspecting server state used by the old_snapshot_threshold setting Available Not supported Not supported
pageinspect Inspect the contents of database pages at a low level Available Available Available
percona_pg_telemetry Collects anonymized PostgreSQL usage telemetry for Percona Available Available Not supported
pg_buffercache Use to examine the shared buffer cache Available Available Available
pg_freespacemap Use to examine the FSM Available Available Available
pg_logicalinspect Functions to inspect logical decoding components Not supported Not supported Available
pg_prewarm Prewarm relation data Available Available Available
pg_stat_monitor Use to view query origins, execution, planning statistics and details, query information, and metadata Available Available Available
pg_surgery Perform surgery on a damaged relation Available Available Available
pg_trgm Text similarity measurement and index searching based on trigrams Available Available Available
pg_visibility Examine the visibility map (VM) and page-level visibility info Available Available Available
pg_walinspect Functions to inspect contents of the write-ahead log Available Available Available
pgcrypto Cryptographic functions Available Available Available
pgrowlocks Show row-level locking information Available Available Available
pgstattuple Show tuple-level statistics Available Available Available
postgis PostGIS geometry and geography spatial types and functions Available Available Available
postgis_raster PostGIS raster types and functions Available Available Available
postgis_sfcgal PostGIS SFCGAL functions Available Available Available
postgis_tiger_geocoder PostGIS tiger geocoder and reverse geocoder Available Available Available
postgis_topology PostGIS topology spatial types and functions Available Available Available
postgres_fdw Foreign-data wrapper for remote servers Available Available Available
refint Functions for implementing referential integrity (obsolete) Available Available Available
seg Data type for representing line segments or floating-point intervals Available Available Available
set_user Similar to SET ROLE but with added logging Available Available Available
sslinfo Info about SSL certificates Available Available Available
tablefunc Functions that manipulate entire tables, including crosstab Available Available Available
tcn Triggered change notifications Available Available Available
timescaledb Enables scalable inserts and complex queries for time-series data Available Available Available
tsm_system_rows TABLESAMPLE method which accepts number of rows as a limit Available Available Available
tsm_system_time TABLESAMPLE method which accepts time in milliseconds as a limit Available Available Available
unaccent Text search dictionary that removes accents Available Available Available
uuid-ossp Use to generate UUIDs Available Available Available
xml2 XPath querying and XSLT Available Available Available

We can't find any results for your search.

Try using different keywords or simplifying your search terms.