Migration Tools
Redirect List Checker
Find duplicate sources, redirect loops and chains in a CSV mapping. Export reviewed exact-path rules for WordPress Redirection.
Worked example and publication checksLocal list analysis only. No URL requests or live HTTP checks. Exact paths only; no regular expressions, query strings or fragments.
No list checked yet.
| Record | Source | Target | HTTP | Finding |
|---|
The WordPress Redirection export becomes available only when all listed issues are resolved. Back up existing rules, inspect the plugin import preview and test the published redirects separately.
From input to publication
Worked example: cleaning a service-page migration
A fictional website has renamed its service section twice. Its spreadsheet still contains an intermediate destination, and two rules accidentally point back to each other. Resolve those editorial decisions before importing the file.
Example inputs
- Website origin
- https://example.com
- Mapping
- source,target,status /old-service,/service,301 /service,/services,301 /loop-a,/loop-b,301 /loop-b,/loop-a,301 /old-contact,/contact,301
Expected findings
Record 2: redirect chain, 2 listed hops
Record 3: no listed issues
Record 4: redirect loop
Record 5: redirect loop
Record 6: no listed issuesReviewed mapping for this example
source,target,status
/old-service,/services,301
/service,/services,301
/loop-a,/services,301
/loop-b,/services,301
/old-contact,/contact,301Expected Redirection import file (no header)
/old-service,/services,0,301,url
/service,/services,0,301,url
/loop-a,/services,0,301,url
/loop-b,/services,0,301,url
/old-contact,/contact,0,301,urlChoose a destination, not just a green result
The first rule reaches /services through /service. In this fictional case both old pages have been replaced by /services, so they can point there directly. On a real project, check the content before making that change. Sending every removed page to the homepage is not a meaningful migration plan.
The loop has no final destination. We deliberately choose /services for both sources in the reviewed example. The checker cannot infer that decision and never rewrites a mapping automatically.
Keep the source host explicit
The origin makes /service and https://example.com/service the same source. That allows the checker to find duplicates even when one editor uses full URLs and another uses paths. HTTP and HTTPS, or www and non-www, are distinct origins here.
This version rejects query strings and regex rules instead of guessing how a plugin would match them. Review those separately. A clean exact-path map is not proof that another rule in your server configuration will not intercept the request.
Import with a recovery path
Export your current Redirection rules and keep the original spreadsheet. On a staging copy, inspect the plugin's CSV import preview: each source should be an exact-path URL rule, regex should be off, and the chosen HTTP code should match your decision.
After importing, request each old address without relying on a cached browser redirect. Confirm one intended redirect to the final page and a successful destination response. Compare the page content as well as the status code. Repeat after production deployment; this browser tool does not perform that live test.
Verification checklist
- Load the example: five mappings, three records needing review, import export disabled.
- Paste the reviewed mapping and check again: all five should have no listed issues.
- Download the Redirection CSV and compare its five columns with the expected file above.
- Back up existing rules, inspect the import preview on staging and verify the published behavior separately.
Example and source review: .
What this tool is for
A migration spreadsheet can look complete while sending a moved page through several redirects or back to itself. This checker follows the relationships inside your list before you import any rules. It is intended for developers preparing small website migrations and permalink changes.
The website origin resolves relative paths and distinguishes an internal destination from a different host. Files stay in your browser. The checker never requests the URLs, so a clean mapping does not prove that its destinations exist, return HTTP 200 or contain equivalent content.
How to use it
- Enter the source website origin, including https:// or http://, without a page path.
- Upload or paste CSV with source,target and an optional HTTP status. A recognized header is optional. Comma, semicolon and tab separators are supported.
- Review every finding. Replace chains only after choosing the intended final page; remove duplicate sources and break loops deliberately.
- Export the CSV report for review. When no issues remain, download the Redirection CSV, back up existing rules and inspect the plugin import preview.
- Test the published old URLs separately and confirm the final content, status and redirect count.
Other use cases
WordPress permalink migration
Compare /old-service with its new /services/service destination before importing exact-match rules into Redirection.
Combining migration spreadsheets
Catch a source that appears twice with different targets after two editors combine their mapping lists.
Important notes
- 301 is the default. Temporary redirects need a deliberate code choice; the tool does not decide whether a move is permanent.
- Source URLs must belong to the entered origin. External HTTP(S) destinations are accepted but not checked.
- The report is not the import file. The separate Redirection export has five columns and no header: source,target,regex,code,type.
Limitations
- Maximum 2 MB and 5,000 redirects. Exact paths only; query strings, fragments and regular expressions are rejected.
- Supported redirect codes: 301, 302, 303 and 307. Error rules, conditional rules, other plugins and server configuration exports are not supported.
- Existing live rules, trailing-slash policies, case handling and percent-encoding behavior can affect the final result. Test on your server after import.
- This is not a live crawler, broken-link checker or guarantee of preserved search rankings.
Sources and review context
This page is maintained by Martin Trixner and was last reviewed on September 21, 2026. The tool output is based on public documentation and should still be tested against the target platform before production use.
FAQ
Does the checker visit my URLs?
No. It analyzes only the CSV relationships in your browser. It does not check HTTP responses, final page content or rules already on your server.
Why is the import download disabled?
At least one listed rule is invalid, duplicated, part of a chain or connected to a loop. Resolve all findings and run a fresh check before exporting.
Can I upload a Redirection CSV?
Yes, for supported exact-path URL rules with four or five columns: source,target,regex,code,type. The regex value must be 0. A neutral mapping can use source,target,status instead.
Are duplicate rules harmless when their targets match?
They are still flagged. Keeping one deliberate rule makes import behavior and later maintenance easier to review.