Vibe

with real data

Instant branches of your Postgres with anonymized production data. No more slow, expensive staging replicas.
"Xata was a no-brainer for our team. We get a lot of value out of the copy-on-write database branching and scale-to-zero features."
logo-Ben Hubsch

Ben Hubsch

Software Engineer, SaaSgrid

Do everything faster and safer using production data

Replace your shared, fragile staging database with instant branches for your Postgres database. Let every developer and AI agent work safely on isolated and anonymized copies of production data.

Learn more
Old way
$ psql staging_db < dump.sql
Restoring public.users...
Restoring public.orders...
Restoring public.products...
Status: Waiting

DB SIZE: 1.1 TB

STATUS: Waiting

Elapsed:

02:45:30
$ xata branch create feature-1 --from prod
✓ Branch created
✓ Schema and data cloned
✓ Data anonymized
Status: Ready

DB SIZE: 1.1 TB

STATUS: Ready

Elapsed:

00:00:29

Branch instantly

Create an isolated database copy in seconds, not hours waiting for staging

Learn more

Develop with real data

Work with actual customer patterns (anonymized) and let AI agents experiment safely.

Learn more
Anonymize
Data Privacy Icon
Data Privacy Icon
Data Privacy Icon
Data Privacy Icon
Data Privacy Icon

Ship with confidence

Your tests ran on production data, so deployment won't surprise you.

Learn more
pr/#1654: Running Checks
Tests
Preview
Database Migration
Ready to merge
Preview branch ready in 21s

Vanilla Postgres & extensions

Xata is 100% compatible with modern Postgres and popular extensions.

Learn more
address_standardizer
address_standardizer_data_us
amcheck
auto_explain
autoinc
bloom
btree_gin
btree_gist
citext
cube
dblink
dict_int
dict_xsyn
earthdistance
file_fdw
fuzzystrmatch
hll
hstore
hypopg
intagg
intarray
insert_username
ip4r
address_standardizer
address_standardizer_data_us
amcheck
auto_explain
autoinc
bloom
btree_gin
btree_gist
citext
cube
dblink
dict_int
dict_xsyn
earthdistance
file_fdw
fuzzystrmatch
hll
hstore
hypopg
intagg
intarray
insert_username
ip4r
address_standardizer
address_standardizer_data_us
amcheck
auto_explain
autoinc
bloom
btree_gin
btree_gist
citext
cube
dblink
dict_int
dict_xsyn
earthdistance
file_fdw
fuzzystrmatch
hll
hstore
hypopg
intagg
intarray
insert_username
ip4r
address_standardizer
address_standardizer_data_us
amcheck
auto_explain
autoinc
bloom
btree_gin
btree_gist
citext
cube
dblink
dict_int
dict_xsyn
earthdistance
file_fdw
fuzzystrmatch
hll
hstore
hypopg
intagg
intarray
insert_username
ip4r
isn
lo
ltree
moddatetime
pageinspect
pg_buffercache
pg_cron
pg_freespacemap
pg_hint_plan
pg_partman
pg_prewarm
pg_repack
pg_surgery
pg_trgm
pg_visibility
pg_walinspect
pgrowlocks
pg_stat_statements
pg_stattuple
pgaudit
pgcrypto
pgrouting
isn
lo
ltree
moddatetime
pageinspect
pg_buffercache
pg_cron
pg_freespacemap
pg_hint_plan
pg_partman
pg_prewarm
pg_repack
pg_surgery
pg_trgm
pg_visibility
pg_walinspect
pgrowlocks
pg_stat_statements
pg_stattuple
pgaudit
pgcrypto
pgrouting
isn
lo
ltree
moddatetime
pageinspect
pg_buffercache
pg_cron
pg_freespacemap
pg_hint_plan
pg_partman
pg_prewarm
pg_repack
pg_surgery
pg_trgm
pg_visibility
pg_walinspect
pgrowlocks
pg_stat_statements
pg_stattuple
pgaudit
pgcrypto
pgrouting
isn
lo
ltree
moddatetime
pageinspect
pg_buffercache
pg_cron
pg_freespacemap
pg_hint_plan
pg_partman
pg_prewarm
pg_repack
pg_surgery
pg_trgm
pg_visibility
pg_walinspect
pgrowlocks
pg_stat_statements
pg_stattuple
pgaudit
pgcrypto
pgrouting
pglogical
pgtap
plpgsql
postgres_fdw
postgis
postgis_raster
postgis_sfcgal
postgis_tiger_geocoder
postgis_topology
prefix
refint
seg
sslinfo
tablefunc
tcn
tsm_system_rows
tsm_system_time
unaccent
uuid-ossp
vector
wal2json
xml2
pglogical
pgtap
plpgsql
postgres_fdw
postgis
postgis_raster
postgis_sfcgal
postgis_tiger_geocoder
postgis_topology
prefix
refint
seg
sslinfo
tablefunc
tcn
tsm_system_rows
tsm_system_time
unaccent
uuid-ossp
vector
wal2json
xml2
pglogical
pgtap
plpgsql
postgres_fdw
postgis
postgis_raster
postgis_sfcgal
postgis_tiger_geocoder
postgis_topology
prefix
refint
seg
sslinfo
tablefunc
tcn
tsm_system_rows
tsm_system_time
unaccent
uuid-ossp
vector
wal2json
xml2
pglogical
pgtap
plpgsql
postgres_fdw
postgis
postgis_raster
postgis_sfcgal
postgis_tiger_geocoder
postgis_topology
prefix
refint
seg
sslinfo
tablefunc
tcn
tsm_system_rows
tsm_system_time
unaccent
uuid-ossp
vector
wal2json
xml2
PostgreSQL

