Neon
neon.com › docs › introduction › branching
Branching - Neon Docs
A branch is a copy-on-write clone of your data. You can create a branch from a current or past state. For example, you can create a branch that includes all data up to the current time or an earlier time. Neon also supports schema-only branching.
Videos
04:22
Neon: The FUTURE of Postgres? Branching, HTTP Queries, and More!
Stop Using One Big Database: Give Every AI Agent Its Own ...
11:13
Getting Started with Database Branching - YouTube
01:11
How Does Branching Work Under The Hood? Heikki on Neon's Branching ...
06:57
Ship better apps with this CI/CD flow - YouTube
15:08
Optimizing your workflows with Neon Branching (Raouf Chebri) - YouTube
How does Neon database branching work?
Neon branching uses Copy-on-Write (CoW) semantics at the storage layer. When you create a branch, no data is copied. The branch is a metadata pointer to a specific point in the parent database's write-ahead log history. Pages are only written to the branch's storage when they are modified. This means branching is an O(1) operation regardless of database size, completing in under a second. Each branch is a fully isolated Postgres instance with its own connection string. You can create a branch per pull request, per developer, or per CI run without meaningful cost or time overhead.
getautonoma.com
getautonoma.com › home › blog › neon database: how serverless postgres gives every developer their own production-grade environment
Neon Database Review: Serverless Postgres Branching (2026)
What is Neon database?
Neon is an open-source (Apache 2.0), serverless PostgreSQL platform built on a disaggregated architecture that separates compute from storage. Acquired by Databricks in May 2025 for approximately $1 billion, Neon scales compute to zero when idle, charges per compute-unit-hour for actual usage, and offers instant Copy-on-Write database branching. It is fully Postgres-compatible and designed for development teams that want cloud-native database infrastructure without the operational overhead of managing Postgres themselves.
getautonoma.com
getautonoma.com › home › blog › neon database: how serverless postgres gives every developer their own production-grade environment
Neon Database Review: Serverless Postgres Branching (2026)
How do I seed a Neon preview branch in GitHub Actions?
If the parent is already seeded, you don't — the branch inherits the data when runs. If the PR changes the schema, detect the migration change (e.g., with ) and run only on those branches. Use the unpooled ( ) output from the action for the seed step, not the pooled URL.
seedfa.st
seedfa.st › blog › neon-branching-seed-data
Neon Branching Seed Data: CI-Friendly Workflow | Seedfast
Neon
neon.com › docs › guides › branching-intro
Get started with branching - Neon Docs
Recover lost data or track down issues by restoring a branch to its history, or just create a point-in-time branch for historical analysis or any other reason. Learn how to instantly recover your database to any point in time within your [history window](/docs/introduction/history-window) ... Explore example applications that use Neon's branching feature.
Smashing Magazine
smashingmagazine.com › 2023 › 09 › getting-started-with-neon-branching
Getting Started With Neon Branching — Smashing Magazine
September 26, 2023 - Branches are a really nice (and safe) way to configure or reconfigure your database without fear of screwing up the production database. Let’s take a closer look at how branching works with [Neon](https://bit.ly/46cEgX1), and the good news is, you probably already know how it works!
Reddit
reddit.com › r/neondatabase › how are you handling neon branching in real projects?
r/neondatabase on Reddit: How are you handling Neon branching in real projects?
December 28, 2025 -
Neon’s branching is powerful, but also easy to misuse.
Questions for those using it beyond demos:
-
Do you branch per PR? Per environment?
-
How do you handle schema migrations across branches?
-
Any gotchas with long-lived branches?
-
How do you avoid surprise costs or orphaned branches?
Would love to see real workflows, not just docs-based answers.
Top answer 1 of 2
2
Branching is amazing for integration testing - each test run gets a completely isolated branch with real Postgres. Since you can branch from production, your automated tests can run against real production data (or anonymized production data) instead of synthetic fixtures. I wrote Neon Testing to make this workflow super easy. It handles branch creation/cleanup automatically, and has safeguards against orphaned branches piling up. Been using it in CI for a while now. https://www.npmjs.com/package/neon-testing
2 of 2
1
This is great context, thanks for taking the time to lay it out so clearly. The note about logical replication keeping branches alive is especially valuable that’s the kind of thing that isn’t obvious at first, but can have a real cost impact if people aren’t aware of it. Auto-sleep vs always-on listeners is an important distinction for anyone using branching heavily. The approach of disposing branches as part of test teardown feels like the right default. Keeping branches around for debugging makes sense, but probably as an explicit, temporary opt-in rather than something automatic. Curious to see if others here have found longer-lived branches useful outside of debugging. On anonymization, opening an issue is a good call. Branching from production is powerful, but having a clear and safe anonymization path is what will make that pattern comfortable for more teams. Hopefully that discussion on GitHub surfaces some good approaches. This kind of practical insight around testing workflows, branch lifecycle, and cost behavior is exactly the sort of experience sharing that makes this community useful.
Neon
neon.com › docs › ai › skills › neon-postgres › references › branching.md
Branching in Neon
Neon branching gives you instant, copy-on-write database environments.
Awsworkshop
neon.awsworkshop.io › 4_modulethree › 31_feature_branch.html
Hands-On: Neon Branching Workflow :: English
Log in to the Neon Console. Navigate to your project and open the Branches tab.