Migrate from MongoDB Atlas to FerretDB on Layerbase
Paste a mongodb+srv:// connection string and we copy your collections, documents, and indexes into a managed FerretDB database. FerretDB speaks the MongoDB wire protocol, so your driver and your queries stay as they are. Read-once: your Atlas cluster is never modified.
Why switch
Why teams leave MongoDB Atlas
Branches for a document database
Atlas has no branching. A FerretDB database on Layerbase branches copy-on-write in seconds, so a preview environment or a risky schema change gets its own copy of the data instead of a restored dump.
One flat price
Atlas prices a cluster by tier, storage, and data transfer, and the number moves when your traffic does. FerretDB on Layerbase is $5 a month on Solo and $15 on Pro, whatever the week looks like.
One connection string, one pass
Copy the mongodb+srv:// string out of Atlas and paste it. We connect once, copy every collection with its documents and indexes, and disconnect. A self-hosted mongod works the same way, so this is not an Atlas-only path.
Apache 2.0 at the bottom of it
The target is FerretDB: the MongoDB wire protocol implemented on Postgres with the DocumentDB extensions, under Apache 2.0. The storage underneath is Postgres, so the database backs up, restores, and branches like everything else in your account.
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
Paste a MongoDB connection string including the database name: mongodb+srv://user:password@cluster0.abc123.mongodb.net/mydb for Atlas, or mongodb://user:password@host:27017/mydb for a self-hosted server. Use the +srv form or a single host: a mongodb:// string listing several hosts is not accepted. The server has to be reachable from the public internet, so a mongod on a private network or on localhost cannot be imported. In Atlas, copy it from Database, then Connect, then Drivers, and check Network Access first: Atlas refuses connections from addresses that are not on its allow list. Any MongoDB source works here, not only Atlas.
- 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 MongoDB Atlas 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 MongoDB Atlas migration questions
What am I actually migrating to?
FerretDB, not MongoDB, and we would rather you know that before the copy than after. The MongoDB server side public license restricts how a managed provider can offer the server, so Layerbase Cloud runs FerretDB: an Apache 2.0 implementation of the MongoDB wire protocol, storing documents in Postgres through the DocumentDB extensions (MIT, originally from Microsoft and now a Linux Foundation project). Your driver connects with a mongodb:// string and mongosh works against it. If you need the MongoDB server itself, run it locally with Layerbase Desktop or the Layerbase CLI.
Which MongoDB features do not come across?
FerretDB covers CRUD, indexes, aggregation, and transactions. It does not implement $lookup, $graphLookup, change streams, $text search, capped collections, $merge and $out, $jsonSchema validation, time-series collections, or Atlas Search. An index FerretDB cannot create is skipped entirely rather than created without its options, and named in the migration report, so recreate it by hand if your queries need it. Views and time-series collections are not copied and are listed in the report the same way, and a collection over five million documents is refused: contact support for a larger migration. Our MongoDB to FerretDB guide has the full table and a grep you can run over your codebase first.
Will my Atlas cluster be modified?
No. We connect with the credentials in the string you paste, read the collections once, and disconnect. Nothing is written to Atlas and it keeps serving your app throughout. This is a one-shot copy rather than replication: there is no live sync afterwards, so plan a cutover instead of expecting the two to stay in step.
Can I migrate a MongoDB I host myself?
Yes, as long as we can reach it. The copy runs from our servers, so the source has to be reachable from the public internet: a mongod on a private network, behind a VPN, or on localhost is refused rather than dialed. Put the database name in the string so we know which one to copy, and use a user that can read it. Use the mongodb+srv:// form or a single host, because a mongodb:// string listing several hosts is not accepted. Atlas also needs your network access list to allow the connection while the migration runs.
How should I test it before I cut over?
Run the migration into a new database, point a staging copy of your app at it, and run your test suite. FerretDB writes land in Postgres, so a write-heavy workload will not behave exactly like Atlas did: measure yours on the migrated database rather than taking our word for it. FerretDB starts on Solo at $5 a month, and you can delete the database if it is not a fit.
Ready to leave MongoDB Atlas?
Sign in, and the migration wizard opens with MongoDB Atlas already selected. Your source is read once and never modified, so there is nothing to undo if you change your mind.