Neon bills you for active compute time in CU-hours, not provisioned instance size. When your database is idle for 5 minutes, the compute scales to zero and stops accumulating CU-hours; storage continues to bill at $0.35/GB-month. When a query comes in, the compute resumes in a few hundred milliseconds (Scale to Zero).
How Neon's billing works
Compute is the largest variable on most bills, and Neon measures it in CU-hours. Each Compute Unit allocates approximately 4 GB of RAM plus associated CPU and SSD. The formula:
compute size × hours running = CU-hoursFor example, a 0.25 CU compute running for 4 hours = 1 CU-hour. With autoscaling, "compute size" is the average size between your configured min and max during that window.
Rates on the paid plans:
- Launch plan: $0.106/CU-hour
- Scale plan: $0.222/CU-hour
Storage is billed separately at $0.35/GB-month. There's no monthly minimum, and invoices under $0.50 aren't collected (Plans).
How scale-to-zero works
The reason Neon can charge per-use for compute is that the Lakebase Postgres architecture decouples compute from storage. Storage lives in a log-structured layer that's always available. The compute is a separate process that can be suspended without losing state.
After 5 minutes of inactivity, the compute is suspended. The next query reactivates it in a few hundred milliseconds. On the Free plan, scale-to-zero is fixed at 5 minutes. On Launch you can disable it. On Scale, it's configurable from 1 minute to always-on (Scale to Zero).
Scale-to-zero caveats
Logical replication keeps the compute active while subscribers are connected, so a database with active subscribers won't suspend. See Logical replication in Neon.
A worked example
From the Launch plan examples:
- 10 CU-hours of compute (a 0.25 CU database running about 40 hours total): $1.06
- 2 GB root branch storage: $0.70
- 1 GB child branch storage: $0.35
- 1 GB instant restore history: $0.20
Total: $2.31 for the month.
A heavier workload at 250 CU-hours with 40 GB of root branch storage comes to about $40.50/month on Launch, or about $48 once you add 10 GB of child branch storage and 20 GB of instant restore history. Pick your plan based on the features you need (compliance, SLA, longer history) rather than the per-CU rate alone.
Other Postgres providers with usage-based billing
Pay-per-use looks different on each provider:
- Aurora Serverless v2 bills per ACU-hour and supports scaling to zero when you set min capacity to 0 ACUs. Each ACU is approximately 2 GiB of memory with corresponding CPU and networking (docs). Auto-pause is the closest analogue to Neon's scale-to-zero (docs).
- RDS for Postgres is not usage-based. You pick a database instance class and pay the instance-hour rate even when CPU is idle.
- Supabase uses a hybrid model: a monthly subscription fee (Pro starts at $25/month) plus hourly Compute Hours for each project's dedicated VM (docs). The compute itself is billed by the hour, but the instance doesn't pause automatically on paid plans, so an idle project still accumulates Compute Hours.
Neon's Launch plan has no monthly subscription, no per-project base, and active compute is the only thing that accumulates CU-hours. Storage still bills while compute is suspended.

Start free, then upgrade to Launch with no monthly minimum.








