Guide

How to Migrate Your WordPress Site to a New Domain or Host

Moving a WordPress site to a new host or domain is a task that intimidates many site owners, but with the right approach it is a manageable process that can usually be completed in under two hours without any loss of content or SEO value. The key is to follow a structured sequence and not rush the DNS cutover.

Whether you are moving to faster hosting, consolidating multiple sites, rebranding to a new domain, or switching from a shared host to a VPS, the migration process follows the same fundamental steps. This guide walks you through each one.

Preparing for the migration

Before touching anything, create a complete backup of your existing site: all files via FTP or your host’s file manager, and the database exported as a .sql file via phpMyAdmin. This is your insurance policy. If anything goes wrong during the migration, you can restore from this backup and start again.

If you are migrating to a new host, set up the new hosting account and create the target database before starting the migration. Note down the new database name, username, password and host — you will need these when updating wp-config.php. If you are migrating to a new domain, decide whether you want to set up a temporary domain on the new host for testing before pointing the real domain across.

Transferring files and the database

The simplest way to migrate WordPress is with the Duplicator plugin or All-in-One WP Migration. These plugins package your entire site — files and database — into a single archive file that you can download and deploy on the new server with a guided installer. Duplicator is particularly well-suited to domain changes because it handles the URL replacement in the database automatically.

If you prefer to migrate manually, upload all your files to the new server via FTP, import the .sql database file via phpMyAdmin on the new host, then update wp-config.php with the new database credentials. After importing the database, you will need to update the siteurl and home values in the wp_options table to reflect the new domain. You can do this via phpMyAdmin or by running a search-and-replace with a tool such as WP-CLI: `wp search-replace 'olddomain.com' 'newdomain.com' --all-tables`.

Testing and DNS cutover

Before updating DNS, test the site on the new server using a hosts file modification or a temporary URL provided by your new host. Check that all pages load correctly, images display, forms work and — if applicable — the checkout process functions end to end. Confirm that the WordPress dashboard is accessible and that your SSL certificate is active on the new host.

When you are confident the migration is successful, update your domain’s DNS records to point to the new host’s IP address. DNS propagation typically takes between one and 48 hours, during which some visitors will reach the old server and some the new one. Keep the old hosting account active for at least 72 hours after the DNS change before cancelling, and ensure both servers are serving identical content during this overlap period.

FAQs

Common questions.

Will migrating my WordPress site affect my Google rankings?
Migrating to a new host with the same domain should have no lasting impact on your rankings. If you are migrating to a new domain, implement 301 redirects from every old URL to the corresponding new URL — this passes the SEO value of your existing pages to the new domain. Set up the redirects before decommissioning the old domain and submit the new sitemap to Google Search Console.
How long does a WordPress migration take?
A straightforward migration using a plugin like Duplicator typically takes 60–90 minutes including testing. Manual migrations take longer, particularly for large sites with many files. The DNS propagation period is outside your control and can take up to 48 hours, though in practice it is usually much faster. Plan your migration for a low-traffic period to minimise disruption.
Do I need to reinstall WordPress on the new server?
No. Your WordPress files are transferred as part of the migration, so there is no need to install WordPress separately on the new server. You only need a database and a PHP-capable web server. If you are using a migration plugin, the installer wizard takes care of the setup on the new server automatically.
Related guides

More on web design & ux.

Want a hand putting this into practice?

Book a free, no-obligation consultation with a Norwich-based specialist.

Book a free consultation
Get started

Let's put your business in a better light.

Book a free, no-pressure consultation. We'll talk through your goals and tell you honestly what we'd do — whether you work with us or not.

  1. 01
    Tell us a bitFill in the form — two minutes, tops.
  2. 02
    We'll call you backWithin one working day, no pressure.
  3. 03
    Get a clear planHonest advice and a fixed quote.

Free · No obligation · We reply within one working day

Book a free consultation