The Complete Website Migration Checklist [SEO-Friendly]

Rachel Handley

Apr 22, 202418 min read
Contributors: Christine Skopec and Connor Lahey
Website Migrations
Share

TABLE OF CONTENTS

Before we dive into our SEO-friendly website migration checklist, let’s cover the basics.

What Is Website Migration?

Website migration is the process of making major changes to a website’s technology, structure, design, or location. Usually with the goal of improving the site’s user experience and SEO performance.

Migration is a challenging process. And you need a really good reason to take it on. 

Some of the most common reasons to migrate a website include:

  • Moving to a new framework or website platform: Moving from your existing framework to a new one like WordPress or Wix. You might do this if you want to improve your site’s performance, security, or functionality. 
  • Changing your website architecture: Adopting a more organized website structure. To improve the user experience and your SEO results. 
  • Moving from HTTP to HTTPS: Switching from HTTP to HTTPS helps secure your site by encrypting visitors’ information. And it’s highly recommended by Google.
  • Moving to a new server: Switching to a new host could speed up your site overall, especially if it’s growing. A fast site is good for visitors and search engines. 
  • Changing your domain name: Maybe you’re changing your domain name as a part of a rebrand. If so, you’ll want to move your old content over to the new website.

Does Website Migration Affect SEO?

A website migration generally has a negative impact on SEO in the short term and a positive impact in the long term.

That’s because it takes time for search engines to understand the changes you’ve made to your site. But they should ultimately recognize that your site has changed for the better. (Assuming that it definitely has.)

To minimize the negative impact on your SEO, you should follow some website migration best practices. 

Let’s dive into them.

A Detailed Website Migration Checklist

Let’s go through the website migration process step by step:

Part 1: Preparing for the Migration

There’s a fair amount of preliminary work you’ll need to do first—no matter what type of migration you’re implementing.

1. Create Your SEO Migration Plan

Careful planning will reduce the risk of issues cropping up during the site migration process. And afterward.

So, what are the first actions to take?

  • Set objectives. Define goals to help keep your planning focused.
  • Read this guide. Familiarize yourself with the entire website migration process before you start taking any action. To reduce the chances of making mistakes.
  • Collect benchmarks. Gather data from analytics tools like Semrush, Google Search Console (GSC), and Google Analytics 4 (GA4) so you can make comparisons later. 
  • Assemble your team. Assign or employ all the specialists you need for the project. You’ll definitely need the help of a developer and someone with technical SEO expertise.
  • Create a timeline. Use the advice in this guide to plan out a realistic and strategic timeline for the project. Think months—not days or weeks. 

2. Prepare for Your Migration Type

You’ll need to get a few things in order before you change any code. And those actions depend on the migration type:

  • Domain change: Purchase the new domain and configure its DNS settings (which are crucial for making your site accessible on the internet)
  • Hosting provider change: Select the right hosting provider and set up your account
  • HTTP to HTTPS: Obtain an SSL certificate from your hosting provider or a reputable third-party vendor to enable a secure (encrypted) connection on your site
  • Platform change: Choose your new website platform and set up your account

Whatever type of website migration you’re planning, ask a developer to create a backup of your site. Just in case anything goes wrong on your production site.

It’s also a good idea to run a technical SEO audit at this stage.

With Semrush’s Site Audit tool, you can quickly identify issues relating to your site’s security, crawlability, internal linking, site speed, and more. 

An overview dashboard in Site Audit tool, showing site health, errors, warnings, notices, crawlability, site performance, and other data

This information can help you make more strategic decisions about your SEO website migration.

3. Make a Copy of Your Site

Next, make a copy of your site. To act as the safe testing environment (also known as a development or staging environment) where you can apply changes without affecting your live site.

You should ask a developer for help, but the process typically involves:

  • Copying your website's files to a new subdomain (e.g., staging.example.com)
  • Duplicating your database and connecting this copy to the duplicated website files
  • Updating the configuration of the copied site to ensure it points to the new database and adjust any necessary settings (like URLs)

If your live website uses a content delivery network (CDN) (a collection of servers around the world that delivers content to users based on their location) make sure to set it up on your staging site, too. That way, you can ensure it works well alongside your new site.

4. Block Access to Your Staging Site

You need to block search engines from accessing your test site. Otherwise, it could appear in search results before it’s ready.

First, we recommend that you add password protection to keep both users and website crawlers out. Many hosting providers allow you to do this through the hosting control panel.

Then, add a noindex tag to every page on your staging site.

This is a meta robots tag that tells crawlers not to include the page in search results. And it looks like this:

<meta name="robots" content="noindex">

In a few steps, we’ll cover running a test to ensure search engines can properly crawl your staging site prior to pushing it live. So having noindex tags in place will keep your pages from showing in search results while you're still experimenting.

