Website migration involves moving content from one website to another. Reasons for site migration vary, from creating a new site rather than overhauling an existing one, to changing to a totally different content management system (CMS). When done successfully, site migration can boost traffic and search rankings, ultimately growing sales and brand awareness.

Before you can migrate to a new website, however, you must purchase website hosting, then build the core of the site to which you are migrating. To make this easy, Bluehost offers web hosting plans starting at just $2.95/month, which includes a free domain, a free SSL certificate, 99.99% uptime, and more. 

How Website Migration Works

Website migration is a nuanced process that involves setting up the basics of a new site, moving old site content over to this site, and redirecting old URLs to the new site to ensure no links are broken. Generally, site owners should migrate their site in three stages. First, build out a new site. Second, make sure the old site is free from link or SEO errors. Third, move old site content over to the new site and redirect old URLs, then alert Google to the new site address.

Before you can begin the actual content migration, you need to take some preparatory steps. First, build your new website and hide it from Google search engines. Then, run an SEO audit on your old site to fix any glaring issues. Next, create a map of how you’d like to redirect your old site URLs to your new small business website. When you have your map in place, redirect your old website’s URLs to your new one and confirm they’ve redirected correctly.

Once you’ve built your new site and updated your links, notify Google you want your site to rank in search engine results pages (SERPs). Do so by setting up Google Analytics on your new website, then submitting a change of address to Google to indicate you’re ready for the search engine to recognize your new website as an exact replacement of your old website. Finally, use Google Analytics to detect any traffic losses so you can fix broken links or site errors.

When done correctly, a website migration may help you upgrade your business website without sacrificing the traffic you’ve earned on your old website. Your visitors can continue to enjoy the benefits of all your work to date while experiencing an upgraded site that surpasses their expectations.

When to Consider Website Migration

While there are many reasons businesses of all sizes migrate their websites, common reasons small businesses migrate their websites include upgrading security (changing from an “http” to an “https” website on a CMS that doesn’t have a plugin for this type of move), rebranding, and moving to a new content management system (CMS) such as WordPress or Magento.

Here are common reasons small businesses consider website migration:

  • Changing to a more secure website setup: Changing from a “http” to “https” website indicates to your website visitors (and Google) that your website is secure enough to handle sensitive information like credit card numbers and personal data. Google prefers “https” websites, so this change can positively impact your website rankings. Note that some CMSs (like WordPress) have plugins that allow you to do this without a full site migration.
  • Rebranding: Oftentimes, when businesses rebrand their websites, they simply want to start from scratch with a new domain name. When they do, they migrate all of their current website’s content to a new website with the new domain.
  • Changing CMS platforms: For many reasons, small businesses may conclude that a different content management system (like WordPress or Magento) is a better fit for them. So, they will build a website on a new CMS and migrate their content to the new platform.

Some of these changes require a website migration — including changing CMS platforms. Others, like rebranding, don’t require a website migration but make it easier to achieve the desired goal. For most, a website migration should be decided on a case-by-case basis to ensure it meets the immediate and long-term needs of a business and its customers.

How to Complete Website Migration in 12 Steps

To migrate your site, first create a plan, then perform an SEO audit on your old site. Next, redirect all old URLs to the new site’s content and replace internal URLs on your new site. Tell Google to index your site and continue monitoring performance to ensure success. To guide you through this process, we’ll be using one of the popular CMS platforms, WordPress. These steps will be similar for other CMSs, but be sure to check with the developer for specific instructions.

Here are the 12 steps to complete a website migration:

1. Put Together Your Migration Plan

As with any project, a plan is paramount to successful follow-through. Determine why you need to migrate your website, when the migration will occur, who is needed to complete requisite tasks — including the deadlines for those tasks — the impact of missed deadlines, and who might take over if those people cannot perform their roles for any reason.

List Migration Objective(s)

Determine why you’re migrating your website. For example, note whether you are migrating as part of rebranding, if you are moving to another content management system (CMS), if you are upgrading to an “https” domain from an “http” domain, or if you are migrating for some other reason. Determining your migration objective will help you develop the following plan elements — including migration timing, the roles needed, and the right experts to carry out those roles.

