How to migrate a WordPress site to a new host
Every method compared, the right order of steps, testing before DNS and fixes for the most common errors.
Read the guide ↗A WordPress migration moves a site’s files and database to a new server, a new domain, or both. It goes smoothly when you copy the site while the old one stays live, test the copy on the new server, and only then switch DNS. These guides walk through every method, and our free plugin does the heavy lifting.
Each guide is written for one situation, with the steps in order and the problems people actually run into.
Every method compared, the right order of steps, testing before DNS and fixes for the most common errors.
Read the guide ↗Why big moves hit upload limits and timeouts, what to remove first, and how chunked transfers get through.
Read the guide ↗Rewrite URLs without breaking serialized data, redirect every old page and tell Google about the move.
Read the guide ↗Six phases and every check in order: plan, back up, copy, test before DNS, switch, verify and clean up.
Read the guide ↗Every method below is legitimate. The right one depends on your site’s size, your access to the server and how much you want to do yourself.
| Method | Cost | Download to your computer? | Good to know |
|---|---|---|---|
| Manual (SFTP + database) | Free | No | Full control for developers; slow for big media libraries |
| WP-CLI over SSH | Free | No | Fast and scriptable; needs shell access on both servers |
| Archive plugin (export / import a file) | Often free up to a size | Yes | Simple for small sites; big archives hit upload and time limits |
| Server-to-server plugin (SwiftMigrate) | Free | No | Any size on shared hosting; both REST APIs must be reachable |
| Host migration service | Varies | No | Hands-off; scope and timing depend on the host |
Whatever method you choose, these rules come from the WordPress Advanced Administration Handbook, Google’s guidance on hosting changes and site moves, and a decade of moving client sites.
SwiftMigrate is a free, GPL-licensed plugin in the WordPress.org directory. It sends files and database straight from the old server to the new one in parallel, checksummed chunks, checks every chunk before restoring, rewrites URLs and server paths safely, and keeps the new host’s previous state so one click undoes the switch.
It is developed by Hasan Alam Qazi and published by Organic Reach. It sends no data to us or any third party.
In each WordPress admin (old site and new site):
Have a question about a specific move? Email hello@organicreach.agency.