Get the Best WordPress Backup
& Migration Plugin Today
Get Duplicator Now
Announcement remote restores

Introducing New Remote Restores For More Accessible Cloud Backups

Are you securing your site backups in the cloud? You'll need an easy way to restore them. Our new features…
WordPress migration checklist

The Ultimate WordPress Migration Checklist 

Written By: author image Joella Dunn
author image Joella Dunn
Joella is a writer with years of experience in WordPress. At Duplicator, she specializes in site maintenance — from basic backups to large-scale migrations. Her ultimate goal is to make sure your WordPress website is safe and ready for growth.
     Reviewed By: John Turner
reviewer image John Turner
John Turner is the President of Duplicator. He has over 20+ years of business and development experience and his plugins have been downloaded over 25 million times.

Need a WordPress migration checklist?

If you own a WordPress website, you might need to migrate to a new server, hosting provider, or domain name. Although this seems overwhelming, it doesn’t have to be. With planning, you can navigate this process smoothly and protect your data.

In this article, we’ll give you a comprehensive WordPress migration checklist! 

Your WordPress Migration Checklist

Before the Migration
1. Back up your original website
2. Set up your new hosting account or domain
3. Choose the right time for the migration
4. Inform your audience about the move
5. Put your WordPress site in maintenance mode
6. Disable caching, security, and redirect plugins
During the Migration
7. Choose the right tools
8. Create a copy of your website
9. Update your hosts file
10. Create a new database
11. Migrate your files and database
After the Migration
12. Check your new website’s speed and functionality
13. Scan for broken links
14. Add redirects
15. Update your DNS
16. Inform Google of the migration
17. Test your SSL certificate
18. Crawl your new website

Why You Might Need to Migrate Your WordPress Website

In a website migration, you’ll move your entire website to a different location. This might be a new hosting company, server, domain name, or Content Management System (CMS).

Migrating your website might seem like a huge hassle. You’ve already spent precious time setting up your site on your current hosting provider and domain name, so why move it?

There are many reasons why it can be beneficial to migrate your WordPress website. Here are just a few.

Hosting Upgrade

Moving to a more powerful or reliable hosting provider can lead to increased traffic, performance, and scalability.

Domain Change

You might want to migrate to a new domain name to improve brand recognition.

Security Concerns

If you experience hacks or cyber attacks, you’ll probably want to migrate to a new environment with better security.

Scalability Needs

As your website grows, you might need to migrate to a more powerful server to handle increased traffic and resource demands.

Change in CMS

Transitioning from another content management system to WordPress, or the other way around, requires you to migrate all of your original content.

Improved Support

Changing hosting providers might give you better customer support for technical issues.

Pre WordPress Migration Checklist

Once you decide to migrate your website, you’ll need to move all of your content and other data to the new location. If you skip a step along the way, this could lead to data loss.

With some thorough planning, you can easily migrate your WordPress website and avoid putting your data at risk.

We’ll show you everything you need to do before, during, and after a migration to make the transition as smooth as possible!

1. Back Up Your Original Website

First things first, you’ll want to back up your current WordPress website. This way, you’ll have a copy on hand if anything goes wrong during the migration. You’ll be able to simply restore this backup and instantly revert your site back to how it was before the move.

The easiest and fastest way to create backups is to install a WordPress backup plugin. With this tool, you won’t have to manually export copies of your files and database. 

Duplicator is a flexible plugin that can help you with WordPress backups and migrations. It allows you to quickly download your entire website as a zip file. You can save this as a backup or use it to migrate your data to a new host:

Duplicator Pro plugin

To back up your website, go to Duplicator Pro » Packages » Create New:

Create Duplicator package

After naming the backup, select a storage location. Duplicator automatically stores backups on your local server, but you can also move them to cloud storage services like Google DriveOneDrive, or Dropbox:

Duplicator backup storage

Then, hit Next. Duplicator will scan your website and inform you of any issues before starting the backup:

Duplicator package scan

Once the backup is finished, you’ll see it on the Packages page. To save it, hit Download » Both Files:

Download package files

It’s also a good idea to set up disaster recovery. This allows you to restore your backup even if you can’t access your WordPress dashboard due to a critical error. 

Simply find the backup and click on the blue house icon:

Duplicator disaster recovery

Next, click on Set Disaster Recovery:

Set Disaster Recovery

Now, either copy the recovery URL or download the launcher file:

Disaster recovery link

Be sure to save the URL in a safe place. If you need to, you can paste it into a browser window and immediately launch the Duplicator recovery wizard. Alternatively, simply open the launcher file.

2. Set Up Your New Hosting Account or Domain

In a migration, you’ll transfer your WordPress files and database to the new location. During this process, you won’t want to have to worry about purchasing a hosting plan or domain name.

