Neon: A Complete Guide
Neon

What is Neon?

Serverless PostgreSQL with separated storage and compute, branching, and scale-to-zero

6-min readUpdated Aug 2026

Neon in 60 seconds

WHAT IT IS

A serverless PostgreSQL platform that separates storage from compute so a database can scale to zero and branch instantly.

WHY IT'S USED

Teams pick it when they want real Postgres that costs nothing when idle and can clone a database in a second for each branch.

STRENGTHS
  • +Real Postgres, so existing drivers, extensions, and SQL keep working unchanged
  • +Compute scales to zero when idle, so you pay for storage but not idle CPU
  • +Branching clones the whole database by copy-on-write in about a second
LIMITATIONS
  • A compute scaled to zero adds a cold start to the first query after a pause
  • Managed cloud service, so you cannot run the full platform on your own metal
  • Serverless compute-hour pricing is harder to predict than a fixed instance
BEST KNOWN FOR
Serverless web appsPreview and dev branchesAI and agent backendsVariable-traffic APIsPer-tenant databases
Jump to at a glance, how it works, or quick start for the full picture on Neon.

At a glance

CategoryRelational
First released2022
LicenseApache-2.0
Written inRust, C
Runs onLinux
DeploymentSelf-hosted, Managed, Serverless
Wire protocolpostgresql
Query dialectpostgresql-sql
Consistencystrong
ACID supportnative
JSON supportnative
Full-text searchnative
Vector supportextension
HA modelactive-passive
Managed byneon

What is Neon?

Neon is a serverless PostgreSQL platform. It runs standard Postgres, so the same SQL, drivers, and extensions you already use keep working, but it splits the database into two independent layers: storage and compute. That split is what lets a Neon database scale its compute up and down on its own, drop to zero when nothing is querying it, and start back up when a request arrives.

The project started in 2021, founded by Nikita Shamgunov, Heikki Linnakangas, and Stas Kelvich. Linnakangas is a longtime PostgreSQL core contributor, and the goal was to rebuild Postgres storage for the cloud rather than wrap an existing instance. The storage engine is written in Rust and released under the Apache 2.0 license. Neon opened its managed service to general availability in 2023.

In 2025 Databricks acquired Neon, and the service continues to run under the Neon name. Vercel, Retool, Replit, and Dune have run it in production, and it has become a common backend for AI coding tools that create a fresh database per user or per project. The branching model and instant provisioning are the main reasons those platforms pick it over a fixed managed instance.

How Neon works

Neon separates storage from compute. The compute layer is a standard Postgres process that answers queries, while the storage layer is a custom multi-tenant service built on what Neon calls Pageservers. Instead of writing pages straight to a local disk, Postgres ships its write-ahead log to the storage layer, which keeps it durably in cloud object storage and serves pages back to compute on demand.

Because compute holds no permanent state, Neon can stop it entirely. When a database sees no traffic for a set period, the compute suspends and you pay only for stored data. The next connection wakes a fresh compute in a second or two, and it reads whatever pages it needs from the storage layer. Autoscaling works the same way, adding or removing CPU and memory as load changes without restarting the database.

Branching reuses the same storage design. A branch is a copy-on-write clone of the data at a point in time, created in about a second no matter how large the database, because it shares existing pages until one side writes. Each branch gets its own compute and its own connection string, so a team can spin up an isolated copy for a pull request or a test run. Everything above the storage layer is ordinary Postgres, so branches, the main database, and your local tooling all speak the same wire protocol.

Key concepts

Postgres compatibility

Neon runs unmodified PostgreSQL, currently versions 14 through 17, so it behaves like the database you already know. The same SQL dialect, the same client drivers, and most standard extensions work without changes. Anything you build stays portable, since you can dump it and restore it into any other Postgres.

Storage and compute separation

The core design splits the database into a compute layer and a storage layer that scale on their own. Compute runs the Postgres process and holds no permanent state. Storage keeps the write-ahead log and page data in cloud object storage. Either one can grow, shrink, or restart without touching the other.

Branching

A branch is a full copy of your database created by copy-on-write. It appears in about a second regardless of data size, since it shares storage pages with its parent until a write diverges them. Each branch carries its own compute and connection string, so you can open a throwaway database for every pull request or test run.

Autoscaling and scale-to-zero

