Migrate from Xata to Layerbase
Xata is unmodified Postgres now, so a branch moves with one connection string. Paste the direct -rw string for the branch you want and we copy the schema and data to a managed Layerbase Postgres in one read-once pass. Flat plans, a free tier that stays, and branching that is not Postgres-only.
Still comparing? Xata alternatives
Why switch
Why teams leave Xata
A free tier that still exists
Xata Cloud starts at $0.012 an hour plus $0.28 per GB-month, with a 14-day trial and no free plan. A Layerbase Postgres is $0 on the Free tier with no card, then $5/mo Solo or $15/mo Pro, and the number does not move with usage.
Plain Postgres in, plain Postgres out
Xata runs vanilla Postgres, so the copy is a normal read-once pg_dump through the direct -rw endpoint. Schema, data, sequences, and indexes come across. Nothing is written back.
Branching that is not Postgres-only
Layerbase branches are copy-on-write too, in seconds, wired to Vercel previews and GitHub, and they work on 16 engines rather than one. The Redis, search, or analytics store next to your Postgres gets the same treatment.
Reachable from anywhere, with TLS
Standard connection strings, pooled and direct, TLS by default, daily backups, a web SQL console, and the drivers and ORMs you already run. No proprietary client.
How it works
Four steps, one pass
- 1
Create a free account or sign in
Sign in with Google or GitHub. No credit card is needed to start, and the migration wizard opens with this platform already selected.
- 2
Paste your connection string
In the Xata dashboard open the branch you want to move and copy its connection string from the Connect panel: postgresql://user:password@<branch-id>-rw.<region>.xata.sh:5432/postgres. Either host works: a -pooler string is switched to the -rw direct endpoint before the copy, because the pooler runs PgBouncer in transaction mode, which pg_dump cannot run through.
- 3
Pick what to migrate and name it
Choose what to bring over, give the new Layerbase database a name, and start the migration. Progress streams live in the dashboard.
- 4
We copy it in one pass
The migration reads from Xata once and never writes to it. Credentials are used for the copy and never stored. When it finishes, you land in your new database with a live TLS connection string.
FAQ
Common Xata migration questions
Where do I find my Xata connection string?
Open the branch in the Xata dashboard and copy the connection string from its Connect panel. The -rw host is the direct one, postgresql://user:password@<branch-id>-rw.<region>.xata.sh:5432/postgres. If you paste the -pooler host instead, we swap it for -rw before the copy starts, because the pooler runs PgBouncer in transaction mode, which pg_dump cannot run through.
Do my Xata branches come across?
One branch per migration: the one whose string you paste. Other branches, pgroll migration history, and anonymization rules are Xata plumbing and do not travel. Migrate main, then recreate the branches you need with Layerbase branching, which is copy-on-write in seconds.
I was on the old Xata (Xata Lite). Does this work for me?
If your data lives in Postgres tables on the current Xata platform, yes. The retired serverless data platform, with its record, search, and file APIs, has no direct equivalent here; export those records through the old SDK into Postgres tables first, then migrate the tables.
Will my Xata branch be modified?
No. The migration is read-once: we connect with the string you paste, copy the schema and data, and disconnect. Nothing is written back and the branch keeps serving traffic throughout. If it had scaled to zero, the first connection wakes it.
What does it cost?
Postgres is on the Layerbase Free tier, so you can migrate and compare without a credit card. Paid plans start at $5 a month when you need more databases or resources.
Ready to leave Xata?
Sign in, and the migration wizard opens with Xata already selected. Your source is read once and never modified, so there is nothing to undo if you change your mind.