Check a Shopify redirect CSV before you import it
Find loops, chains, duplicates, conflicts and targets that will 404 in your URL redirect file, then export a cleaned version.
What it checks
- Missing or invalid sources and targets
- Same source with different targets, and exact duplicate rows
- Self-redirects and loops (any length)
- Chains (A to B to C), with the hop count
- Targets that are not on the new store (needs a live URL list)
- Sources that are already live pages, so the redirect never fires
- External targets, and many redirects to the homepage
- Old URLs that have no redirect (needs an old URL list)
Your files stay in your browser
This page runs entirely on your computer. Nothing is uploaded, and the page makes no network requests while you use it. The checks work on Shopify's native redirect CSV and on Matrixify's Redirects sheet.
The checker
1. Redirects CSV required
Drop a file here or
Headers "Redirect from" and "Redirect to", or Matrixify "Path" and "Target".
2. Live URLs on the new store optional
Drop files here or
A sitemap.xml, a list of URLs or paths, or a products or collections export with a Handle column.
Enables the 404-target and live-source checks. Include every section your targets point to (products, collections, pages, blogs), for example from the sitemap.
3. Old URLs optional
Drop files here or
The old store's sitemap.xml or a list of URLs.
Finds old URLs that have no redirect.
4. Store domains optional
Absolute URLs on these domains are treated as internal paths. Add both the old and the new domain if your file contains full URLs.
Results
Issues by rule
Issue details
| What is wrong | Suggested fix |
|---|
Exports
The fixed CSV is in Shopify's native format. Chains are collapsed to the final target; exact duplicates, self-redirects and loops are removed and listed in the removed rows CSV. Conflicts are never changed.
FAQ
Which formats are supported?
Redirects: Shopify's native export or import file (headers "Redirect from" and "Redirect to") and the Matrixify Redirects sheet (headers include "Path" and "Target"; other columns such as ID and Command are ignored, and rows with Command DELETE or IGNORE are skipped). Header names are matched without regard to case. UTF-8 files with a BOM, CRLF line endings and quoted fields with commas are handled. Live and old URLs: a pasted sitemap.xml, a list with one URL or path per line, or a products or collections export with a Handle column (you choose whether the handles are products or collections).
Why does a redirect to an existing page not fire on Shopify?
Shopify only applies a redirect when the requested path would otherwise return a 404. If a product, collection or page already exists at the "from" path, the page is served and the redirect is ignored. To make the redirect apply, the page's URL handle has to change or the redirect row should be removed.
What is a redirect chain?
A chain is when A redirects to B and B redirects to C. Visitors and search engines make one request per hop, which slows the page and can dilute link signals. The fix is to point A directly at C. The tool reports the hop count and writes the collapsed version to the fixed CSV.
What is the difference between free and Pro?
The free version runs every check on your whole file and shows the count for each rule, but lists details for the first 25 issues only and does not export. Pro is a single offline HTML file with all issues listed, the fixed CSV, the removed rows CSV, the issues CSV and the handover report.