Brands often migrate from legacy content management systems (CMS) to modern platforms to upgrade technology, enhance site design, improve user experience, and boost search engine optimization.
Website migrations require careful redirect mapping, which involves linking legacy URLs from the old CMS to their new locations on the updated platform.
Building an optimized 301 redirect map requires careful planning. Let’s explore key considerations, best practices, and common pitfalls to ensure a smooth site migration.
Who Is This Guide For?
This guide is designed for large-scale redirect projects, such as those involved in website migrations. However, the insights can apply to any extensive redirect effort.
It’s especially helpful for:
- SEOs managing an upcoming migration project.
- Brand managers experiencing declining performance after a migration project
- SEOs or brand managers reworking or re-architecting site taxonomy.
What is a Redirect?
A redirect informs search engines that a page’s location has changed. The type of redirect used provides additional context. Here are the most common types:
- 301 Moved Permanently: Indicates a permanent page relocation.
- 302 Found: A temporary redirect, guiding users and search engines to a different page for a limited time.
- 307 Moved Temporarily: Similar to a 302 but ensures the request method remains unchanged.
For migration projects, the ideal choice is a 301 Permanent Redirect to maintain link equity and signal a permanent change.
What is Redirect Mapping?
Redirect mapping involves identifying legacy URLs and their corresponding new locations or redirect targets.
The outcome is a redirect map—a comprehensive list of all redirects from old URLs to their new destinations. For instance, during a website migration, a typical redirect map might look like this:
From | To |
https://www.old-site.com/ | https://www.new-site.com/ |
https://www.old-site.com/watches/cat_17 | https://www.new-site.com/c/watches/ |
https://www.old-site.com/watches/mens-watches/cat_89 | https://www.new-site.com/c/watches/mens-watches/ |
https://www.old-site.com/watches/womens-watches/cat_89 | https://www.new-site.com/c/watches/womens-watches/ |
https://www.old-site.com/brown-leather-watch/prod_123 | https://www.new-site.com/p/brown-leather-watch/123.html |
https://www.old-site.com/red-strap-watch/prod_456 | https://www.new-site.com/p/red-strap-watch/456.html |
Why Redirect Mapping Matters
When a page is indexed by search engines, it accrues authority—value assigned based on factors like domain age, backlinks, and content relevancy. This search equity directly impacts how pages rank in search results.
Redirect mapping during a site migration helps preserve this authority by transferring it from legacy pages to new ones using 301 Permanent Redirects. Proper mapping minimizes ranking losses and ensures a smoother post-launch performance.
A 301 redirect signals to search engines that a page has permanently moved and that its search equity should transfer to the new location.
Without a robust 301 redirect map, SEO performance is at risk. For instance, an auto parts website without a sound redirect strategy suffered a significant drop in organic search traffic.
How Long Does Redirect Mapping Take?
The time required to build a redirect map varies depending on the site.
Smaller, straightforward sites may need minimal effort, while larger sites with thousands of URLs or dynamic logic require more complex redirect strategies.
Redirect mapping isn’t a one-size-fits-all process—each project demands a tailored approach. However, there are proven steps to ensure your redirect map is accurate and efficient.
Let’s explore how to get started.
Building a Redirect Map
While the final output might be as simple as a two-column spreadsheet, the process to create it can be more demanding.
Below, I’ll outline approaches for collecting the necessary URL data and determining how to identify appropriate redirect targets for a successful redirect map.
Obtain Legacy URLs
The primary goal of redirect mapping is to transfer the search equity accrued by legacy URLs to the new CMS. To do this effectively, you need to compile a comprehensive inventory of all URLs from your legacy CMS.
There are multiple methods for identifying these URLs, and the best approach often depends on your specific CMS. However, the priority is to inventory pages that perform well in organic search and are critical to site performance.

