A WordPress migration goes wrong in one of two ways. Either the site is unreachable during the switch, or it is reachable but writing to the database you are about to discard. Both are avoidable, and the sequence below is the same regardless of who you are moving between.
Lower the DNS TTL first
Do this several days before anything else. TTL is how long resolvers are permitted to cache your DNS record, and the default is commonly 24 or 48 hours. Drop it to five minutes, then wait out the old value before you begin — the change itself is subject to the TTL it replaces.
Skip this and the cutover stops being something you control. It becomes something you wait for, unevenly, as caches expire around the world at different times.
Build the replica; leave the original serving
Copy files and database to the new host and bring the site up there without pointing anything at it. Nothing about the live site changes. You now hold two copies, one of them private.
Verify it before anyone else can reach it
Add a line to your local hosts file mapping the domain to the new server’s IP address. Your machine now resolves the real domain name to the new host while the rest of the world still reaches the old one. You can click through the genuine site — checkout, forms, logins, admin — at its real URL.
This is where hardcoded absolute URLs, missed search-and-replace passes, and anything that authenticates by IP will surface. That is exactly where you want them to surface.
Freeze, sync, then cut over
Anything written to the old site after you copied the database will be lost, so the final database sync must be the last thing you do. Stop writes — maintenance mode, or a genuinely quiet window — sync the database once more, then change the DNS record. With a five-minute TTL, traffic moves in minutes.
Keep the old host for a fortnight
Do not cancel immediately. Email routing, cron jobs, forgotten DNS records and anything referencing the old server by IP will announce themselves over the following week or two. Leaving the original in place turns each of those into a small correction instead of an outage.
Or hand it over
Every plan here includes unlimited migrations performed by an engineer at no cost, with a 24-hour turnaround, DNS timing included. It is the same process run by someone who does it daily. If you would rather do it yourself, the sequence above is the one we would follow.