Skip to content

PostgreSQL hosting pooled from the start.

Add a PostgreSQL to your project and attach it to your app. It comes with connection pooling on, a direct address for tools that need one, and its connection details in your app's variables, so you never type a password.

  • VersionPostgreSQL 18
  • PoolingOn, port 6432
  • Reached byYour project's apps only
  • Priced byWhat it uses

Pooling, so many requests share a few connections.

Node.js and Python apps often open many short connections. The pool hands each transaction a connection and takes it back when it ends.

  • Pooled, on port 6432

    DATABASE_URL and DB_PORT use it: for your app, its workers and its scheduled tasks.

  • Direct, on port 5432

    DATABASE_DIRECT_URL skips the pool: for migrations that need one session, LISTEN, and tools that ask for a direct connection.

  • The names apps read

    Attaching adds DB_CONNECTION=pgsql, DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME and DB_PASSWORD too, and the app redeploys with them, without downtime.

Its own, with limits you set.

Every PostgreSQL is a database of your own, in its own sandbox, next to your project's apps when it can be.

  • Limits, not sizes

    Set its memory and processor limits, from 256 MB of memory. You pay for what it really uses below them.

  • Storage that grows

    Its disk grows with your data, with no cap, and you pay for the GB it holds.

  • Private

    It listens only on your project's own network, unless you open it to your own tools, encrypted. Another project's app is refused even with the right password.

Tools in the dashboard.

Move data in, look at it, and keep an eye on it, without installing anything.

  • Import and export

    Upload a .sql or .sql.gz file of up to 2 GB, plain SQL as pg_dump writes it, in pieces that carry on after a dropped connection, or import from a link. Exports wait 24 hours for you to download.

  • A database manager

    See your tables, browse rows 50 at a time, change a row, or run a query. A query that changes rows without a WHERE asks first.

  • Users and passwords

    Up to 10 extra users, read and write or read only. A new password reaches every attached app by itself; for a few seconds while they restart, a new connection with the old one is refused.

  • Its numbers

    Memory, processor, disk, connections and slow queries, every minute, with a warning at 90% of its memory.

PostgreSQL 18.

The newest major version, from PostgreSQL's own official release. New builds of it are offered as they come out, and we copy your data before each update.

  • PostgreSQL 18Recommended

Moving to a new major version, like 19 when it's offered, means a new database and an import.

A PostgreSQL, priced in the open.

Say your PostgreSQL holds 0.3 GB of memory and uses 2% of a processor, all month. You pay for that use, hour by hour, from your wallet.

reading today's prices

Reading the prices
Which address should my app use?
DATABASE_URL, the pooled one, for everything your app does. Use DATABASE_DIRECT_URL for migrations that need a single session, or for LISTEN and NOTIFY.
Is there a shared PostgreSQL?
No. Every PostgreSQL is your own. For a small shared database, use shared MySQL.
Can I reach it from my laptop?
Yes, once you switch on connections from outside on its page. It gets an address like db-7h3k2q.tanzahost.co and a port of its own, takes only encrypted connections (sslmode=require), and can allow only your own addresses. Those connections skip the pool. It's off until you switch it on.
Does Prisma or Django work with the pool?
Yes, as with any pool that works one transaction at a time. Point migrations at DATABASE_DIRECT_URL, and in Django turn off server-side cursors.