Neon sizes compute to the current load. When queries arrive it adds CPU and memory, and when a database goes idle past a timeout it suspends compute and bills only for storage. The next request wakes a new compute in a second or two. This suits bursty traffic, though the wake step adds latency to the first query after a pause.

Connection pooling

Postgres opens one backend process per connection, which serverless functions can exhaust fast since each invocation may open its own. Neon bundles a PgBouncer-based pooler that multiplexes thousands of client connections onto a smaller pool. It also offers an HTTP driver so edge code can query over a single request with no raw socket.

Extensions and pgvector

Neon supports a broad set of Postgres extensions, enabled per database with CREATE EXTENSION. pgvector adds vector similarity search for embeddings, PostGIS adds spatial types, and pg_trgm speeds up fuzzy text matching. These are the standard upstream extensions, so code written against them on plain Postgres runs unchanged.

Neon by the numbers

Live GitHub adoption, updated daily

#3 of 33 open-source relational databases by GitHub stars
GitHub stars
22.9k
+292 in 30d
Forks
1.1k
Weekly growth
+62
stars in the last 7 days
Last commit
3mo ago
May 2026

Who uses Neon

A handful of the companies running it in production

VercelRetoolReplitDuneBunnyGenezio

When to use Neon

Best for

Serverless and edge apps

Compute that scales to zero pairs naturally with serverless functions, so a low-traffic app costs almost nothing to keep online and still handles a spike when one arrives.

Preview and CI databases

Instant branching gives every pull request or test run its own isolated copy of production data, created in a second, then thrown away when the branch merges or the run ends.

Per-tenant or per-user databases

Cheap idle compute makes it affordable to give each customer or project a separate database, which AI app builders lean on to provision a fresh Postgres for every new user.

Variable or unpredictable traffic

Autoscaling adjusts CPU and memory as load moves, so a service with quiet nights and busy launches gets capacity when it needs it without paying for a large instance all day.

Not ideal for

Self-hosted or air-gapped setups

Neon is a managed cloud service. If policy requires the database on your own hardware or inside an isolated network, a self-hosted Postgres or another engine fits that constraint better.

Steady, always-on heavy load

When a database runs hot around the clock, scale-to-zero never triggers, and a reserved instance on RDS or a self-managed server is usually cheaper than paying serverless compute-hours.

Latency-critical first queries

A compute that has scaled to zero takes a second or two to wake, which adds a cold start to the first request. Workloads that need every query fast should keep compute always on.

Large-scale analytical scans

Neon is tuned for transactional Postgres workloads, not warehouse scans over billions of rows. ClickHouse, BigQuery, or Snowflake handle that class of analytics far better.

Neon vs alternatives

Head-to-head specs against the top 4 alternatives

Neon vs PostgreSQL
Neon
PostgreSQL
Identity
License
Apache-2.0
PostgreSQL License
First released
2022
1996
Wire protocol
postgresql
postgresql
Capabilities
ACID
Native
Native
JSON
Native
Native
Vector
Extension
Extension
HA model
Active-passive
Primary-standby
Ecosystem
Managed providers
1
9
ORM support
4
10
Use cases
Best for
Serverless web apps · Development branching · Scale-to-zero workloads
General-purpose OLTP, complex queries with advanced SQL, geospatial data with PostGIS, and applications requiring strong ACID compliance
Not ideal for
Self-hosted production without cloud · Heavy OLAP
Extreme write-heavy workloads at massive horizontal scale, simple key-value caching, or real-time streaming without extensions
Neon vs CockroachDB
Neon
CockroachDB
Identity
License
Apache-2.0
BSL-1.1
First released
2022
2015
Wire protocol
postgresql
postgresql
Capabilities
ACID
Native
Native
JSON
Native
Native
Vector
Extension
Native
HA model
Active-passive
Raft
Ecosystem
Managed providers
1
1
ORM support
4
8
Use cases
Best for
Serverless web apps · Development branching · Scale-to-zero workloads
Globally distributed OLTP applications requiring serializable consistency and zero-downtime operations
Not ideal for
Self-hosted production without cloud · Heavy OLAP
Heavy analytics/OLAP workloads, single-node simplicity, or cost-sensitive small deployments
Neon vs YugabyteDB
Neon
YugabyteDB
Identity
License
Apache-2.0
Apache-2.0
First released
2022
2017
Wire protocol
postgresql
postgresql, cassandra
Capabilities
ACID
Native
Native
JSON
Native
Native
Vector
Extension
Native
HA model
Active-passive
Raft
Ecosystem
Managed providers
1
1
ORM support
4
8
Use cases
Best for
Serverless web apps · Development branching · Scale-to-zero workloads
Geo-distributed PostgreSQL-compatible applications requiring strong consistency and high availability
Not ideal for
Self-hosted production without cloud · Heavy OLAP
Heavy OLAP workloads, simple single-node deployments, or latency-sensitive single-shard operations
Neon vs TimescaleDB
Neon
TimescaleDB
Identity
License
Apache-2.0
Timescale License (Apache-2.0 for core)
First released
2022
2017
Wire protocol
postgresql
postgresql
Capabilities
ACID
Native
Native
JSON
Native
Native
Vector
Extension
Extension
HA model
Active-passive
Primary-standby
Ecosystem
Managed providers
1
1
ORM support
4
4
Use cases
Best for
Serverless web apps · Development branching · Scale-to-zero workloads
Time-series data, IoT metrics, observability, and real-time analytics on PostgreSQL
Not ideal for
Self-hosted production without cloud · Heavy OLAP
Workloads that don't involve time-series data, or applications needing a non-PostgreSQL ecosystem

