Migration
Moving to 9live is included with every plan. On Launch and Grow an engineer works through the migration with your team. On Scale and Custom we carry it out for you. Your current environment stays in place until you decide to shut it down.
How a migration runs
- 01DiscoveryA 30-minute call to list every service, database, scheduled job, environment variable and external integration.
- 02BuildWe set up your environment on 9live from your repository, restore a copy of your data, and run your test suite against it.
- 03Data syncPostgreSQL and MongoDB replicate continuously from your current provider, so data stays current until cutover.
- 04CutoverAt a time you choose, we switch DNS and replication direction and watch error rates with your team.
- 05DecommissionYour old environment stays untouched for 14 days. If anything is wrong, we can switch back within minutes.
What we move
Application
- Web processes, workers and scheduled jobs
- Environment variables and secrets
- Custom domains and certificates
- Build configuration or Dockerfile
- Health checks
Data
- PostgreSQL, using logical replication
- MongoDB, using change streams
- Redis, with cache warm-up
- Files in object storage, to any S3-compatible bucket
- MySQL, converted to PostgreSQL
Typical timelines
| Setup | Typical duration | Downtime at cutover |
|---|---|---|
| One application and a PostgreSQL database | 3 to 5 working days | Under a minute |
| Several services with PostgreSQL and Redis | 1 to 2 weeks | Under a minute |
| MongoDB replica set | 1 to 2 weeks | Under a minute |
| MySQL to PostgreSQL conversion | 2 to 4 weeks | Planned window |
| Databases over 500 GB | Planned individually | Planned individually |
Most of the elapsed time is waiting for a cutover window that suits your team. Downtime figures assume continuous replication is possible from your current provider.
Moving from a specific provider
- HerokuPer-dyno and per-add-on pricing, US and EU common runtime.
- RenderPer-service instance pricing, nearest region Singapore.
- Fly.ioUsage-billed VMs in many regions worldwide.
- RailwayUsage-based billing with templates for fast setup.
- DigitalOcean App PlatformPer-component pricing, with a Bangalore region.
- VercelFrontend platform with serverless functions; pairs with 9live for the backend.
- AWSEC2 or Lightsail, RDS and ElastiCache, assembled and operated by you.
- E2E NetworksIndian cloud provider, strong in GPU compute.
- HetznerLow-cost servers in Europe, the US and Singapore. Operations are yours.
- Hostinger VPSLow-cost unmanaged VPS. Everything above the OS is yours.
- Coolify or DokployOpen-source platforms you install and run on your own server.
Questions
What's the difference between plans?
On Launch and Grow, an engineer plans the migration with you, handles the database replication and joins the cutover; your team makes the application changes. On Scale and Custom, we carry out the whole migration, including DNS and cutover.
Will there be downtime?
For PostgreSQL and MongoDB we use continuous replication, so the switch usually takes seconds plus DNS propagation. Redis caches are warmed before cutover. If continuous replication isn't possible from your provider, we plan a short maintenance window with you.
What if part of our stack isn't supported?
Anything that runs in a container runs on 9live. If something doesn't fit, such as a dependency on a provider-specific service, we'll tell you during discovery, before you commit.
We run on a VPS without Docker. Can you still migrate us?
Yes. We write a Dockerfile for your application as part of the migration and hand it over so it lives in your repository.
Plan your migration
Tell us where you're hosted today and what you run. We'll reply with an outline of the migration and a likely timeline.
