Blog Single Post

How to Move Your WordPress Site Without Breaking Anything

Two servers with a gold arrow between them — moving your WordPress site safely

Moving a WordPress site sounds scary, but it's a well-trodden path: the files, the database, and the URLs inside that database all have to travel together. Here's how to do it safely, step by step — and when to just hand it to someone who does it every week.

Before you touch anything: the backup

Take a full backup — files and database — before you start. If anything goes sideways, you put it back exactly as it was. This is the step everyone skips and everyone regrets skipping.

The three things that move

  1. The files — everything under wp-content (themes, plugins, uploads) plus any custom files at the site root.
  2. The database — every post, page, setting and user lives here.
  3. The URLs inside the database — WordPress stores your domain in thousands of places. Miss these and every image on your site breaks.

Method 1: A migration plugin (most people)

Plugins like Duplicator, All-in-One WP Migration or UpdraftPlus package everything into one archive you import at the new host. The honest workflow:

  1. Install the plugin on the old site and export the package.
  2. Set up the new host (fresh WordPress, or the host's importer).
  3. Import the package, create a new database when prompted.
  4. Run the URL search-and-replace the plugin offers (never skip this).
  5. Resave your permalinks (Settings → Permalinks → Save) so links wake up.
  6. Test everything before pointing the domain: pages, forms, checkout, email.

Method 2: The manual move (for the confident)

Copy files via SFTP, export the database via phpMyAdmin, import it at the new host, update wp-config.php with the new database details, then run a proper search-and-replace on the database with a tool like WP-CLI's wp search-replace or interconnect/it's script — not a text editor, because serialised data breaks if you hack it directly.

The cutover: where downtime lives

The trick to a zero-downtime move: lower your DNS TTL a day beforehand, get the site fully working at the new host on a temporary URL or hosts-file preview, and only then flip the domain. DNS changes take minutes to propagate instead of hours, and the old site keeps serving until the moment the new one takes over.

Or: hand it to us

Every DomainCastle plan includes free migrations done by us — a real engineer moves your site, tests it, and flips the switch, usually inside 48 hours with zero downtime. You watch the drawbridge go up. Tell us what you're moving and we'll take it from there.

New to hosting decisions generally? Start with what managed WordPress hosting should include — it makes the migration checklist above make a lot more sense.

Avatar of matt

matt