Free download
Plan, implement and test 301 redirects for changed URLs
Map every changed or removed URL to its best replacement, implement permanent redirects without chains, and verify that rankings and links carry over.
We reply within one working day. No pitch, no pressure.
- Time
- 2 hours
- Difficulty
- Advanced
- Audience
- Developers and SEO specialists handling URL changes, restructures or rebuilds
Tools: Google Search Console · Google Sheets · Website CMS, server or hosting redirect manager · Terminal or online redirect checker
Free download. No account needed. Resources licence. Branded PDF in the Wright Websites design system. Covered by the resources licence.
01 / Procedure
How to follow it
Purpose
When a URL changes without a redirect, its rankings, backlinks and bookmarks are lost. This procedure builds a complete one-to-one redirect map, implements it as permanent (301) redirects, and tests that every old URL lands on the right page in a single hop. It is finished when every mapped URL passes testing and Search Console shows no new 404 errors for old URLs after two weeks.
Scope
In scope
- Inventorying old URLs from the sitemap, Search Console and analytics
- Mapping old URLs to the most relevant new URLs
- Implementing 301 redirects and updating internal links and sitemaps
- Testing before and after go-live, and monitoring
Out of scope
- Domain changes requiring the Search Console Change of Address tool (follow Google's site move guidance alongside this SOP)
- Server configuration beyond adding redirect rules
- Content changes on the new pages
Roles and responsibilities
| Role | Responsibility |
|---|---|
| SEO specialist | Builds and signs off the redirect map; monitors Search Console. |
| Developer | Implements redirects, updates internal links and the sitemap. |
| Client | Confirms which retired pages have no replacement. |
Prerequisites
- A list of the URL changes planned (restructure, rebuild or individual page moves).
- Search Console access (WW-004) and analytics access.
- Access to the redirect mechanism: CMS redirect manager or plugin, hosting control panel, or server configuration.
- A redirect map sheet with columns
Old URL,New URL,Status,Tested,Notes.
Procedure
Inventory every old URL
A redirect map is only as good as its list of old URLs.
-
Export URLs from the current XML sitemap into the
Old URLcolumn. -
In Search Console, export the Pages list from Performance for the last 12 months, and add any URLs not already listed.
-
In analytics, export landing pages for the last 12 months and add missing URLs. Remove duplicates.
[!IMPORTANT] Capture this inventory before the old site is changed. Once old pages are gone, the list is much harder to rebuild.
Map old to new
Send each old URL to the single most relevant replacement.
-
For each old URL, enter the closest equivalent new URL. Match like for like: a service to the same service, a post to the same post.
-
Where content is retired with no equivalent, map it to the closest parent page (for example the category or services page) and note why. Only leave a URL to return 410 or 404 if nothing relevant exists.
-
Make sure no new URL is itself an old URL in the map, which would create a chain.
[!WARNING] Do not redirect everything to the home page. Google treats irrelevant redirects as soft 404s and the ranking value is lost.
Implement the redirects
Add permanent redirects in one place.
- Add each mapping as a 301 (permanent) redirect using a single mechanism: the CMS redirect manager, the hosting redirect tool, or server rules. Avoid splitting rules across several layers.
- Preserve query strings where the platform supports it, and match trailing slash and case consistently.
- Update internal links, navigation menus and canonical tags so they point straight to the new URLs rather than relying on redirects.
- Regenerate the XML sitemap so it lists only new URLs.
Test every redirect
Prove each old URL reaches its destination in one hop.
- Test each old URL using a redirect checker or the terminal command
curl -sI <old-url>, and confirm the response is301with thelocationheader set to the mapped new URL. - Confirm the new URL returns
200and that no URL passes through more than one redirect. - Mark each row
PassorFailin the Tested column and fix every failure before go-live is signed off.
Monitor after go-live
Catch anything the map missed.
- Submit the new sitemap in Search Console (WW-004).
- Check Indexing, then Pages, for the Not found (404) reason weekly for four weeks, and add redirects for any old URLs that appear.
- Keep the redirects in place for at least one year, and preferably permanently.
Quality checks
- Every URL in the inventory has a mapped destination or a documented reason for none.
- Every redirect returns
301and lands on a200page in a single hop. - Internal links, menus and canonicals point to new URLs directly.
- The sitemap lists only new URLs and has been resubmitted.
- No new 404s for old URLs appear in Search Console after two weeks.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
Redirect returns 302 | Temporary redirect type selected | Change the rule to 301 permanent. |
| Two or more hops | Old redirects point to URLs that now redirect again | Update the earlier rules to point straight to the final URL. |
| Redirect loop | Source and destination match after normalisation (slash or case) | Make trailing slash and case handling consistent. |
| Rankings drop for weeks | Redirects to irrelevant pages, or content removed | Re-map to closer equivalents and restore missing content. |
Records
- Keep the signed-off redirect map with test results in the client's project folder.
- Record the go-live date and the four weekly 404 checks.
References
Related procedures
- Set up Google Search Console and submit an XML sitemapWW-004
Verify a Domain property in Google Search Console, submit the site's XML sitemap, and confirm Google can read it and index the key pages.