You can enable SemrushBot to bypass these directives when you set up a technical audit later.

5. Prepare the New Site

Now, it’s time to make changes that align with your website migration goals. Perhaps that means adopting a new design layout or changing your site structure.

Note that it’s best to avoid making lots of major changes at once. For example, don’t change your domain and make major structural changes in the same migration.

Doing multiple, smaller migrations tends to be more manageable than doing a single, big one.

It also allows search engines and users to adjust to the changes step by step. So you can minimize disruption to your traffic. And isolate any changes that cause issues.

6. Set Up Google Analytics 4 on Your Staging Site

Create a new GA4 property or data stream for your staging site. Then install the tracking code.

This allows you to prepare the events (user interactions) you want to track and ensure data is collected properly. So you don’t miss anything important once the site goes live.

7. Run a Technical SEO Audit on Your Staging Site

Running a technical SEO audit on your staging site lets you fix potentially harmful errors before they’re migrated to your live environment.

Semrush’s Site Audit tool makes it easy.

Enter your staging domain and click “Start Audit” to begin.

Site Audit tool search bar

Then, you’ll need to configure the basic settings:

  • Crawl scope: If you’re using a staging subdomain, click the pencil icon to specify it
  • Limit of checked pages: Make sure this number is high enough to cover all the pages on your staging site
  • Crawl source: Leave this as “Website” for now
Site Audit tool basic settings, including crawl score, limit of checked pages, and crawl source

Follow the instructions provided to configure your other settings.

In the fifth step, make sure to check the box next to “Bypass disallow in robots.txt and by robots meta tag.” So that SemrushBot ignores your disallow directive and noindex tags.

And provide your site’s login details in “Crawling with your credentials.” 

Site Audit Settings, bypass website restrictions window

When you’re finished, click “Start Site Audit.”

"Start Site Audit" button

The tool will then perform over 140 checks on your staging site. 

When your audit is ready, take a look at your Site Health score to get a general sense of how your new site might perform. 

Then, focus on the “Errors.” These are severe issues that could seriously impact your SEO site migration.

"Errors" widget showing 176 errors found, in Site Audit's overview dashboard

But it’s worth checking your “Warnings” and “Notices,” too.

You can click through to view a complete list of issues. With advice on how and why to fix them.

A list of errors found in Site Audit tool

After implementing any fixes, rerun the audit to check that everything’s working correctly.

You should see your overall Site Health score improve.

"Site Health" metric showing 70% in Site Audit tool

8. Give Googlebot Temporary Access to Your Staging Site

When you’re happy with your staging site, give Google’s website crawler (Googlebot) temporary access. To make certain that Google can crawl and index (find and store your webpages) the site properly. 

You’ll need to remove password protection. 

Then, add and verify your site in Google Search Console (GSC). And go to “Indexing” > “Pages.”

After some time has passed, you should find that all your pages are “Not indexed.” Which means that Googlebot can crawl the pages and the noindex tags are working properly.

Page indexing in Google Search Console (GSC)

If any pages are missing or there are indexing errors unrelated to the noindex tags, there could be a problem that will affect your SEO post-migration.

"Why pages aren't indexed" section in Google Search Console (GSC)

Make sure to investigate and resolve these crawlability issues.

You can then re-add password protection. And move on to the next step.

9. Update Your DNS TTL Value 

If you're migrating to a new hosting provider, your IP address (the address that computers use to find your website) will change.

To ensure that other computers quickly re-locate your website after it moves (and therefore send visitors to the right location), update your DNS TTL value with your current provider.

TTL stands for “time to live.” The TTL value tells computers when to check back for a potential change to your DNS record.

So, lowering your TTL value helps your new IP address spread across the internet faster.

Just make sure the change is temporary. Because low TTL values can lead to performance issues.

Part 2: Mapping Old URLs to New URLs

If you’re changing your domain or URL structure, you’ll need to map old URLs to new URLs. So you can set up the necessary redirects and update links.

Otherwise, you can skip to part three.

10. Create a List of Your Current URLs

First, you’ll need to take an inventory of all the content on your site.

To compose the most accurate list and ensure you don’t miss anything important, compile data from multiple sources. Including: 

  • Site Audit: Export URLs that SemrushBot has crawled
  • GSC: Export URLs that Googlebot has crawled and indexed
  • GA4: Export URLs that users have visited
  • Backlink Analytics: Discover pages on your site that have backlinks
  • XML Sitemap: This is the file that contains the URLs you want to be indexed

Make sure to delete any duplicate URLs. 

Otherwise, your content management system (CMS) might have a tool or plugin that allows you to generate a list of your site’s URLs.

11. Plan Which Pages to Redirect and Which to Delete

Now, your team needs to plan what will happen with your old URLs.

If the content is moving to a new location, you should add a server-side 301 redirect from the old URL to its new counterpart. 