Determine Migration Tasks

Make a list of the tasks that will be necessary for completing a website migration. For example, you will need to set up Google Analytics for the new website, do an SEO audit of the website before your migration, determine top performing pages, define analytics performance on the old site, set up a redirect map and redirect URLs from the old site to the new, and monitor new website performance.

Determine Migration Timing

Website migrations should never occur during peak traffic periods. For example, if the website is for a pizza delivery business, it’s best not to schedule the website migration during The Superbowl when you’re likely to get a lot of orders. Look at your existing site traffic reports to predict a slow period. Then, determine how much time it will take to complete migration based on the tasks you outlined above and allot the time necessary to complete them.

Assign Roles to Team Members

Now that you have a list of tasks required to complete your website migration and the time required to complete those tasks, assign the team members who will be responsible for each, including what is expected of them and the deadlines they must hit. In addition, clearly define what the impact will be if these expectations are not met. Assign backup team members for each task in case someone cannot follow through.

2. Perform an SEO Audit

If you make a lot of changes to your new website as you migrate it, Google will likely register the site as a new website instead of a replacement of an existing one. As a result, you will lose all ranking you’ve built up over time. So, instead of fixing website errors during your migration, perform an SEO audit on your old site and fix website errors at least a month prior. This will give Google enough time to recrawl your website and note the improvements.

If you don’t already know how to perform an SEO audit, follow our step-by-step guide on performing an SEO audit.

3. Generate Site Link & Analytics Reports

In order to verify the links on your new site are correct, you need to generate a list of existing site links and an up-to-date analytics report. These will be used later to confirm that your new site links are correctly mapped to your old site links. Start by using a crawling tool to find all of your existing site links, then download the resulting link list report. Next, download an up-to-date analytics report from your analytics tool.

Crawl Your Website

Crawling your website means creating an index of all your website pages. A tool like Screaming Frogautomates this process. To crawl your website and generate a link report, follow the instructions in our guide on conducting a search-engine-optimization (SEO) audit.

Once you’ve crawled your site, click on the Internal tab and the External tab. These show you all the URLs of your website’s content and all links that point to that content. Click the “Export” button located directly under the “Internal” and “External” tabs to save this list. You will use this later as you redirect your old site content to your new website.

Exporting Website URLs from Screaming Frog

Export Your Old Site’s Analytics

You need to create a picture of your current website’s analytics so that you can later compare your new website traffic to your old website once it goes live. A dramatic change in traffic will indicate link problems you need to address. To create a snapshot of your website’s current analytics, export this data from your chosen analytics platform. Below, we offer instructions for Google Analytics because that’s the most popular analytics platforms for small businesses.

To start, navigate to your Google Analytics dashboard. Click the “Behavior” tab on the right-hand side of the dashboard, then “Site Content” and “All Pages.” You can click the “Day,” “Week,” or “Month” buttons to get an overview of your website’s traffic during these time frames. Click the “Export” button, then a format (PDF, Google Sheets, Excel, or CSV). It will export exactly what’s on the screen to a location of your choosing.

If you currently use a different analytics platform, check with the developer to see how you can export this information for easy review later in the site migration process.

Exporting Google Analytics “All Pages” Report

Identify the Pages with the Most Backlinks

Because Google puts a lot of weight on backlinks when evaluating sites, the pages on your website that have earned the most backlinks contribute significantly to your website’s ranking in Google. Make a note of them and watch their traffic following migration to ensure you have set everything up correctly and have not made migration errors that could cost you traffic to them.

To identify the pages with the most backlinks, use a link explore tool like Ahrefs. With the Ahrefs “Best by Links” tool, you can learn which of your website’s pages have earned the most amount of links very easily. Simply open the online Ahrefs tool, then click the “Site Explorer” tab from the header menu. Then, type in your website’s domain using the search bar and click the magnifying glass.

Ahref’s Site Explorer Search Bar

From the left-hand menu, click “Pages,” then “Best by Links” from the drop-down menu. When the table appears, click “Referring Domains” from the top of the table to organize your report by the pages with the most backlinks at the top and those with the fewest at the bottom. Finally, save this list by clicking “Export” or jotting down the domains with the most links and how many links each has. These will be the links you check first after migration is complete.

