Plan limits
Storage per server type
Storage listed is fully available for your PostgreSQL database. An additional 25 GB is reserved for the operating system on each node. All nodes in a cluster use the same server type.
Connection limits
Free databases connect directly to PostgreSQL. Dedicated plans connect through PgBouncer in transaction-pooling mode on port6432, which separates two numbers that are easy to conflate: how many client connections your applications can hold open, and how many transaction slots actually execute on PostgreSQL at once. Clients beyond the slot count are not rejected; they wait briefly for a free slot.
An HA cluster has the capacity of its server type. Adding nodes improves availability, not connection capacity, because all traffic reaches one primary; a Scale HA cluster is also capped at 10,000 concurrent connections by its load balancer.
Application-side pools (SQLAlchemy, pgx pool, Prisma) control how many connections your app opens; they do not add server-side transaction slots. A heavy analytical query can raise its own memory allowance with
SET LOCAL work_mem inside its transaction.Connection pooling
To keep many application workers inside your plan’s client-connection budget, use a client-side pool:- Python
- Node.js
- Go
Cluster limits
Rate limits
Exceeding limits
- Storage full: Write operations will fail. Scale to a larger server type or delete unused data.
- Connection limit reached: New connections are rejected. Close idle connections or implement connection pooling.