CrateDB Clients and Tools

CrateDB is a distributed SQL database that makes it simple to store and analyze massive amounts of machine data in real-time.


If you would like to see something added to this page, please get in touch or edit this page on GitHub.


Below is a selection of CrateDB client libraries.

Pick your library, and start building!

Language Maintainers Official support Driver
C# (.NET) Crate.IO ✔️ Npgsql
Erlang Community craterl
Go Community ✔️ pgx
Java Crate.IO ✔️ crate-jdbc
Node.JS Community ✔️ node-postgres
Node.JS Community crate-connect
Node.JS Community cratejs
Node.JS Community node-crate
PHP Crate.IO ✔️ CrateDB PDO
Perl Community DBD::Crate
Python Crate.IO ✔️ crate-python
Python Community ✔️ asyncpg
Ruby Community crate_ruby
Scala Community crate-scala


CrateDB supports the PostgreSQL wire protocol. Accordingly, many clients that work with PostgreSQL also work with CrateDB.

You can try this out for yourself:

  • Configure a PostgreSQL connection, but point your client to a CrateDB server instead of a PostgreSQL server
  • Authenticate as the crate superuser with no password
  • Specify the doc schema, if you’re asked for a database name

Check out the client compatibility notes and implementation differences for information about known limitations.

If you run into issues, please let us know using the Feedback section at the bottom of this page. We regularly update CrateDB to accomodate new PostgreSQL clients.


CrateDB integrates with many different PostgreSQL compatible tools.

Some of our favourite tools include:

  • Pentaho

    Pentaho prepares and blends data, delivering business analytics from any source. You can connect to CrateDB clusters by using Petaho Kettle and the standalone version of our JDBC driver.

  • StreamSets Data Collector

    The StreamSets Data Collector is a lightweight, powerful engine that streams data in real time. Read more.

See also

The integrations category on our blog.