Your questions,
answered
A project in Neon is the top-level container for your database environment. Each project includes your primary database, its branches, and compute resources. You can think of it like a GitHub repo - one project, many branches. Learn more about Neon’s object hierarchy.
A CU (short for Compute Unit) is Neon's way of representing instance size. It defines how much CPU and memory your database is using at any moment. Each CU allocates approximately 4 GB of RAM, along with associated CPU and local SSD resources.
Neon is a serverless database: it bills per true monthly usage. Your compute monthly usage is based on how long your compute runs and at what size.
We measure compute usage in CU-hours:CU-hours = CU size of your compute × number of hours it runsFor example: if a 2 CU machine runs for 3 hours, that’s 6 CU-hours of usage.
Learn more about Neon’s serverless model.Neon also charges for storage based on actual data usage, not allocated capacity. We measure this in GB-months:
1 GB-month = 1 GB stored for 1 full monthStorage is metered hourly and summed over the month, so you only pay for what you actually use, not for the maximum size your database reaches.
Each project in Neon starts with a root branch (your main database). You can then create child branches, which are isolated copies of your database state - great for testing, previews, and development.
But Neon uses a copy-on-write model, so:- Child branches do not increase your storage bill unless they diverge from the root.
- Only the differences (delta) between the root and each branch are counted.
At the end of the month, your total storage usage is:
Total GB-month = Root branch size + delta from all child branches
Learn more about Neon’s serverless model.Instant restores (also known as Point-in-Time Recovery, or PITR) are billed based on how much data changes in your primary branch over time, not how many restores you do:
- The Free plan gives you up to 6 hours of restore history, or 1 GB of data changes - whichever comes first. If your app writes a lot of data, you may get less than 6 hours of coverage.
- In the Launch plan, you can choose any restore window from 0 to 7 days. You're charged $0.20 per GB-month, based on how much data changes during that window. Setting it to 0 disables Instant Restores, and implies $0 additional costs.
- In the Enterprise plan, you can set a restore window up to 30 days, billed at $0.20 per GB-month for the changed data (same logic as Launch).
Read the docs for more information on Instant Restores.
Each paid Neon plan includes a number of branches per project at no extra cost. For example, the Launch plan includes 10 branches.
You can create and delete branches freely within that allowance. If you create more total branches than your plan includes, the extras are billed as branch-months, metered hourly. The pricing:
$1.50 per extra branch-month (≈ $0.002 per hour) billed only for branches that exceed your included allowanceFor example: The Launch plan includes 10 branches per project. You create 2 extra branches for 5 hours each → 10 extra branch-hours × $0.002/hour = $0.02 total.
Instead of charging a higher flat monthly fee, we’ve chosen to price the premium features of the Scale plan through compute usage - via a higher price per CU-hour.
This means you only pay more when you actually use the additional capabilities. You’re choosing to pay more for higher availability and enhanced security, which require operational redundancy on our side, while still keeping costs tied to your usage. Read more.
Neon lets you control compute usage by setting a maximum autoscaling limit per branch. This acts as a de-facto cost ceiling - your database won’t scale beyond the limit, even if traffic spikes.
For example, if you set a limit of 1 CU, your usage will never exceed 1 CU-hour per hour, regardless of demand. Learn how to configure autoscaling limits.