Let’s walk through identifying legacy URLs.
Crawl Your Site
If you haven’t already, I highly recommend downloading Screaming Frog, a powerful web crawler and one of my go-to tools for website migrations.
Using Screaming Frog, you can thoroughly crawl your legacy site to catalog all its URLs for redirect mapping.
To ensure accuracy, configure the tool to emulate Googlebot. Crawling your site as Googlebot provides a comprehensive snapshot of all URLs that need to be included in your redirect map.
Below is an example of a site crawl I conducted for my website:
Sitemap URLs
In some cases, a legacy content management system (CMS) may be too complex to allow a complete site crawl. Fortunately, most CMS platforms enable webmasters to generate an XML sitemap file.
An XML sitemap lists all the URLs on a site and is typically submitted to Google through Google Search Console. These sitemap files can be an invaluable resource for collecting URLs needed for a redirect map, either as a supplement to or a replacement for URLs identified through a site crawl.
Google Search Console
To ensure you capture all high-performing URLs, use Google Search Console or Bing Webmaster Tools to retrieve URLs indexed in search results over the past year. Sort by clicks and impressions to identify top performers, then download the page-level data to add to your list of legacy URLs.
Google Analytics
Like Search Console, Google Analytics can help identify high-performing URLs. The advantage here is the ability to analyze URL performance across all channels—not just organic search. Additionally, you can use revenue metrics to prioritize URLs for SEO during the migration.
3rd Party Ranking Tools
Leverage SEO tools such as Moz, Ahrefs, or SEMrush to gather performance data and identify top-performing URLs. Be sure to include these in your redirect map to ensure comprehensive coverage of critical pages.
Parameter-based URLs
It’s essential to recognize that organic search isn’t the only channel in a brand’s digital marketing toolkit. Other channels like Social, Email, PPC, and Affiliate also drive traffic and may contribute URLs to your redirect map.
These channels often link to the same content as organic search but append parameters (e.g., session IDs or campaign identifiers).
For an efficient redirect map, strip these parameters and consolidate to a single canonical URL. For example, if you identify a URL from your PPC program:
It would essentially be the same as the below URL:
The former URL includes a parameter to capture additional information about a user’s visit.
Whenever possible, use the non-parameterized URL for your redirect map. Additionally, ensure your new CMS can handle parameterized URLs effectively—more on that later.
Managing Old / Legacy URLs
Once you’ve gathered a comprehensive list of legacy source URLs, the size of the list can vary greatly depending on your site. To manage this effectively, follow these steps:
Import into Excel
Excel is an excellent tool for redirect mapping.
Import the top-performing legacy URLs you’ve gathered from various data sources into a spreadsheet. From there, you can easily sort, filter, and organize the data based on your chosen criteria. This simplifies the process of managing and prioritizing URLs for your redirect map.
Remember, while your URLs may include different performance metrics, you don’t need to include those in your final list. The goal is to compile a clean list of source URLs.
Once you have this list, you can begin creating a two-column redirect map: one column for source URLs and the other for target URLs.
De-duplicating URLs
One common challenge is managing duplicate URL data from various sources. It’s likely that the data aggregators you’ve used will report the same URLs multiple times. This can lead to issues if you accidentally assign two identical source URLs to different target URLs in your redirect map.
To avoid this, de-duplicate all source URLs before finalizing your redirect map. Excel makes this easy with its “Remove Duplicates” feature. Simply select the column containing your source URLs and use this function to ensure each URL appears only once.
Below is an example illustrating how to handle duplicate URLs using Excel:
(P.S. ignore the black box generated when clicked on column A; my software created that shape but you’ll just need to select an entire column)
Categorize Legacy URLs
After de-duplicating your source URLs, you should now have a clean list of unique URLs ready for redirection. To streamline the process and minimize overwhelm, the next step is to categorize these URLs.
If your site has thousands of URLs, categorizing by page type can make redirect mapping far more manageable. For example, e-commerce sites often have categories like:
- Category/Subcategory Pages: Broad pages that organize products.
- Product Pages: Individual product pages.
- Content Pages: Blogs, FAQs, or other informational content.
By creating distinct groups such as “Category” and “Product,” you can tailor your redirect strategy for each. For instance, category and subcategory pages often have different redirection needs compared to product pages, and separating them helps you handle these nuances effectively.
Why Categorize?
- Manageable Workload: Break the task into smaller, focused segments to avoid tackling all URLs at once.
- Incremental Completion: Finish category redirects while still working on products, allowing progress to be made in stages.
- Streamlined QA: Testing redirects in batches by category is easier and more systematic than testing all at once.
By organizing your source URLs into categories, you’ll create a more efficient and error-proof workflow for building and testing your redirect map.
Find Redirect Targets
With a categorized list of source URLs in hand, the next step is identifying their corresponding target URLs on your new CMS.
This task can be challenging, but keeping a few key considerations in mind can simplify the process. Let’s explore what to focus on as you determine the appropriate target locations for your legacy URLs.
Understand CMS Redirect Solutions
Redirect capabilities can vary significantly across content management systems (CMS). Some CMS platforms have native redirect functionality, while others may require additional configurations or third-party tools to manage redirects efficiently.
Redirect solutions can range from intuitive to complex, so it’s critical to fully understand the capabilities of your new CMS. To ensure a smooth process, ask yourself and your migration team the following key questions:
What native redirect solutions does the CMS offer?
As noted, redirect solutions vary across CMS platforms, making it essential to understand the features and limitations of your new CMS’s redirect capabilities.
Here are some example use cases to illustrate different CMS redirect functionalities:
- WordPress: WordPress doesn’t have a built-in, intuitive redirect management system, so webmasters may need to use the .htaccess file for handling redirects. However, numerous plugins, such as Redirection or Yoast SEO, offer efficient solutions for managing single or bulk redirects. These plugins are easy to install and can streamline redirect mapping.
- Salesforce Commerce Cloud: Salesforce Commerce Cloud supports various redirect solutions and can natively handle thousands of redirects simultaneously. However, there’s a learning curve, depending on your chosen implementation method. For detailed guidance, refer to my Salesforce Commerce Cloud SEO guide, especially sections 5–7, which focus on redirect capabilities.
- Magento 2 (M2): Magento 2 uses URL rewrites for redirect management. While effective, the process can be tedious depending on your site’s structure. Like WordPress, M2 can leverage extensions such as MageWorx to simplify redirect management and enhance overall SEO functionality.
- Shopify: Shopify has significantly improved its SEO and redirect capabilities in recent years. It now includes native redirect functionality and offers apps from its marketplace to streamline redirect management. These updates make redirect mapping easier for Shopify users.
The CMS examples above are just a few options; other platforms may lack built-in redirect capabilities entirely. That’s why it’s critical to understand how redirects will function on your new CMS.
If your CMS doesn’t support redirect management natively, you’ll need to collaborate with technology partners to create a list of redirects and handle uploads directly to the server or through other tools. This scenario is common for larger brands where dedicated tech teams manage this aspect of a migration.
Your role will be to coordinate with the team handling the uploads and assist with quality assurance (QA) to ensure redirects are implemented correctly.
Understanding Redirect Target Requirements
Do the redirect capabilities of your CMS only require URLs, or do they depend on another page identifier? It’s critical to clarify what values are needed for redirects before finalizing your redirect map.
Here’s what to consider:
- URLs vs. Page IDs: Most CMS platforms assign a unique ID to each page asset, such as category pages, product pages, and content pages. Some CMS platforms may require you to use these IDs as redirect targets instead of URLs.
- URL Paths: If the CMS supports URL-based redirects, you’ll need to finalize your URL structure early. Delays in defining URLs can create significant blockers for redirect mapping.
To ensure a smooth process, confirm the required values for redirects (URLs, paths, or IDs) with your CMS team and finalize the URL structure before starting the mapping process. Having this clarity will prevent last-minute obstacles and keep your migration on track.
Redirect Best Practices
Relevant Target URLs
When a search engine encounters a 301 permanent redirect, it evaluates the content on the source and target URLs to ensure relevance. This relevance is key to maintaining rankings and search equity during a site migration.
For example, suppose your legacy site has a content page ranking well for “how to walk a dog” keywords. If you redirect that page to a new URL addressing “why is the sky blue,” search engines will consider the target irrelevant. As a result, the new page will not rank for “how to walk a dog” keywords.
To avoid this, ensure that target URLs remain as relevant as possible to the source URLs. Maintaining topical consistency is crucial for preserving search engine authority and user experience during the migration.
Understanding Status Codes
Status codes play a crucial role in redirect mapping, as they communicate the state of a webpage when accessed by search engines or users. Here’s a quick overview of common status codes you may encounter:
- 200 OK: The page is accessible and live.
- 301 Moved Permanently: The page has permanently moved to a new location, and search engines should transfer all authority to the new URL.
- 302 Moved Temporarily: The page is temporarily redirected, and search engines should not transfer authority immediately.
- 404 Not Found: The requested URL does not exist, indicating an error.
- 410 Gone: The page previously existed but is no longer live.
- 500 Server Error: Indicates an error at the server level.
When creating a redirect map, 301 Moved Permanently is the preferred status code for pages that have permanently moved. It tells search engines to transfer all search equity from the legacy URL to its new location.
Beware of Using 302 Temporary Redirects
While 302 status codes temporarily redirect users, they do not immediately transfer search equity. Although Google has confirmed that 302 Temporary Redirects can pass link equity, their use can create ambiguity. As noted by Google’s John Mueller, it may take Google longer to interpret whether a 302 was misused, potentially delaying the transfer of authority and affecting organic performance (e.g., sessions and revenue).
To avoid disruptions in search rankings and traffic, it’s best practice to use 301 Permanent Redirects for any URLs that have permanently moved. This ensures a smoother transition and maintains SEO performance during site migrations.
Redirect Pattern Matching
When building a redirect map, it’s important to consider the file size of your redirect mapping. Large redirect files can strain site performance, especially when dealing with thousands of redirects.
For instance, if your site has 40,000 redirects and a user requests a single URL, your CMS or redirect solution may need to process tens of thousands of lines to find the correct rule. This can impact performance significantly.
A practical solution to manage this complexity is pattern matching—identifying patterns in legacy URLs and creating redirect rules based on those patterns.
What Is Pattern Matching?
Pattern matching allows you to group similar URLs and write a single rule to redirect them, reducing the size of the redirect file. The implementation depends on your redirect solution and the structure of your URLs.
Example: Salesforce Commerce Cloud Wildcards
In Salesforce Commerce Cloud (SFCC), pattern matching is achieved using wildcards. For example, if you’re redirecting product pages with consistent product IDs across legacy and new platforms, the product ID in the URL can serve as the matching criteria.
Consider the following URLs:
- https://www.example.com/p/white-leather-heels/123ABC/
- https://www.example.com/p/beach-sandals/456LMNO/
- https://www.example.com/p/black-leather-loafers/789XYZ/
Using SFCC, you could create a redirect rule to match all these URLs based on the product ID, like this:
/p/*/*/ → Product-Show,pid,{1}
General Principles of Pattern Matching
Although the syntax in this example is specific to Salesforce Commerce Cloud, the underlying concept applies universally:
- Identify common elements in legacy URLs (e.g., product IDs, category paths).
- Use those elements to define redirect logic in your chosen solution.
By leveraging pattern matching, you can significantly reduce file size, improve site performance, and simplify redirect management during a migration.
Mass Redirects / Catch-alls
Redirecting all legacy URLs to a single location, such as the homepage, is a common mistake that can lead to significant sitewide declines in performance.
Why This Approach Fails
Redirecting to a non-relevant page, like the homepage, disrupts the transfer of search equity and creates a poor user experience. Search engines evaluate the relevance between the source and target URLs when ranking pages. If the target page isn’t relevant, search engines are less likely to maintain the original ranking.
Additionally, users who follow bookmarks or links to your legacy pages may be confused when redirected to a generic, unrelated page, leading to frustration and a negative perception of your site.
Impact on SEO and User Experience
- Loss of Search Equity: Redirecting to irrelevant targets forfeits the authority built by your legacy URLs.
- Poor User Experience: Visitors expect to find content related to their query, and irrelevant redirects undermine trust.
- Decreased Relevance: With less valuable content to offer, Google is less likely to rank your site highly.
Best Practice
Always redirect to the most relevant page for each legacy URL. If an exact match doesn’t exist, redirect to a page with closely related content. This approach preserves search equity and ensures a positive experience for both users and search engines.
Uploading Redirects: Who will manage?
Uploading redirects is closely tied to the capabilities of your chosen CMS and its redirect solutions. While many CMS platforms allow bulk uploads via a CSV or Excel file, not all do, making it important to understand your system’s requirements.
Using Excel for Bulk Uploads
Excel is a flexible tool for preparing redirect maps, and many CMS platforms support a straightforward two-column format (Source URLs + Target URLs). However, some may require additional fields or information in the file.
Other Formats
In some cases, you may need to work with third-party tech partners who require a different file format, such as a .txt file mimicking an .htaccess file. While this can seem more complex, it’s manageable with clear guidance.
Best Practices
- Understand CMS Requirements: Collaborate with your CMS or tech team to confirm the required format and template for redirect uploads.
- Lean on Support: If in doubt, reach out to tech partners or file a support ticket to get precise instructions.
- Prepare Early: Use the correct template from the start to avoid delays during the upload phase.
By clarifying requirements and preparing your files accordingly, you can ensure a smooth and efficient upload process for your redirect map.
Testing Redirects
Once you’ve uploaded your redirects to the new CMS, it’s essential to verify that they are functioning correctly. This involves implementing a series of quality assurance (QA) measures to ensure everything works as intended.
Screaming Frog
When QA’ing redirects, Screaming Frog is an invaluable tool. It functions as both a crawler and a way to test a predefined list of URLs, making it ideal for verifying your redirect map.
How to Use Screaming Frog for Redirect QA
- Import Legacy URLs: Use the list of legacy URLs you compiled during the mapping process and load it into Screaming Frog.
- Test Against Your New Environment: If your new site is on a development or staging environment, update the URLs to reflect that environment. For example:
- Live site: https://www.example.com
- Staging site: https://stg.example.com
Ensure the legacy URLs you’re testing are pointing to the staging or test environment.
Why This Matters
Testing redirects in a staging environment allows you to catch issues before the new site goes live, ensuring all redirects work as expected and minimizing the risk of errors impacting user experience or SEO performance.
With Screaming Frog, you can efficiently confirm that legacy URLs are redirecting to their correct target URLs in your staging environment.
301 Redirects
As discussed earlier, 301 Permanent Redirects are the preferred status code for most redirect scenarios. During the QA process, it’s critical to verify that all redirects return the correct status code.
Using Screaming Frog for Status Code Verification
When crawling your redirect map with Screaming Frog, closely monitor the status codes it reports for each legacy URL. Ideally, all URLs should return a 301 status. However, other status codes might indicate issues:
- 404 Not Found: The target page may not exist or wasn’t properly configured.
- 500 Server Error: There could be an issue with the server hosting the staging environment.
- Other Status Codes: These may result from overlapping redirect rules or incorrect mappings.
How to Address Non-301 Status Codes
If you encounter unexpected status codes, investigate the underlying cause:
- Check Target Pages: Ensure that the target URLs exist and are live in the new CMS.
- Review Server Configuration: Confirm there are no server issues affecting redirect functionality.
- Analyze Redirect Logic: Look for overlapping or conflicting rules in your redirect map.
Identifying and resolving these issues early ensures a smoother transition and minimizes the risk of problems when the site goes live.
Redirect Loops
A redirect loop occurs when a URL redirects to another URL that, in turn, redirects to yet another location. These loops can harm SEO by diluting search equity and creating inefficiencies for search engines and users.
The Impact of Redirect Loops
Each redirect hop chips away at the original URL’s search equity, reducing its overall authority. This gradual loss can significantly impact SEO performance, especially for critical pages.
Preventing Redirect Loops
To ensure your redirect map is free of loops:
- Crawl Target URLs: Use tools like Screaming Frog to crawl the target URLs in your map. Confirm that each target resolves to a 200 OK status and does not redirect further.
- Review Redirect Chains: Identify and resolve any chains where multiple redirects occur in sequence.
- Simplify Redirects: Always redirect source URLs directly to their final destination to minimize hops and retain maximum search equity.
By validating your redirect map and eliminating loops, you can maintain a cleaner redirect strategy and preserve the authority of your legacy URLs.
Don’t Forget Parameters
Parameter-based redirects are crucial when legacy URLs include parameters from different channels, such as paid search, social, or email campaigns. These parameters should carry over to the target URLs to ensure proper tracking and attribution.
Testing Parameter-Based Redirects
To validate parameter handling:
- Use Real or Sample Parameterized URLs: Test actual parameter URLs from your legacy data or create sample ones. For example:
https://www.example.com/product.html?utm=123 - Crawl with Screaming Frog: Load your parameterized URLs into Screaming Frog to confirm they redirect correctly and retain the parameter data in the target URL.
Why Parameters Matter
Failing to account for tracking parameters can disrupt attribution and make it appear as though non-organic channels (e.g., paid or social) are underperforming. To ensure accurate reporting and attribution:
- Confirm that parameters are retained or appended in the redirect logic.
- Collaborate with your analytics and marketing teams to validate tracking across all channels.
By accounting for parameterized URLs in your redirects and testing them thoroughly, you can safeguard channel performance and maintain accurate data attribution post-migration.
Non-indexable Redirect Targets
When building redirect targets, it’s essential to ensure they are both accessible to search engines and canonical. Failing to do so can hinder the proper transfer of search equity and lead to SEO inefficiencies.
Common Issues with Non-Indexable Targets
- Blocked by robots.txt
Redirecting to a URL that is disallowed in your robots.txt file prevents search engines from accessing the target page. This blocks the transfer of search equity, undermining the redirect’s purpose.
Best Practice: Cross-reference your redirect targets against the robots.txt file to ensure they are not blocked. - Non-Canonical Targets
Redirecting to non-canonical versions of pages can confuse search engines and reduce efficiency. While canonical tags indicate which version of a page to prioritize, directly pointing redirects to the canonical variant avoids unnecessary hops and ensures clean data in tools like Google Search Console.
Best Practice: Always redirect to the canonical version of a target page to streamline authority transfer and minimize errors.
How to Verify Redirect Targets
- Check Accessibility: Use tools like Screaming Frog or manual checks to confirm that all target URLs are crawlable.
- Confirm Canonical URLs: Verify the canonical version of each target page and ensure your redirect map aligns with these URLs.
By addressing these issues, you can avoid SEO pitfalls and ensure a seamless transfer of authority during the migration process.
Final Thoughts on Redirect Mapping
Redirect mapping is a detailed and time-consuming process, but its importance in preserving search engine visibility during a site migration cannot be overstated.
While the process may involve meticulous planning, long hours, and tough conversations, the effort is well worth it. A properly executed redirect map prevents post-launch headaches like traffic drops and ranking declines, ensuring a smoother transition to your new site.
If you’re looking to deepen your understanding or need step-by-step guidance, consider enrolling in my 301 Redirect Mapping Course. This comprehensive course is designed to help you master the nuances of redirect mapping and confidently handle your next site migration.
Happy redirect mapping!