Quick start

Create a Neon project, grab the connection string, and run a first query. The database provisions in a second or two.

Create a project in the dashboard
1. Sign in at https://console.neon.tech
2. Click New Project, pick a region and Postgres version
3. Copy the connection string shown once it provisions
Or create one with neonctl
npm install -g neonctl
neonctl auth
neonctl projects create --name myapp
Connect with psql
psql 'postgresql://user:[email protected]/neondb?sslmode=require'
Create a table and insert a row
CREATE TABLE users (
  id SERIAL PRIMARY KEY,
  email TEXT UNIQUE NOT NULL,
  created_at TIMESTAMPTZ DEFAULT NOW()
);

INSERT INTO users (email) VALUES ('[email protected]');

SELECT * FROM users;

That is a live database. The connection string works with any standard Postgres driver, and a GUI client lets you browse branches and tables visually.

Frequently asked questions

What is Neon used for?
Neon is a serverless PostgreSQL platform used for serverless and edge web apps, preview and CI databases created per pull request, per-tenant databases that give each customer their own Postgres, and backends for AI coding tools that spin up a fresh database for every user. Vercel, Retool, Replit, and Dune have run it in production. Because it is standard Postgres, the same use cases you would put on any Postgres cluster fit Neon, with the added options of scale-to-zero and instant branching.
Is Neon free?
Neon has a permanent free plan that covers a set amount of compute time, storage, and a number of projects and branches, which is enough for hobby projects and early development. Paid plans add more compute, more storage, longer history retention, and higher limits for production workloads. The storage engine is also open source under the Apache 2.0 license, so the core technology is free, while the managed cloud service is what the paid plans charge for.
Who owns Neon?
Neon was built by Neon Inc., founded in 2021 by Nikita Shamgunov, Heikki Linnakangas, and Stas Kelvich. In 2025 Databricks acquired the company, and the service continues to run under the Neon name. Unlike PostgreSQL itself, which is community-run with no owning entity, Neon is a single-vendor product, so the roadmap, pricing, and hosted platform are decisions made inside one company.
Is Neon real PostgreSQL?
Yes. Neon runs unmodified PostgreSQL, currently versions 14 through 17, rather than a reimplementation or a wire-compatible clone. The same SQL dialect, client drivers, and standard extensions like pgvector and PostGIS work the way they do on any Postgres. What Neon changes is the storage layer beneath Postgres, not the database engine you query. Your data stays portable, so you can dump it and restore it into any other Postgres with the usual tools.
Is Neon serverless?
Yes. Neon separates storage from compute, which is what makes it serverless. Compute runs the Postgres process and holds no permanent state, so it can suspend when a database is idle and wake again on the next connection, and it can autoscale CPU and memory as load changes. You do not pick a fixed instance size or keep a server running around the clock. You pay for the storage you use plus the compute time you actually consume.

Skip the config files

Connect to Neon in 30 seconds. Browse tables, run queries, and edit rows visually, on localhost, self-hosted, or cloud.

Open Neon in 1bench