Xata
A platform that runs unmodified Postgres on Kubernetes with copy-on-write branches at the storage layer, scale to zero, and anonymized copies of production for development.
- What it is
- Relational databases
- Type
- Commercial product
- Made by
- Xata
- License
- Apache 2.0 for the open-source core; Xata Cloud and its Xatastor storage engine are proprietary
- Facts checked
- 24 October 2026
What it is
Xata does not change Postgres. It runs vanilla Postgres on Kubernetes through the CloudNativePG operator, which handles replicas, failover, upgrades, connection pooling and point-in-time backups to object storage, and puts the new parts underneath and around it. Underneath is distributed block storage exposed to each Postgres instance over NVMe over Fabrics: a new branch is a volume that points at its parent’s blocks, so creating one takes seconds whatever the database size, and only blocks that either side later writes are copied. Each branch is then an independent Postgres instance with its own compute, in its parent’s region; branches can’t be merged back, only deleted and recreated. Around it sit a SQL gateway that routes connections, wakes hibernated branches and serves a serverless driver over HTTP and WebSockets, a branch operator, a control-plane API and a CLI. A branch hibernates after 15 minutes to 3 hours idle and wakes on the next connection. For development data, xata clone copies a database through pg_dump, or follows it continuously through logical replication, and masks personal data on the way in using rules in .xata/clone.yaml.
The same code is sold three ways. The open-source core, published on GitHub under Apache 2.0 in April 2026, uses OpenEBS for storage and is meant for an internal Postgres-as-a-service or for preview and test environments; its README warns against using it for a single database or a public multi-tenant service. Xata Cloud, on AWS and GCP, uses the company’s own storage engine, Xatastor, and as checked on 2026-10-24 charges from $0.012 an hour for a micro instance (1 GB RAM) to $1.536 for 32 vCPUs and 128 GB, plus $0.28 per GB-month of storage, with no per-branch fee and a 14-day trial but no free tier. Bring Your Own Cloud runs it in your AWS, Azure or GCP account for a percentage of the equivalent cloud spend.
Why teams pick it
- Branches of any size in seconds, each a full Postgres instance that shares unchanged blocks with its parent, so every pull request, test run or agent can get its own database
- Plain Postgres with its usual extensions, such as PostGIS and pgvector, and tools such as
psql, Prisma and Drizzle; nothing to port - Anonymization built into cloning, so developer branches can come from a masked copy of production instead of production itself
- Open source under Apache 2.0, so the same platform can run on your own Kubernetes cluster, and idle branches scale to zero
Watch out for
- Branches never merge: data changes on a child stay there, and a child can’t be reset in place, only deleted and recreated from its parent
- A branch made straight from production carries all its sensitive data; the masking happens only when you clone through
xata clone - Self-hosting means running Kubernetes, CloudNativePG, OpenEBS and Keycloak, and the open-source version lacks the isolation features for adversarial multi-tenancy and the faster Xatastor engine
- The hosted service has no free tier, only a 14-day trial; every running branch bills compute by the hour, and a branch’s region is fixed when it is created
Good for
- Data model
- Relational (unmodified PostgreSQL)
- Query language
- PostgreSQL SQL
- Client protocol
- PostgreSQL wire protocol; a serverless driver over HTTP and WebSockets
- Replication
- CloudNativePG replicas and failover
- Storage engine
- PostgreSQL on copy-on-write block storage over NVMe-oF (Xatastor in the cloud, OpenEBS self-hosted)
- Ways to run it
- Xata Cloud on AWS and GCP, BYOC on AWS, Azure or GCP, or open source on Kubernetes
- Pricing model
- Per instance-hour ($0.012 micro to $1.536 for 32 vCPUs) plus $0.28 per GB-month; no per-branch fee
Alternatives
What all relational databases have in common →Compare side by side →
DoltOpen sourceAlso good for versioned data with branchesA MySQL-compatible SQL database with Git’s model built in: every table can be branched, diffed, merged, pushed and pulled, and every commit keeps the whole database as it was.How it fits with other technologies
A masked staging copy of production, and a branch of it for one pull request · bash
xata auth login
xata init # link this folder to a project and branch
# write anonymization rules to .xata/clone.yaml, then keep staging in sync
xata clone config --source-url "$PROD_URL"
xata clone stream --source-url "$PROD_URL" --branch staging
# a copy-on-write branch of the masked data, ready in seconds
xata branch create --parent-branch staging --name pr-482
xata branch wait-ready --branch pr-482
psql "$(xata branch url --branch pr-482)" -f migrations/0042_add_order_notes.sql
xata branch delete --branch pr-482 --yesSee it in a real stack
No architecture uses Xata yet. Drop it into the playground and wire it up yourself.Open playground →Where it came from2021–2026
Monica Sarbu, who had co-founded Packetbeat (bought by Elastic in 2015) and helped build Elastic Beats, founded Xata in April 2021. Its first product was a serverless database behind one API with a spreadsheet-like interface, aimed at both low-code users and developers, with full-text search and analytics built in. Index Ventures led a $5 million seed round in 2021, and Redpoint and Index co-led a $30 million Series A.
After more than four years of running that service on shared Postgres clusters, the company rebuilt its product from scratch as a Postgres platform. The new service opened as a private beta in May 2025, with branching at the storage layer instead of inside Postgres, and the original service was renamed Xata Lite. It uses two of Xata’s open-source tools: pgroll for zero-downtime, reversible schema changes, and pgstream for replication that carries schema changes and masks data.
In April 2026 Xata published the platform’s core under Apache 2.0, pointing to AI agents that each need their own database to experiment in, and kept its multi-region deployment code and Xatastor engine private.
Why it’s built this way
- Branch in the storage layer, not in Postgres
- Copy-on-write block storage gives each branch its own volume without a Postgres fork, so users keep full compatibility. In the founders’ words, instead of changing Postgres they built the platform around it.
- Build on CloudNativePG
- A mature Kubernetes operator already handled failover, upgrades, pooling and backups, so Xata only had to add the gateway, branch operator, control plane and scale to zero.
- Make anonymization part of cloning
- Branches copy whatever their parent holds. Masking data while it streams into a staging branch means developer branches made from it don’t contain personal data.
Timeline
- 2021
Monica Sarbu founds Xata in April; $5 million seed round led by Index Ventures
- 2025
The rebuilt Postgres platform opens as a private beta in May; the old service becomes Xata Lite
- 2026
The core is open-sourced under Apache 2.0 in April
- Index Ventures: Xata raises $5m (Sep 2021; founded April 2021)
- Xata blog: Series A announcement
- Xata blog: Xata, Postgres with data branching and PII anonymization (relaunch, Xata Lite)
- Xata blog: Xata is now open source (private beta since May 2025)
- Xata blog: Introducing Xata OSS (what stays private)
- xataio/xata on GitHub (repository created April 2026)
Sources9 · facts checked 24 October 2026
- Xata: Home (vanilla Postgres, branching, hibernation, BYOC)
- xataio/xata on GitHub: README (architecture, when not to use it)
- Xata blog: Introducing Xata OSS (CloudNativePG, OpenEBS, Xatastor, multi-tenancy)
- Xata blog: Xata is now open source (NVMe over Fabrics storage)
- Xata docs: Branches (copy-on-write, hibernation, no merges)
- Xata: Pricing (checked 2026-10-24)
- Xata CLI: branch
- Xata CLI: clone
- Xata blog: Xata, Postgres with data branching and PII anonymization (pgroll, pgstream)