How do you migrate WordPress without downtime? The trick isn’t luck — it’s not turning off the old site until you’ve verified the copy works on the new host. Do it in this order and the real cutover lasts minutes.
Step-by-step checklist (zero downtime)
- Lower your DNS TTL to 300 seconds 24-48h before migrating (in your current DNS panel). That way the final switch propagates in minutes, not hours.
- Clone the site on the new host without touching DNS yet. SiteGround has a free built-in WP migrator plugin; WP Engine migrates it for you if you’re coming from another host.
- Verify the cloned site on its temporary URL (or by editing your computer’s
hostsfile to point your domain at the new server without publishing it yet): check the database, uploads, permalinks and forms. - Only then switch DNS to the new host. With a low TTL, real propagation is usually a matter of minutes.
- Don’t turn off or delete the old hosting account for 72 hours, in case you need to revert the DNS change.
Free migration: SiteGround vs WP Engine
| SiteGround | WP Engine | |
|---|---|---|
| Migration included | Official free plugin | Free, assisted by their team |
| Best if… | You want to do it yourself with a plugin | You’d rather their team handle it |
| Typical downtime | Minutes (with low TTL) | Minutes (dedicated team) |
| Start here | See SiteGround | See WP Engine |
Mistakes that actually cause downtime
- Switching DNS before verifying the copy — if something’s broken, the live site is already down.
- No backup of the old host in case you need to roll back.
- Forgetting to migrate cron jobs, SSL certificates, or cache/CDN configuration.
- Not warning your team or client about the change if there are integrations (webhooks, forms) pointing at the old IP.
Conclusion
Migrating WordPress without downtime is about order, not luck: clone, verify, and only then point the DNS. With SiteGround or WP Engine (both include migration), the technical work is done for you — your job is not to flip the switch until you’ve checked it.