Ahrefs Best by Links Report Sorted by Referring Domains

4. Hide New Site from Google Search Engines

It’s important to prevent your new site from being crawled by Google’s search bots prematurely. If customers stumble across an in-construction website, it could hurt your brand image. Also, if you have republished content on the new site, Google may rank it before it’s ready, potentially affecting your placement in search engine results. To hide your site until it’s ready, access your CMS settings and choose the appropriate selection for hiding your site. Alternately, use a plugin.

Hide Your Website in Your CMS Settings

Most CMSs offer a way to easily keep your website from being crawled by Google, which keeps people from stumbling across it in search engine results pages (SERPs). It does so by adding code to your website’s header telling Google you don’t want your website indexed.

To keep Google from crawling your WordPress site, for example, log in to your WordPress dashboard and click “Settings” from the left-hand menu, then “Reading.”

Next to the bolded “Search Engine Visibility” header, you will see a checkbox labeled “Discourage search engines from indexing this site.” Check this box to hide your site and save your settings.

Note, however, that under the box, it says, “It is up to search engines to honor this request.” This means that some things may slip through the cracks and still be visible to Google searchers. But, most likely, your content will stay out of the SERPs. If, however, there is a lot of buzz about your new site and you know people are searching for it, you will want more protection. If that’s the case, consider a password protected plugin below.

Discourage Search Indexes from Indexing a WordPress Site

Use a Plugin to Password Protect Your Website

If you have a WordPress website, you can protect your new website from being crawled by Google bots or from being accessed by the public prematurely by making all content password-protected. We recommend downloading and installing the Password Protected plugin —  it’s free and easy to install.

First, visit your WordPress dashboard and click “Plugins” from the left-hand menu. Then, click “Add New” from the top of the screen that appears.

Adding the Password Protected Plugin to WordPress

Use the search bar to search “Password Protected.” From the results, click “Install Now” on the Password Protected plugin tile.

Install Password Protected Plugin

In the exact same spot where you clicked “Install Now,” click the “Activate” button that appears. Then, click the link that takes you back to the list of active plugins.

Activate Password Protected Plugin

Scroll down your list of plugins to find “Password Protected.” Click on “Settings” in the Password Protected plugin box.

Access Password Protected Plugin Settings

You don’t have to fill out everything here. Just click the “Enabled” box, then “Allow administrators.” This allows administrators to work on the site without having to input a password each time they want to access it. Choose a password by typing it into the “New Password” box. Type it again in the second box under the “New Password” section. Then, set the number of days you want your site to be password-protected and click “Save Changes.”

Enabling Website Password Protection on a WordPress Website

5. Move Your Old Content to Your New Website

Now, you’re ready to move content from your old site to your new one. First, access your built-in WordPress Exporter/Importer and export all the content from your old website. If you don’t bring a lot of the content over, Google will recognize the new site as different (i.e., a new site) and you will lose your ranking. Then, use the Exporter/Importer on your new website to import the content you’ve just exported from your old site.

Export Content from Your Old Site

To export your existing website content, go to your WordPress dashboard and click “Tools” from the left-hand menu, then “Importer.” Once on that page, you can choose the type of content you’d like to export, including “Posts,” “Pages,” and “Media.” We recommend choosing “All Content.” Then, click “Download Export File.” It will download your file in .xml format into your computer’s download folder and will be labeled “WordPress.[download date].xml.”

Exporting All Content From WordPress

Import Your Old Site’s Content to New Site

Now, on your new website, go to your WordPress dashboard and click “Tools” like we did above, then “Import.” Once on the Import page, locate “WordPress” and click “Install Now.”

Installing WordPress Importer

Once the Importer has installed, click “Run Importer.” Once it’s launched, select “Choose file” and choose the XML file that you just downloaded from your old site. Click “Upload file” and “Import,” then wait for the file to finish uploading.