(E.g., from http://www.example.com/ to https://www.example.com/.)

A 301 redirect ensures that visitors who use the old URL reach the new destination.

But it also tells search engines that the resource has permanently moved. And that any existing SEO authority should transfer to the new URL.

This can help preserve rankings and traffic.

301 redirect pointing from an "Old page" (which is not indexed) to a "New page" (which is indexed)

You should not redirect content if there’s no equivalent URL for it on the new site.

Say there are outdated blog posts you don’t want to transfer to your new site. You might think it’s a good idea to redirect these URLs to your new blog homepage. But this can cause confusion for users. 

That’s why it’s discouraged by search engines and bad for SEO.

Instead, these old URLs should be set to serve a 410 status code. To tell search engines (and users) that the resource has been permanently removed.

In the end, you should have a URL map that looks something like this:

A section of a URL map, showing old URL, new URL, and status code columns

12. Update URLs on Your Staging Site

You’re now ready to replace or remove instances of the old URLs on your staging site. 

This will ensure there are no links to deleted pages. And no links going through unnecessary redirects, which can slow down your site and harm SEO.

You’ll need to check URLs used in:

  • A href links: Standard, clickable hyperlinks. These will appear in your main navigation, footer, body content, etc.
  • The XML sitemap: The file that defines all the URLs you want search engines to index. 
  • Robots.txt: The file that defines URLs you want to block. It should also contain the URL for your XML sitemap.
  • Canonical tags: Code used to specify the preferred version of a page. If the page has no duplicates, the canonical should be self-referencing.
  • Hreflang tags: Code used to specify all the translated versions of a page. (They’re not needed if you don’t serve your content in different languages.)

And any other key locations on your website.

13. Perform Final Checks on Your Staging Site

Perform a final overview of your staging site to ensure everything looks good before you migrate.

Here’s a quick checklist:

  • Rerun the Site Audit to look for any important issues
  • Check for any recommendations flagged in GSC
  • Review website functionality on desktop and mobile devices
  • Make sure there’s no placeholder content (e.g., lorem ipsum)
  • Ensure data is being captured in GA4
  • Confirm that your site is legally compliant (e.g., check your privacy policy) 

Part 3: Completing the Migration

It’s now time for action. To transition from your old site to your new one.

14. Record the Current Site Status and Create a Content Backup

This is your last chance to collect data for your current site ready for comparison later (e.g., Site Audit results, GA4 reports).

Also make sure to back up all of your content. Including meta tags, meta titles, etc.

How you’ll back up your site depends on how it’s hosted. You might be able to do it through your site host’s control panel. If you have a CMS like WordPress, there may be useful plugins available.

Before proceeding with the next step, make sure you have the green light from everyone involved in the site migration project.

15. Evaluate the Complexity and Migrate in Chunks

Different pages of your website can have different issues when it comes to migration. Because they serve different purposes and have different features.

The more pages you move at once, the more likely it is that you’ll face mistakes. And the harder it’ll be to determine the cause.

So, if you have a large website, we recommend that you move content section by section (e.g., by content type). Starting with the least important or smaller segments. 

And perform tests after each move.

16. Update the DNS Settings

If you’re switching to a new server, you need to change your DNS record so it points to the new IP address. 

To do this, contact your hosting company and request the change.

Make sure to revert your TTL value back to normal, too.

17. Remove All Temporary Website Blocks

Make sure your new website is available to users and search engine crawlers. 

That means removing: 

  • Password protection
  • Unnecessary noindex tags from your HTML

Afterward, re-run your Semrush Site Audit and check for issues in the “Crawlability” report.

A section of Site Audit's “Crawlability” report

18. Enable Redirects and Removals

At this point, enable all your redirects. And delete any pages that aren’t being moved (using 410 status codes).

To check everything’s working correctly, rerun your Site Audit campaign and go to “Issues.”

"Issues" tab in the Site Audit tool, showing a list of errors

In the “Errors” section, you’ll see how many pages return a 4XX (e.g., 410) status code.

In the “Notices” section, you’ll see how many URLs have permanent redirects.

"4 pages returned 4XX status code" error highlighted from the list

Click the “X URLs” links to see all the corresponding URLs and check they’re correct.

A list of pages with 4XX status code

19. Complete SEO-Focused Tasks in Google Search Console

There are a few tasks you need to complete in Google Search Console.

First, go to “Settings” > “Ownership verification” and check that you’re a verified owner on your new site. If not, you may need to upload the HTML file provided to your new website.

Ownership verification section in GSC

If you’ve moved to a new domain, go back to “Settings” and click “Change of address.”

Fill out the provided form to speed up indexing for your new pages. And minimize your ranking losses.

Change of address page in Google Search Console

Next, go to “Indexing” > “Sitemaps” and submit the XML sitemaps for your old site and your new site.

This helps Google discover the redirects from the old URLs to the new ones. And allows you to monitor the indexation/removal process. 

Lastly, resubmit any disavowed link files for your previous domain. Otherwise, these potentially toxic backlinks could harm your new site’s rankings.

Where possible, you should update any external links (links to your site from other domains) that point to your old URLs. Because it’s better that they don’t go to a deleted page or through a redirect. 

Outdated links could be present in properties you own, such as:

  • Social media profiles
  • Online business listings
  • Digital advertising campaigns

For links controlled by other parties, try reaching out and asking them to update the links.

You can find backlinks to your old site using Semrush’s Backlink Analytics tool.

Just enter your old domain then go to the “Backlinks” report.

Backlinks report in Backlink Analytics tool, showing a list of backlinks, backlink types, link attributes, and other data

After that, set up the Backlink Audit tool for your new site. So you can easily monitor the incoming links to your new site.

Backlink Audit tool showing overall toxicity score, referring domains, analyzed backlinks, authority score, and other data

Part 4: Monitoring the Migration

By monitoring performance after your migration, you can spot (and resolve) issues early. And identify any opportunities for improvement.

Let’s continue our SEO site migration checklist:

21. Check for Issues Using Site Audit, GA4, and GSC

Rerun your Site Audit campaign after the move. Then, go to “Compare Crawls” to see if the number of issues has changed.

If there are any “New” issues, make sure to click through to investigate them.

A column highlighting new issues after the new crawls

Also keep an eye on the reports in GSC.

Particularly the “Page indexing” report, which should show your new pages being indexed and your old pages being deindexed.

“Page indexing” report in Google Search Console, showing 0 indexed, and 840 non-indexed pages

Last but not least, use GA4 to track traffic and conversions. Making sure to compare against your benchmarks.

It’s normal for results to temporarily dip after a site migration. But when certain pages perform worse than others, look into it. As there may be a specific issue to blame.

Landing page report in GA4

22. Track Your Keyword Rankings

The best way to understand any changes in search engine traffic you may have noticed is to track your Google rankings.

Semrush’s Position Tracking tool provides the detailed insights you need.

After importing the keywords you care about, select a date range spanning your website migration.

You’ll immediately see any changes to your overall visibility. Which should recover within a couple of weeks. (If not, follow the steps in the troubleshooting section at the end of this article.)

Visibility changes metrics highlighted in Position Tracking tool

In the “Pages” report, you can track your performance by URL.

It’s normal to experience temporary drops in rankings after a site migration. But if some pages are performing significantly worse than others, it’s worth investigating.

"Pages" report in Position Tracking tool shows performance by URL

In the “Overview” report, you can monitor performance for individual keywords.

Look at the icons in the “Pos.” columns to see whether you’ve lost or gained any SERP features (elements that can help your result stand out on search results pages.) 

Monitoring performance of individual keywords in Position Tracking tool

You might be able to get any SERP features you don’t have by using schema markup (code on your webpages that helps search engines understand what those pages are about) or optimizing your content.

23. Add a Semrush Note About Your Migration

Make note of your site migration date in Semrush Notes

Your note can then appear in various graphs across the Semrush toolkit. Making it easier to compare results before and after the move.

For example, this note in Site Audit makes it easy to see if the migration correlated with an increase in technical issues.

Site migration note shown in a graph in Site Audit tool

While this note in Position Tracking allows us to see the migration’s effect on search visibility.

Site migration note shown in search visibility graph in Position Tracking tool

24. Cancel Your Old Hosting

If you migrated to a new server/hosting provider, you can cancel your old hosting when Google finishes indexing your new website. 

Once again, make sure that all your 301 redirects are set up properly. And sending people away from the discontinued server.

Troubleshooting Your Migration

If you notice anything wrong with the way your audience is behaving or you haven't regained your traffic/rankings after a few months, go over these steps to troubleshoot your issues:

  • Find out if a particular source is driving the traffic loss (via GA4):
  • Find out if you’ve lost traffic/rankings across your entire site or specific pages:
    • If the issue affects many pages across the website, rerun Site Audit to find out if technical issues are causing trouble—and follow the tool’s instructions to fix them
    • If you have specific pages that have lost positions, look at the backup and see if changes to content/meta tags could be responsible

You can also face problems even if your site doesn't have any technical errors. 

For example, diminishing performance for conversion rates, bounce rates, and exit rates could mean that your audience is facing barriers in their journey. 

Consider whether you can make your calls to action more prominent. Or if you need to minimize distractions like unnecessary links and visual effects.

Create Your Own Site Migration Checklist

We’ve created a simplified, interactive version of this website migration checklist in Google Docs.

Find the checklist here and click “Use this template” to create a copy.

Semrush's website migration checklist preview

You can then customize the list and check off steps as needed.

Share