Guide Website migration · 4 of 7
How to Test Migration Redirects for Chains and Loops
Test redirects after website migration against an approved map. Find chains, loops, wrong targets, and failed destinations, then record and verify each fix.
Key takeaways
- Test an approved old-to-new map, not a guessed destination.
- Record every hop and the final result.
- Separate chains, loops, wrong targets, and failed pages.
- Retest changed rules and affected neighboring cases.
To test redirects after website migration, compare each implemented route with an agreed old-to-new map. Record the response at every step, the final address, and the page that opens. A browser eventually showing a page does not prove that the route is correct.
Use the website migration SEO guide for the overall move. This article tests rules that already have an intended result. It does not choose new targets or replace the team’s launch plan.
Prepare to test redirects after website migration
Get the agreed map and its version date. Each required row needs an old address, an expected public target, and an owner. If the target is still disputed, label it pending rather than treating any live page as a pass.
The guide to mapping old URLs to new pages covers those choices. Start testing only when you know what the route should do. This keeps a technical defect separate from an unresolved content decision.
Also keep the source URL inventory available. It helps identify older routes and variants that were found outside the main crawl. Do not limit the test to links that happen to appear in the new navigation.
Define what counts as a pass
Use the content checks after a CMS move to define the useful answer and actions expected on the final page.
Google distinguishes permanent redirects, such as 301 and 308, from temporary ones, such as 302 and 307. Confirm the intended type with the developer. The right response depends on the agreed purpose; a number alone is not the whole test.
For each case, agree on the expected route, final public address, and usable page. Record any agreed exception. A final address that looks similar to the target should not be silently accepted if the map says something else.
Use separate result fields: route matches, target works, and page meets the agreed content check. This makes a failed form or a wrong language version visible even when the final request returns a normal success response.
Record each redirect hop
Use a request inspection tool that shows response status and target at each step. Keep the exact old URL in the result. If a browser hides the intermediate steps, inspect the network requests or use a suitable redirect-checking tool.
Record the test time, environment, tool, and any relevant request state. Save the observed route as evidence. Do not overwrite it with the route you expected to see. The difference is the reason for running the test.
Test the final page itself. Check its main answer, language, images, downloads, and next action as relevant to the agreed case. The CMS release checklist can support that page review without replacing the redirect trace.
Distinguish a chain from a loop
A chain sends a request through one or more intermediate redirects before the final target. A loop revisits a route and fails to reach a useful end. Both need investigation, but they do not describe the same failure.
Consider fictional routes A, B, and C. If A goes to B and B goes to C, record both steps and compare them with the agreed map. If C should be the direct target, ask the developer to review whether A can point there directly.
If A goes to B and B goes back to A, record the repeating steps. The owner needs to resolve the conflicting rules. Do not keep adding new rules until the browser stops complaining; that can hide the conflict instead of explaining it.
Google recommends avoiding redirect chains. Keep the route short where practical and verify the result after a change. Do not treat a search engine’s ability to follow some redirects as permission to keep an avoidable detour.
Find wrong targets that a status checker can miss
If no useful target exists, send the row to the removed-page decision process rather than accepting an unrelated working page.
A redirect can reach a working page that is still wrong. Compare the final result with the exact agreed target. A product guide sent to a home page may return a successful status while losing the reader’s intended answer.
Check the content too. A correct-looking path may serve the wrong language, an old template, or a draft placeholder. Keep that result in a content-failure field and assign it to the right owner.
If the target decision itself now seems wrong, send it back for mapping review. Do not rewrite the agreed target inside a test report just to turn the row green. The map and test need to remain in agreement.
Test groups, exceptions, and the live release
Include required route checks in the migration rollback plan so a restored site is tested as well as the new release.
Start with sample cases from each rule family. Include renamed pages and known exceptions, not just the cleanest example. For pattern rules, ask which other addresses the change could affect.
Before launch, use an authorized test setup agreed with the technical owner. Label any staging-only route and limitation. A test target on a private environment is not the same as the public target that readers will use after release.
Repeat required cases on the public site after the move. Keep older routes that still receive visits or links in the plan. The final acceptance check should refer to the live rule set, not an earlier staging result.
Example: turn a failed route into a clear ticket
Imagine a fictional coffee guide whose old URL goes through an intermediate campaign page and then opens a general service page. The agreed map names a new event-coffee guide instead. No measured ranking effect is assumed.
The reviewer records the full route, expected target, test date, and page mismatch. The ticket goes to the redirect owner. The content owner confirms the intended guide still serves the old need before the rule is changed.
After the fix, the reviewer repeats the old request and checks neighboring cases covered by the rule. The ticket closes only when the observed route and usable target meet the agreed result. A screenshot of the new guide alone would not prove that.
Keep checks with the post-migration record
Save passed, failed, and pending rows with their evidence and owners. Use the crawling and indexing guide for separate discovery questions. A working redirect is not proof of indexing or a promise that rankings will stay unchanged.
DEX Health can review public target-page quality and SEO, including on the free plan. Pair that review with the route evidence; it is not a replacement for tracing the requests. DEX’s organized Search Console metrics can support later performance review, while confirmed access faults need attention as soon as they are found.
FAQ
Does a final 200 response mean the redirect passed?
+
No. Check the route and confirm that the final page is the destination approved in the map.
Are a chain and a loop the same problem?
+
No. A chain adds intermediate steps; a loop repeats a route without reaching a useful final page.
Can DEX Health replace a redirect test?
+
No. Use page-quality checks alongside a request trace and the approved destination record.
Sources
- Redirects and Google Search · Google Search Central