If you’re moving to a new web host, consider setting up your account beforehand. Find the right plan for your needs and log into your control panel. 

To make things easier, you can also install WordPress on the new host. Many providers allow you to do this in one click. 

If you’re moving to a new domain name, you can purchase one through a domain registrar. On the other hand, you may be able to get a free domain from your web host.

Before migrating your site, be sure to have all of this information readily available:

  • Login information for your old and new hosting control panel
  • Login information for your old and new website
  • The nameserver information for the new web host
  • Login information for your domain registrar
  • FTP/SFTP credentials

Preparing this information in advance will help you migrate your website smoothly. If you have to worry about locating login credentials during the move, you might face more downtime than necessary. It’s best to be prepared so that you can move your site as quickly as possible. 

3. Choose the Right Time for the Migration

Especially if you have a large audience, you won’t want to move your website at the wrong time. The goal of any migration is to ensure a seamless transition for your visitors. Choosing the right time can minimize the impact on user experience. 

It’s important to plan your migration during periods of lower traffic or activity. Weekends, late at night, or other off-peak hours are often preferred to carry out migrations.

Even if you minimize downtime as much as possible, your site may still go down at some point during the migration. By choosing a time when your website experiences the least traffic, you can reduce the number of users who might be inconvenienced by temporary unavailability.

If you’re not sure when to plan your migration, we’d recommend using an analytics plugin like MonsterInsights. This will give you an overview of your organic traffic, so you’ll know when your periods of downtime are:

MonsterInsights report

4. Inform Your Audience About the Move

You can’t guarantee that zero visitors will be on your website as you start migrating it. This is why we’d suggest notifying your audience before the migration, so they know what to expect. 

By creating a notification, you’ll urge customers to make their purchases before your site goes down. You can also let them know when your website will be back up, reducing the chances that a customer will turn to your competitor.

OptinMonster is a lead generation plugin that makes it easy to build pop-ups for your website. You can use a drag-and-drop builder to add countdown timers, coupon wheels, and email sign-ups. You’ll inform your customers exactly what’s going on with your site and when you’ll be back online:

OptinMonster maintenance pop-up

Do you want to encourage sales before the move? Check out this guide on how to create a popup coupon!

5. Put Your WordPress Site in Maintenance Mode

At the appropriate time, you’ll need to put your website into maintenance mode. This ensures that you can work out any bugs or other errors before you make your new site live.

Essentially, your visitors will see a maintenance mode page instead of your usual content. You’ll work on major changes behind the scenes without worrying about accidentally breaking anything on your site.

Another benefit of using a maintenance mode page is that it tells users what’s going on. They’ll know why your website is down and when to expect your content to be back up again. 

Maintenance mode page

We’d recommend using SeedProd to build a custom maintenance page. Since this page builder plugin comes with drag-and-drop functionality and many maintenance page templates, SeedProd makes it easy to go into maintenance mode.

SeedProd website builder plugin

Once you activate the plugin, click on Set up a Maintenance Mode Page. Then, you can select a pre-designed template. This avoids the need to create one from scratch:

SeedProd maintenance templates

Then, add new blocks, text, buttons, opt-in forms, or other custom elements. You’ll be able to simply drag and drop them onto the page:

SeedProd maintenance mode page

When you’re ready, save and publish the page. Find the Maintenance Mode box and activate it:

Publish maintenance mode page

Now your old WordPress site is in maintenance mode! This provides a better experience for visitors since they’ll see a custom maintenance page instead of a 404 error.  

6. Disable Caching, Security, and Redirect Plugins

Before migrating your website, temporarily disable any plugins involved with caching, security, and redirects. These plugins can interfere with the migration process and lead to unexpected issues. 

For example, many WordPress security plugins set up firewalls. This can limit or block requests necessary for a migration.

If you don’t disable caching, redirect, or firewall plugins, you could get a 403 Forbidden or 500 Internal Server error. To prevent any issues, be sure to deactivate them before getting started. 

WordPress Migration Checklist

Now that you’ve prepared for a WordPress migration, it’s time to get started! Let’s walk you through the steps to move your entire website without any downtime or data loss. 

1. Choose the Right Tools

To get started, you’ll need to figure out how you’ll perform the migration. Manual migrations are possible, but they require technical expertise and come with some extra risks.

Fortunately, many tools can help you move your data successfully. If you’re moving to a new WordPress hosting provider, many companies will migrate your website for you. You won’t have to worry about transferring your files onto a new server.

However, you could also use a WordPress migration plugin. As we mentioned earlier, Duplicator is the best choice for simplifying backups, migrations, and cloning.

Instead of having to export your files and database, you can use Duplicator to compile all of this data into a single zip file. Then, simply drag and drop this into your new WordPress installations. This makes migrations fast and beginner-friendly.

