Trapped on a host you have outgrown
The hosting is slow, support is unhelpful or the renewal price jumped. You try a migration plugin and it stops partway through with a timeout. Or it finishes, but the new copy shows broken images, a white screen or the old site keeps appearing. The old host's control panel is unfamiliar, and the email accounts on the domain seem to be tangled up with the hosting somehow.
So you stay where you are, paying for something you do not like, because moving feels like it could take the site and email down.
Why WordPress moves go wrong
| Sticking point | What happens |
|---|---|
| Large uploads folder or database | Migration plugins time out or run out of memory |
| Old site URL stored in serialised data | A simple search and replace corrupts settings and widgets |
| Email hosted on the same server | Moving DNS without planning cuts off email |
| Different PHP version on the new host | Old plugins or themes break on arrival |
| Server features the old host provided | Caching, redirects, cron or firewall rules disappear |
| DNS managed by the old host | The domain's records live in an account you rarely see |
Most failed moves come from treating the site as a single package to copy. In reality it is files, a database, server configuration, DNS and often email, each with its own quirks.
What staying put is costing
A slow or unreliable host affects every visitor and every search ranking signal related to speed. Hosts that are hard to leave tend to know it, and renewal prices reflect that. And a site on an old server, running an old PHP version, becomes a security risk in its own right.
Failed attempts cost something too. A half-finished migration can leave two copies of the site in use, with content added to the wrong one, or orders placed on a copy that nobody is watching. Undoing that takes longer than the move itself would have, and it makes everyone more reluctant to try again.
How we move the site
- Survey the current setup: files, database size, PHP version, server rules, cron jobs, SSL, and where DNS and email are hosted.
- Prepare the new host to match what the site needs, with the right PHP version, caching, backups and staging.
- Copy files and database at the server level using command-line tools, rather than a plugin that times out.
- Handle URL changes with WordPress-aware tools that preserve serialised data, if the domain or path is changing.
- Test the site on the new host through a temporary address or hosts file before any live change: pages, forms, checkout, logins and scheduled tasks.
- Move email carefully. If mailboxes live at the old host, we either move them to a proper mail provider such as Microsoft 365 or Google Workspace, or recreate the records exactly, before touching DNS.
- Lower DNS time-to-live in advance, switch records at a quiet time, freeze content changes during the switch, and check everything again once traffic arrives.
- Keep the old host running until the new one is confirmed, then close it down once you have a final backup.
After the move
The site runs on hosting you chose, in an account you own, with backups and staging included. Email kept working throughout. DNS is documented and, if you wish, moved to a provider where you can see and manage it. The next time you want to change host, the setup is written down and the process is known.
Is this where you are?
- A migration plugin failed or timed out
- You are unhappy with speed, support or renewal price
- Email on your domain is hosted alongside the website
- You do not know where your DNS is managed
- The site runs on an old PHP version the new host does not offer
- A previous move left broken images or links