Don’t let your website migration break your links

don't let your website migration break everything

Lately I’ve been noticing a lot of local businesses going through website migrations – upgrades, redesigns, or moving to a new platform – then winding up with broken links all over their site. It’s depressing to see. So much work goes into a migration, and then the results are:

  • heaps of “404 Not Found” pages
  • broken search engine listings
  • lost traffic
  • frustrated visitors who leave without engaging

It’s enough to make you wonder why you bothered “upgrading” your site at all!

Don’t be like these sad sites.  Use the tips below to make sure your migration goes smoothly.

Know what pages you currently have on your site

Do you know how many pages you have? There might be hundreds or thousands hidden away in unexpected places, especially if you’re using a CMS that offers multiple ways to navigate, such as categories, tags, or date based archives.

You can get an overview of the pages of your website by using a tool like the Screaming Frog SEO Spider (free for sites of up to 500 pages).

Know which pages get traffic

Of all the pages on your site, which ones get visitors, and where do they come from?  You can find out using Google Analytics (you do have Google Analytics on your old site, right?  If not, install it and give it at least a month to collect data before you migrate.)

The first and most important step is to run a report on page views using Behaviour -> Site Content -> All Pages.  Grab all the data for a reasonable period (say 3 months) and download it to a spreadsheet.

Another useful report is Behaviour -> Site Content -> Landing Pages, then add a secondary dimension of Source/Medium and export this as well. It’ll help you understand where visitors are coming from, not just what pages they’re looking at.

Understand the value of every page on the site

You can combine your Screaming Frog data and Page Views data in Excel using a VLookup function.  At minimum, you should have columns for:

  • URL
  • Page title
  • Visitors / period

You might also want to add columns for bounce rate, time on page, or page value (if you have conversion goals set up).

Using this data you can get a sense of which pages are most important to keep on your site, and which ones matter less

Don’t migrate worthless pages

Sort your spreadsheet by visitors, descending.  Look at the bottom of the sheet. These are the pages that get no visitors.

When you migrate to a new site, you should strongly consider pruning your website of pages that get little traffic.  If this makes you uncomfortable, then think about how you’d go about improving the content so that people start visiting it.  There’s no point spending time and money migrating a page that nobody will look at.

Make an action plan for every page

Add four new columns to your spreadsheet:

  • Action
  • New URL
  • Noindex?
  • Notes

Now go through every page and categorise them as follows:

  • Keep (no change in URL, so leave URL blank)
  • Move (fill in new URL)
  • Merge/Redirect (fill in URL of the page you’re going to merge this content into)
  • Delete/Redirect (fill in redirect URL)
  • Delete

If you’re moving platforms (eg. from one CMS to another) then you’re likely to have a lot of redirects.  It’s important that you plan where all your content is going to go, so that traffic to the old pages aren’t lost.

In the “Noindex?” column, note whether any pages should be marked noindex for search engines.  For example, author archives on WordPress are often noindexed, especially on single-author sites, as they largely duplicate the content on the homepage.

Under “Notes”, you may note any pages that need improvement, or where a custom canonical URL should be set, or other thoughts that occur to you as you review all the pages on the site.

Migrate or redirect each page

Sort the spreadsheet by the “Action” column, and either migrate the pages that need it, or check that your upgrade or import migrated them correctly.  If content needs improving, or two or more pages need to be merged together, edit as needed.

For the pages you will be moving or deleting, use a plug in like Redirection to set up redirects (“301 – Moved Permanently”) for all those that need it.

For pages that you want to delete entirely and which will never come back, use the Redirection plugin to set them to “410 – Gone” rather than simply returning a 404.  This will tell search engines to give up and stop crawling the page.

Don’t be tempted to automatically redirect all 404 pages to your homepage or some other single page that you want to get traffic. This can cause more confusion for visitors than a clearly worded 404/410 page and won’t serve you well in the long run.

Don’t lose your keyword ranking

Use your Source/Medium spreadsheet to find those pages which get heaps of traffic from search engines. Make sure you understand what search terms are bringing people in.  You can use Google Search Console’s search analytics to filter by page and then see the queries that brought people to that page.

Use something like the Yoast SEO Plugin for WordPress to check whether your migrated page still targets relevant keywords effectively.  Even if you haven’t changed the content, Yoast will point out issues you might not have considered in your migration plan, such as image alt tags.

Make sure search engines understand your new site structure

If you’ve moved lots of your content around, you don’t want the old URLs showing up in search results forever. The quickest way to get search engines to understand your new site structure is to create an updated sitemap.xml and point them to it.  The Yoast SEO plugin contains a feature to do this on WordPress.

Google Search Console has a feature to submit a sitemap, and equivalent tools are available for Bing and may be available for other search engines (check your Analytics to see which ones send you traffic).

Additionally, use Yoast (or equivalent) to make sure that pages you don’t want indexed are marked “noindex”, and that any pages that duplicate the same content (such as an article which has a screen view and a print-friendly view) have canonical URLs pointing to a single, preferred version of the page.

Have a good 404 page

No matter how much effort you take, you’ll probably still have some people landing on your 404 or 410 pages.  Make sure your 404 page is well designed, and they might not bounce immediately.

Things to include:

  • standard site navigation menus
  • prominent search function
  • links to popular pages on the site
  • a way to contact the website manager – email and/or social media

Sort out your backlinks

Hopefully, heaps of external sites link to you already.  Many of those links will now be pointing to deleted or moved pages.  Get a list of your backlinks (Google Search Console or the referral data from Google Analytics will give you a rough list, or you can use a paid solution like Majestic or Ahrefs which tend to providing a more comprehensive list.)

If these are too numerous to deal with manually, use another VLookup to cross reference incoming links, find those that have moved, and show you the new URL they’ve moved to.  You could also incorporate the data from your Source/Medium spreadsheet to prioritise those sites that send you the most visitors.

Now, your job is to contact all the owners of the external sites and let them know about your updated links.  This is a great opportunity to strengthen your relationship with the other site owners, and maybe explore further opportunities for links or other collaborations.  Make contacting them part of your website relaunch publicity plan.

Watch your traffic for problems

After you relaunch, keep an eye out for problems that might indicate people are winding up at dead URLs.  Some places to look include:

  • Google Search Console: watch the Crawl Errors report for 404s, mark them as 410 if that’s what you meant, and mark as fixed.
  • Screaming Frog: recrawl your site and look for redirects or 404s from internal links, and fix them. Also check that your “noindex” and canonical tags look right.
  • Google Analytics: use the Behaviour -> Site Content -> All Pages report to look for “Not Found” in the page title (or whatever your CMS does). Mark any frequently accessed pages as 410 or redirect them to somewhere useful.
  • Additionally, add a secondary dimension of Previous Page (for internal traffic) or Source/Medium (for external traffic) to see where these people are coming from, and take steps to fix the broken links at their origin.

That’s all, huh?

Yeah, I know it’s a lot of stuff to do.  But if you care about traffic to your website, you really don’t want to be losing most of it just when you’ve spent time and money on an upgrade.

If you need help with a website migration, feel free to contact Flax Digital.

Posted in


Alex is the owner of Flax Digital, a website consulting agency based in Ballarat, Australia. Alex has over 20 years' experience developing websites and digital strategy for businesses and non-profits in Australia and internationally.

Blog categories