Here are some extra features that you’ll get with Duplicator Pro:

  • File and database filters
  • Supports WordPress multisite networks and large sites
  • Step-by-step migration wizard
  • Server-to-server imports
  • Doesn’t require WordPress to be installed
  • Shared database support
  • Custom search and replace

Once you decide Duplicator is right for your needs, choose a subscription and download the plugin. Then, install the plugin on your old site.

Lastly, copy and paste your license key into the Licensing settings:

Activate Duplicator Pro license key

Now you’ll be ready to migrate your WordPress website with ease!

2. Create a Copy of Your Website

The first step in a WordPress migration is to download copies of your current site’s files and database. With Duplicator, you can do this without ever leaving your dashboard.

Start by creating a package. You can expand the Archive section to choose exactly what data you want migrated to the new site. For example, if you want to clean up your website during the move, consider only transferring active plugins and themes:

Back up active plugins and themes

Finish building the backup. Then, download both the archive and installer files. 

3. Update Your Hosts File

No matter what type of website you’re running, you’ll likely want to reduce downtime during a migration. This ensures that your site’s user experience and search engine ranking don’t suffer.

By updating your hosts file, you essentially create a private pathway to the new server’s IP address on your computer. This means that while you’re testing and refining the migrated site on the new server, the live site on the old server remains unaffected. 

Although this sounds complicated, even beginners can update their hosts file. For Mac users,  you can open Terminal and run this command:

sudo nano /private/etc/hosts

At the bottom of the hosts file, paste your new IP address and domain name:

After this, continue migrating your WordPress site. However, remember to delete this entry once you’re finished. 

4. Create a New Database

Your new website also needs a new WordPress database. If you or your web host has already created one, move on to the next step.

Otherwise, open your new host’s control panel and find the option to edit your MySQL databases:

MySQL databases

Then, create a new database by naming it:

Create MySQL database

You’ll also need to add a new user to the database:

Create MySQL user

Finally, assign the new user to the new database:

Add user to database

Feel free to give the user all privileges. Be sure to remember your database name, user, and password for the next step. 

5. Migrate Your Files and Database

Next, you’re going to transfer your WordPress backup to the new website. This will clone your website to the new location, moving all of your plugins, themes, images, and other files.

If you’re a beginner, open your WordPress dashboard and install Duplicator Pro. Then, find the Import page and upload your archive file:

Import website archive

However, you don’t even need to install WordPress. To save time, open a file manager like FileZilla or cPanel and connect to your new host. Empty your public_html directory and upload the archive and installer files:

Upload cloned site files

Now open a browser window and find this URL: https://your-domain/installer.php

This will automatically launch the Duplicator installer:

Duplicator deploy installation

In the Setup section, enter your database information. You’ll need to fill out your host name, database name, user, and password:

Duplicator database connection

At the bottom of the page, hit Validate. After reviewing any of the notices, accept them and continue:

Validate migration

In the pop-up window, confirm the installation:

Confirm WordPress migration

If you need to, you can select specific database tables to avoid importing or updating:

Install WordPress database

Without Duplicator, you’d have to manually search your database for your old URL and replace it with the new one. Fortunately, Duplicator will do this for you. Simply enter your old and new URLs:

Duplicator search and replace

After this, your site will be migrated to the new server, host, or domain! You’ll see information about the installation:

Finished Duplicator migration

Use the Admin Login button to access your migrated website!

Post WordPress Migration Checklist

Once you migrate your files and database, the hard part is over. However, there are a few extra tasks we’d recommend doing to complete the migration successfully.

Here’s our post WordPress migration checklist!

1. Check Your New Website’s Speed and Functionality

A migration is a tricky process, so you’ll want to review your entire website to make sure it looks and feels the same as the old one. To do this, go on the front end and review both the appearance and functionality of the new site.

Be sure to test the comments section, forms, checkout page, or any other useable elements. For membership sites, make sure that the user dashboards are working correctly. 

Sometimes, your newly migrated website might not be working correctly. Here are a few common fixes:

  • Reset permalinks to resolve URL structure errors
  • Update database URLs to resolve redirection problems
  • Check file permissions so content displays correctly

It’s also a good idea to check your website’s speed. If you migrated to a better web host or hosting plan, the server should contribute to a faster loading time. 

To test this, use the IsItWP Speed Test. By entering your new website’s URL, you’ll immediately get a performance score:

IsItWP speed test

If you receive a poor score, you might need to contact your new web host’s support team to resolve the issue. In the meantime, check out this guide on boosting WordPress speed and performance.    

Unfortunately, it’s fairly common for your site to have some broken links after a migration. These can not only harm user experience, but SEO. Fixing broken links can help maintain your website’s search engine rankings and visibility.

