Neon is a serverless Postgres platform. You create a project, copy a connection string, and connect. There's no instance to size, no version to patch, and no capacity to plan. Compute autoscales between bounds you set, and it scales to zero when idle.
What "serverless" means here
Neon separates storage from compute, so a database isn't tied to a fixed instance. A few things this changes:
- Autoscaling. Compute moves between a minimum and maximum CU based on load. Up to 16 CU on the Launch and Scale plans, up to 2 CU on Free.
- Scale to zero. Compute suspends after 5 minutes of inactivity and resumes in a few hundred milliseconds on the next query. On the Free and Launch plans the timeout is fixed at 5 minutes. On Scale, it's configurable from 1 minute to always-on. See Scale to Zero.
- Branching. A new branch is a copy-on-write clone of your database, ready in seconds. Use it for schema changes, preview environments, or recovering from a bad migration.
- Usage-based pricing. $0.106/CU-hour on Launch, $0.35/GB-month for storage. No fixed monthly fee.
Provisioning a database
Two lines, using the Neon CLI:
neon projects create --name my-app
neon connection-stringThat prints a Postgres connection string you can paste into DATABASE_URL. The same flow works through the Neon API or the Console.
What you don't manage
| Operation | On Neon |
|---|---|
| Instance sizing | Autoscaling between min and max CU |
| Connection pooling | Built-in PgBouncer on every database |
| Backups | Instant restore via change history |
| Read replicas | Add via API or Console, share storage |
| Postgres version upgrades | Managed by Neon |
| Patching and OS updates | Managed by Neon |
What you do manage
Schema, queries, indexes, roles, and which extensions to enable. Neon supports the standard Postgres extensions library, including pgvector, PostGIS, and pg_stat_statements. See the extension reference.
How this differs from other "serverless" Postgres options
| Capability | Neon | Aurora Serverless v2 | RDS for PostgreSQL | Supabase |
|---|---|---|---|---|
| Scales to zero | Yes, default after 5 min idle | Yes, when min ACU set to 0 | No, instance always on | No on paid plans; Free plan pauses inactive projects |
| Autoscaling | 0 to 16 CU (Launch/Scale) | Min/max ACU range per cluster | Manual resize, brief downtime | Manual via compute add-ons |
| Database branching | Built in, copy-on-write | Cloning available via copy-on-write | None native | Branching for preview environments |
| Billing model | Usage-based (CU-hour, GB-month) | Usage-based (ACU-hour) | Instance-hour | Per-project compute hours plus plan fee |
| Connection pooling | Built-in PgBouncer | RDS Proxy, separate setup | RDS Proxy, separate setup | Built-in Supavisor pooler |
If you want "no instance to size, no pooler to deploy, no compute bill while idle," Neon and Aurora Serverless v2 with min 0 ACU are the two options that hit all three. Aurora trades that against AWS-native IAM, Multi-AZ, and the rest of the AWS surface area. Neon trades it against simpler pricing, faster branching, and no VPC requirement.

Create a Neon project in seconds and connect from your app with a standard Postgres connection string.