Once the upload is complete, the Import WordPress page will appear. You can assign a particular user as the author of the content you just imported using the drop-down field in the “Import Author” section. If you want to import your content’s image attachments along with your blog posts (we recommend doing so), check the “Download and import file attachments” box. Finally, click “Submit.”

Import WordPress Attachments

6. Redirect URLs From Old Site to the New Site

To avoid old-site links from becoming broken once you hide the old site, redirect all old-site URLs to your new site. Carefully copy all the URLs from your old site (from the Screaming Frog report in step two) and paste them into a spreadsheet. In a second column, note what page you want each old URL to point to on the new site. Finally, use a plugin like Yoast to make the redirects.

Map Your Redirects

Before redirecting the links from your old site to your new one, map out where you want to point visitors who land on all pages on your old site. To do so, copy old site URLs from your Screaming Frog link report and paste them into a new spreadsheet. Go through them one by one and, in a second column next to each old site URL, paste the new site URL you want each old site URL to point to.

Use a Redirect Tool to Redirect Old Site URLs

There are several types of redirects, but the best kind for site migration is called a 301, which asks Google to permanently redirect all old site URLs to a new URL. You need to set up 301 redirects for each URL on your old website to signal to Google that your content has forever been moved and it should instead crawl your new site’s content and forget the old. If you use WordPress, the easiest way to do this is via a plugin like Yoast Premium.

Start by installing Yoast Premium on your old site. To do so, follow the same steps you used to find and download the Password Protected Plugin above. For more detailed instructions, follow the steps in this installation guide from Yoast.

Once you’ve installed and activated Yoast on your old site, begin triggering your 301 redirects in Yoast. You can do so by moving your old content to the trash. (Don’t worry, you’ve already backed this content up and you can recover it from the trash if needed.) This will trigger an option to redirect those links.

To move a post to the trash, go to your WordPress dashboard, then click “Posts” and use the search bar to type in the title of a post. When it pops up, click the “Trash” link located just below the post title. As you delete each post, a message will pop up alerting you that you are deleting it and asking you to choose to either redirect to another URL or to serve a 410 Content Deleted Header (to alert visitors the page no longer exists). Click on “Redirect it to another URL.”

Yoast Redirect Options

A screen will appear where you can enter the new URL. Simply fill in the “Old URL” with the web address for the existing content and the “New URL” where you want to direct the old URL. Then, choose “301 Moved Permanently” from the drop-down “Type” field. Finally, click “Add Redirect” and move onto the next URL on your Screaming Frog URL list.

Setting Up Yoast 301 Redirect

7. Check To Ensure Redirects Work Properly

Checking if your old site URLs have been properly redirected to your new site is as simple as crawling your old site again using the Screaming Frog tool. As you did in step three, follow the instructions in our SEO audit to crawl your site again. Once your crawl is complete, you can view the status of your redirect links using the “Response Codes” tab and its 301 status code filter.

Once you have crawled your website again, view the status of your old website’s URL redirects by clicking the “Response Code” tab in Screaming Frog. The “Response Codes” report will show you the original URL (from your old site) under the “Address” column, and the new site’s URL (where the original URL was redirected) under the “Redirect URL” column. If the redirect was successful, in the “Status Code” column next to each old site URL, it should read “301.”

Refer to the list of your URLs from step six and confirm that all the listed URLs point to the correct new site URL and they all have a 301 status code. If you see that one of the URLs from the old site is not listed or doesn’t have a 301 status code, remove it from the trash on your old site and set up the redirect again using Yoast. Continue doing this until all your pertinent old site URLs are successfully redirected to the new site.

Also, be sure to check the high-value pages with the most backlinks — these will be critical to retaining your Google ranking and visibility in search engines.

Verifying 301 Redirects with Screaming Frog

8. Replace Internal Links

Internal links are within your website’s content and point to other parts of your website. If those links are not replaced when clicked they will push visitors to your old site, then back to your new one. This slows down the user experience, which is factored into how Google ranks your site in search engine results. To avoid this, back up your site and then either replace these manually or use a plugin like the Velvet Blues Update URL WordPress plugin.

Back Up Your Website