Fortunately, the Broken Link Checker plugin automatically scans for broken links and allows you to fix them. For more details, check out our tutorial on how to fix broken links

3. Add Redirects

If you decided to switch domains, you’ll want old visitors to be able to find your new website. To do this, set up permanent redirects.

All in One SEO is a WordPress SEO plugin with a useful Redirection Manager. Rather than using a separate redirect plugin, you can use AIOSEO to send visitors to the correct page:

AIOSEO WordPress SEO plugin

Once you activate the Redirection Manager, open the Full Site Redirect tab. Toggle on the Relocate Site option at the top of the page:

AIOSEO site redirect

Then, add your new domain name to the Relocate to domain field.

Hit Save Changes to finish setting up the 301 redirects. Now, whenever someone visits the old URL, their web browser will automatically redirect to the new one. 

4. Update Your DNS

After you move to a new host, it’s time to connect your old domain to the new server. To do this, log into your old host’s control panel and locate your DNS information:

Edit DNS record

Then, edit your nameservers. Choose Custom as the Setup Type:

Custom nameserver setup

In the blank fields, add your new hosting provider’s nameservers. This will point your domain to the new host, but keep in mind that updates to DNS records can take up to 48 hours to propagate.  

5. Inform Google of the Migration

As a website owner, you’ve probably spent a long time building a good SEO strategy. To avoid losing your ranking, it’s important to inform Google that you’ve made the move.

If you haven’t already, add both your original and new websites as properties in Google Search Console. For help getting started with this, read this comprehensive guide on Google Search Console

Using the dropdown in the top left corner, select your old URL as the property:

Select old domain in Google Search Console

Next, go to Settings » Change of address:

Change site address

Then, select your new website and hit Validate & Update:

Select new domain

To make sure your site can be indexed by Google, you can use the URL inspection tool in Google Search Console. This allows you to enter any page URL from your site:

URL inspection tool

You’ll then know if any indexing problems are affecting your site’s search visibility.

6. Test Your SSL Certificate

An SSL (Secure Sockets Layer) certificate is responsible for encrypting the data exchanged between your server and a visitor’s browser. Testing your SSL after a migration can help you maintain your high level of security.

First, visit your site using an incognito window. If your SSL certificate is working, you’ll see a padlock icon next to your website’s URL.

Do you see a security warning instead? Check out this tutorial on how to get a free SSL certificate for your WordPress site!

7. Crawl Your New Website

As a final step in this website migration checklist, consider crawling your new WordPress site. Using tools like Screaming Frog or Ahrefs, you’ll identify duplicate content, broken links, or other issues. 

This helps you become more aware of how your site is functioning. You’ll audit any SEO problems and avoid the dreaded dip in ranking after a site migration.  

FAQs About WordPress Migrations

What do I need to migrate a WordPress site?

To migrate your WordPress site, you’ll need a WordPress migration plugin like Duplicator Pro. With this tool, you can create a copy of your website and seamlessly move it to another host, server, or domain name.

How long does it take to migrate a WordPress site?

Migrating a WordPress site only takes a few minutes with the right tools. Duplicator Pro is a migration plugin that can migrate your website in a fraction of the time it takes to move your data manually. However, you’ll also need to remember that it takes up to 48 hours for your DNS to propagate after any changes. 

What are the steps to migrate a website?

To migrate a WordPress site, create a backup of your entire site with Duplicator. Then, download the generated archive and installer files. Use a file manager to connect to your new server and upload these backup files to the root directory. To finish the migration, visit https://your-domain/installer.php and follow the Duplicator migration wizard. 

How do I prepare for a website migration?

You can prepare for a website migration by setting up your new hosting account and backing up your old website. You’ll also need to plan the migration during a low-traffic time and inform your audience about the upcoming move. Additionally, consider putting your website in maintenance mode and deactivating any caching, firewall, and redirect plugins. 

Is it hard to migrate a website?

No, it’s not hard to migrate a website. If you’re a beginner, you can use a user-friendly migration plugin like Duplicator Pro to drag and drop your WordPress site into a new location. You won’t have to worry about manually exporting or importing your files and database. 


We hope this guide gave you a full WordPress migration checklist to prepare for and successfully move your website!

You may also like these extra WordPress migration guides:

Do you want an easy-to-use tool that will migrate your WordPress site for you? Download Duplicator Pro to start taking advantage of drag-and-drop migrations!

author avatar
Joella Dunn Content Writer
Joella is a writer with years of experience in WordPress. At Duplicator, she specializes in site maintenance — from basic backups to large-scale migrations. Her ultimate goal is to make sure your WordPress website is safe and ready for growth.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. We only recommend products that we believe will add value to our readers.