Running a site
How to move WordPress hosting without downtime
14 July 2026 · 7 min read
On this page
Migration is not difficult. It goes wrong in predictable ways, and almost all of them come from doing things in the wrong order.
Before you start
Ask the new host to do it. Most decent hosts migrate you free as part of signing up, and they have done it a thousand times. Ask before paying anyone, including us.
Check email. This is the single biggest cause of migration disasters. If your email is hosted with your current provider — you@yourdomain.com running on the same account — then moving the site can take your email with it. Find out first, and plan email separately.
Take a full backup of the current site and download it. Not to the old host. To your machine.
Note your current DNS records. All of them, including MX (email), TXT (SPF, DKIM, DMARC, verifications) and any subdomains. Screenshot the lot.
The order that avoids downtime
The principle: get the new site fully working before anything points at it.
1. Copy the site to the new host. Files and database. A migration plugin (Duplicator, All-in-One WP Migration) or manual SFTP plus a database export — either is fine.
2. Test it on a temporary address. Most hosts provide one, or you can edit your local hosts file to see the new server on your real domain without changing DNS for anyone else. Check the homepage, inner pages, forms, and checkout if you have one.
3. Lower your DNS TTL, 24 hours ahead. Set it to 300 seconds. This makes the eventual switch propagate in minutes rather than hours, and it is the step that turns "up to 48 hours of downtime" into "a few minutes".
4. Freeze the old site. Stop publishing, and on a shop, either pause orders briefly or accept that you will need to sync the database again at the end.
5. Sync once more. Copy the database again at the last moment so nothing published or ordered in between is lost.
6. Change the DNS A record to the new server. Leave everything else — especially MX — alone unless email is genuinely moving.
7. Watch both servers. Traffic drains from the old one over minutes to hours. Keep the old host running for at least a week.
8. Issue SSL on the new host as soon as DNS resolves. Most hosts do this automatically; check it rather than assuming. An expired or missing certificate looks like an outage to visitors.
After the switch
- Load the site over HTTPS and confirm there are no mixed content warnings
- Submit a contact form and confirm the email arrives — this breaks constantly on migrations
- Place a test order if you run a shop, on every payment method
- Check Search Console for crawl errors over the following week
- Confirm the site is not indexed as "discourage search engines" — migration plugins sometimes carry that setting across
- Verify backups are running on the new host
- Check your PHP version on the new server and update if it is lower than before
The things that go wrong
Email breaks. Because MX records were changed along with the A record, or because the email was on the old host all along. This is the most common and most damaging failure.
Mixed content. The site loads over HTTPS but assets are still referenced as HTTP. Run a search-and-replace across the database for the old URLs.
Hardcoded URLs. Anything that referenced the old temporary domain. Same fix.
Lost orders. On a shop, between the last database copy and the DNS switch. Hence step 5.
Permalinks 404. Usually a missing .htaccess or an nginx configuration difference. Re-save permalinks in WordPress first; if that does not fix it, ask the new host.
Search engines confused. They should not be — the domain has not changed. But check Search Console for a week, and if you also changed the domain, that is a much bigger job requiring redirects.
Do not cancel the old host for at least a week, ideally a month. It costs one more billing cycle and it is your only fallback if something surfaces late. People cancel immediately to save $15 and then discover a file that never copied.
When to pay someone
Do it yourself if the site is small, email is elsewhere, and you are comfortable with DNS.
Get help if you run a shop, if email is on the same account, if you have custom server configuration, or if downtime costs you money by the hour.
Our migration is $249 and includes the staging verification, the low-TTL switch at a quiet hour, SSL reissue, and keeping the old host live for seven days as a fallback. But ask your new host first — free is better than $249.