Short answer
Neon suspends a Postgres compute after a configurable idle window and resumes it on the next connection. Free and Launch plans suspend after 5 minutes; Scale lets you set anything from 1 minute up to always-on. Amazon Aurora Serverless v2 also supports auto-pause down to zero ACUs, but its idle pause is per cluster and only on recent PostgreSQL engine versions.
How it works
A traditional Postgres instance keeps every process running even when no one is connected. You pay for the VM whether you're serving traffic or not.
Neon decouples storage from compute. When no connections are active and no background work is happening, the compute is shut down. Storage stays available, billed separately at $0.35/GB-month (root branches) on paid plans, or included in the 0.5 GB free allowance.
Per-plan defaults from the plans page:
- Free: 5-minute idle timeout, can't be disabled
- Launch: 5-minute idle timeout, can be disabled
- Scale: 1 minute to always-on, fully configurable
Cold starts and connection limits on resume
When the next query arrives, the compute resumes. Cold start time is typically under a second for most workloads. If that latency matters to your application, disable scale-to-zero on a Launch or Scale plan.
A bigger issue on resume is connections. Postgres caps max_connections based on RAM, and a 0.25 CU compute (≈1 GB RAM) allows 104 connections, with 7 reserved for Neon's superuser. That leaves 97 for your app, which serverless functions can exhaust during a traffic spike.
Use Neon's PgBouncer-based connection pooling to accept up to 10,000 client connections per compute, routed through the smaller pool of Postgres backends. The pooled connection string ends with -pooler in the hostname:
postgresql://alex:AbC123dEf@ep-cool-darkness-123456-pooler.us-east-2.aws.neon.tech/dbname?sslmode=requireUse pooled connections from serverless
Connection-per-request runtimes (Vercel functions, Lambda, Cloudflare Workers) should always use the pooled string. The direct string is for migrations and long-lived workers.
How other Postgres providers compare
| Provider | Pauses when idle | Notes |
|---|---|---|
| Neon | Yes, 1–5 min idle window | Configurable on paid plans; storage stays available |
| Aurora Serverless v2 (PostgreSQL) | Yes, when min ACU is 0 | Requires Aurora PostgreSQL 13.15, 14.12, 15.7, or 16.3+; auto-pause is per cluster |
| Amazon RDS for PostgreSQL | No | Instance pricing is hourly regardless of activity; you can stop a DB instance manually, but RDS auto-starts it after 7 days |
| Supabase | No | Compute add-ons run continuously |
Aurora Serverless v2 added scale-to-zero in late 2024. You configure a cluster minimum of 0 ACUs and an idle timeout, and Aurora pauses the instance when no user connections are present. Pause and resume happens at the cluster level. See Scaling to Zero ACUs with automatic pause and resume.
Amazon RDS for PostgreSQL doesn't auto-pause. Instances are billed by the hour for the chosen class size whether or not connections are active.

Free plan auto-pauses after 5 minutes. No credit card.