Unlimited copies, minimal cost

Branches use copy-on-write to share storage with the parent so you only pay for changes, not full copies. Dev branches can scale to zero, so you only pay for compute when active.

Learn more

DB branching per PR scenario cost comparison (USD/month)

20 GB dataset; one always-on DB + 25 dev branches × 5 h/weekday

Almost free dev branches

Branches use copy-on-write to minimize storage costs.

Scale-to-zero compute

Database per PR with compute that scales to zero when not in use.

Premium storage

High-end performance storage for your data.

All the benefits, none of the migration hassles

Connect Xata with your production database or switch to Xata Postgres for even more convenience, scale, and efficiency.

AWS Logo

AWS

Azure Logo

Azure

Google Cloud Platform Logo

Google Cloud

Hetzner Logo

Hetzner

Works with any Postgres

Connect to any Postgres provider — AWS RDS, Cloud SQL, self-hosted, or Xata Postgres.

Deploy anywhere

Choose SaaS for simplicity, BYOC for control and compliance.

Automatic protection

Enable automatic anonymization of branch copies for SOC2, HIPAA, and GDPR compliance.

What our users are saying

See what engineers, builders and leaders are saying about Xata.

logo-Jordan Tigani
Xata is currently the best way to run the pg_duckdb extension in the cloud. The platform’s flexibility and API access make Xata the perfect PostgreSQL partner for us.
Jordan Tigani

CEO, MotherDuck

logo-Chris Windsor
Xata was an easy choice for our team because of how straightforward the entire platform is, while simultaneously providing a suite of adequate features that we need. The Xata team has also been super responsive and more importantly quick to resolve the hiccups that we brought upon ourselves.
Chris Windsor

Lead Software Engineer, Safestreets

logo-Jignesh Chauhan
By adopting Xata, we cut database costs vs. our RDS setup and got better help from Postgres experts.
Jignesh Chauhan

Co-founder, CallKarma.ai

logo-Ben Hubsch
Xata was a no-brainer for our team. We get a lot of value out of the copy-on-write database branching and scale-to-zero features.
Ben Hubsch

Software Engineer, SaaSgrid

Test on real data. Deploy with confidence.

Keep production where it is. Use Xata for safe, instant dev branches.