Back up your website so you can restore it to its current state should you accidentally replace URLs you didn’t intend to. You can back up your website through your hosting provider. For example, if Bluehost is your hosting provider, you can back up your website using this guide. Many web hosting plans offer automatic daily backups so this may not be a step you have to take. Check with your hosting provider to find out if your plan offers this.

Replace Internal Links Manually

If you don’t have a lot of content on your website, it’s easier to replace internal links manually. Use your WordPress dashboard menu’s “All Posts” and “All Pages” options to access a list of each piece of content on your new site. Click on each piece of content to open them, then scan through them to find internal links. Click on them to find the pages they link to on your old website. Then, look at your URL redirect mapping document to learn which links should replace them and replace them.

Use a Plugin for Internal Link Replacements

If you have a lot of content on your website, you can replace internal links in bulk using the Velvet Blues Update URL WordPress plugin. It scans your internal links and replaces each link across the website with a replacement URL you indicate.

Like we did in step four for Screaming Frog, search for and install the Velvet Blues plugin from the “Plugin” menu accessible via the main WordPress dashboard. Once it’s installed and activated, hover over the “Tools” dashboard option and click “Links” from the pop-up menu.

The next screen will have a form to fill out about your internal link corrections. For each old site URL, input the old site URL in the “Old URL” field, then input the replacement URL the “New URL” field. Under “Step 2,” check the boxes of the types of URLs that should be updated. You can choose to replace URLs in page content, excerpts, links, attachments (like images), or meta boxes and other custom fields. Click “Update URLs Now.” Repeat for each old site URL.

Replacing Internal Links with Velvet Blues Update URL WordPress Plugin

9. Set Up Google Analytics on Your New Site

If you’ve been running a small business website, you have likely already been through the setup process for Google Analytics or similar analytics tools. Given its comprehensive reporting options and availability to all businesses for free, we recommend setting up Google Analytics on your new site. To do so, set up a Google account, then secure site tracking code from Google, install a plugin for Google Analytics, and add your tracking code to your plugin.

First, open a Google Analytics account for your new website. You can do so by setting up a Gmail account, then navigating to Add in your website information, then select “Get Tracking ID.” Lastly, install a tracking plugin and input your tracking code in the appropriate plugin field. For more information, read our guide on setting up Google Analytics.

10. Tell Google to Index Your Site

An XML sitemap is a map of your website that shows Google how to easily crawl your website. Submitting this to Google indicates that you’re ready for Google to begin indexing all content for possible ranking in search results; this is critical to securing relevant traffic. To create an XML sitemap, unhide your new website and crawl it — with all incorporated link changes — to create a site map. Then, download the map, and submit it to Google Search Console.

Open Your Site to Google’s Bots

The easiest way to allow Screaming Frog to crawl your website is to remove the password protection you set up in step 4 and deselect the hide content option in your CMS. To do so, uncheck the “Password Protected Status” and “Discourage search engines from indexing this site” boxes that we accessed earlier. For detailed instructions, refer back to step 4.

Generate & Submit Your XML Sitemap

To generate an XML Sitemap, use the Screaming Frog crawler to crawl your website. Then, click the Screaming Frog’s “Sitemaps” tab and then “Create Your XML Sitemap” from the drop-down menu. This will allow you to download an XML file that you can submit to Google. Finally, submit your sitemap to Google Webmaster. If you need more detailed instructions on how to do this, read step 2 of our SEO audit guide.

11. Set Up Change of Address With Google

You should have already set up Google Search Console in step three when you did your SEO audit. Use Google Search Console’s Change of Address tool to alert Google to your website migration. When you do this, it notifies Google that URLs from your old site now live on your new site and keeps that alert active for 180 days, by which time Google will have naturally crawled and indexed your new site. This ensures you don’t lose traffic.

To set up a change of address, log in to your Google Console account. From the homepage, click the gear icon, then “Change of Address.” On the following screen, you’ll see a checklist with four steps. In step 1, click the arrow next to the drop-down field and choose your new domain. In step 2, click the “Check” button and wait for the green check to appear next to it. For step 3, click “Confirm” and wait for the check to appear next to it. Finally click “Submit” next to step No. 4.

