Skip to content
Switch branches/tags

PostgreSQL bindings for H3

This library provides PostgreSQL bindings for the H3 Core Library. For API reference, please see the H3 Documentation.

Developed in collaboration with Scandinavian Highlands.


  • PostgreSQL 9.6 or higher (including server headers). It might work with earlier versions, we have not tested earlier than 9.6.
  • C compiler (e.g., gcc)
  • GNU Make
  • Git & CMake (for libh3)

Quick Overview

If the prerequisites are met you can use the PGXN Client to download, build, and install, e.g.:

$ pgxn install h3
$ pgxn load h3
$ psql
=# SELECT h3_geo_to_h3(POINT('37.3615593,-122.0553238'), 5);
(1 row)


Generally, all functions have been renamed from camelCase in H3 to snake_case in SQL with an added h3_ prefix (except when that would result in a double h3_ prefix). For example geoToH3 becomes h3_geo_to_h3 and h3ToChildren becomes h3_to_children.

See API reference for all provided functions.

For developers

See Development.


This project is released under the Apache 2.0 License.