Please note: This step is not necessary if you are migrating from an “http” to an “https” domain.

Requesting a Change of Address in Google Search Console

12. Monitor New Site Performance

Monitor your new website’s performance to ensure the migration has been successful. To do so, compare your old website’s Google Analytics performance to your new website’s performance. Also, keep a close eye on the performance of the pages with the most backlinks to ensure no dips in performance happen. Finally, keep an eye on your website’s indexed page count in Google Analytics to ensure all pages are indexed within about a month.

Compare New & Old Site Analytics

Refer back to the Google Analytics reports you downloaded from the old site and monitor to ensure the performance on the new website is comparable. It can take up to a month for Google to index your new site but it can happen sooner. So, continually monitor for the first few weeks to detect traffic losses. If, after four or five weeks, your new website’s traffic is not comparable to the old in Google reports, double-check redirect links to make sure they’re correct.

Monitor Pages With the Most Backlinks

Click on the “All Pages” report in Google Analytics, just as we did in step 3, and check your pages with the most backlinks daily for dips in traffic. If you experience dips in traffic, run the URLs through Ahrefs “Best by Links” tool again as we did in step three. Under the “Referring Domains” column, click on the number of websites that link to them to get a list of the linking websites. Reach out to each one and ask them to replace old site URLs with new site URLs.

3 Common Website Migration Pitfalls & How to Avoid Them

Many website migration pitfalls occur as a result of tiny details site owners forget to pay attention to during migration planning and processing. These include not timing your website migration well, not bench marking your old website’s performance so you can detect performance drops on your new website, and neglecting to replace internal content links. All of these can cause slow website load times and, ultimately, lower website ranking in SERPs.

Here are three common pitfalls in small business website migration and how to avoid them:

Scheduling During Peak Traffic Seasons

Whenever you perform a website migration, you risk losing website traffic — though hopefully for only a short period of time. To minimize this risk, review your analytics to determine what seasons your website experiences traffic peaks, then schedule your website migration to avoid them.

Not Bench Marking

Bench marking means taking a snapshot of how well your old website performs on an ongoing basis before the migration, taking careful note of traffic flows, volumes, and peaks. This allows you to detect traffic losses by comparing the new website’s performance against the old after migration. If you do not bench mark before migrating, you won’t be able to detect traffic losses and fix them before they greatly impact your ranking.

Neglecting Internal Link Replacement

Many companies successfully redirect all page URLs on their old site to the correct URLs on their new site, but fail to update internal links on those pages. This slows down website performance and so could affect your new website’s ranking. To avoid this, use Yoast Premium’s internal link replacement tool to quickly update all old internal links to new website links.

Frequently Asked Questions (FAQs)

What is website migration?

Website migration is the process of transferring one website’s content to another domain ( to, for example) or from one content management system (CMS) to another — like from Wix to WordPress, for example.

How much does website migration cost?

Website migration uses analytics, SEO, link redirect, and website crawling tools that may cost site owners money. Many of these tools have free versions that are suitable for very small websites. For example, Screaming Frog — a website crawler — offers a free version that allows you to crawl up to 500 website pages. In general, small businesses can access website migration tools for under $100/month.

Does Website Migration Affect SEO?

It can. Website migration can lead to traffic losses if not done correctly. This can push sites lower in search rankings. To avoid traffic losses, website owners take steps to ensure Google recognizes the new site as a direct replacement of the old, including preventing Google from indexing the new website until all old site content has been properly redirected; submitting a change of address with Google; and making website changes before migration — not afterward.

Bottom Line

Website migration is moving content from one website to a new one. Small businesses conduct website migration while rebranding, when changing from an “http” to an “https” website (to boost rankings or website security), or when changing to a new CMS. Conducting a website migration involves creating a migration plan, redirecting old site content to the new one, alerting Google to the change, and monitoring performance to ensure a successful migration.

But, before businesses can migrate to a new website, they must purchase web hosting and build a new website. Bluehost specializes in offering web hosting for WordPress websites, complete with a free domain name and free email. They also offer a 99.99% uptime, helping your new website to rank well in the SERPs. All these features start at just $2.95/month.