Skip to content

Shopify Redirect Map Generator

Paste your old URLs. Get a Shopify-ready 301 redirect CSV using the URL pattern rules for your source platform. Runs entirely in your browser — your URLs never touch a server.

Your URLs
Determines the URL pattern rules applied
Magento and legacy carts usually need this
Full URLs or paths both work. Duplicates are skipped automatically.

How to import this into Shopify

Shopify accepts bulk URL redirects through the Matrixify app or through Admin → Online Store → Navigation → URL Redirects for small sets. The CSV this tool produces uses the two-column Redirect from / Redirect to shape that Matrixify expects.

For very large maps, note that Shopify’s admin caps out around 100,000 redirects per store. Above that you want pattern-based edge redirects at Cloudflare or Fastly instead of per-URL entries inside Shopify.

What this tool does and does not do

It applies the URL structure conventions of your source platform and maps them onto Shopify’s fixed structure: /products/handle, /collections/handle, /pages/handle, and /blogs/handle/article-handle. That covers the mechanical part of a redirect map.

What it cannot do is confirm that the target handle exists. Shopify generates product handles from product titles at import time. If your old URL slug and your product title diverge, the generated target will 404 and needs correcting. On a real migration I run the generated map against the staging store with a script that asserts a 301 and no redirect chain for every row, then fix the failures before DNS cut. That verification pass is where the remaining errors get caught.

Build the map from three sources, not one

The most common redirect-map failure is building it from the sitemap alone. Sitemaps miss paginated collection pages, filter permutations, and any URL that earned traffic without being linked in the source navigation. Merge three exports and dedupe: Google Search Console’s Pages report for the last 16 months, a full Screaming Frog crawl of the source domain, and your source CMS’s own URL export.

Anything with no GSC impression in 16 months and no internal links can return 410 instead of redirecting. Pruning dead URLs is faster than mapping them, and it keeps the redirect table small enough to stay maintainable. The full sequence is in the zero-downtime migration checklist.

Frequently asked questions

Are my URLs sent anywhere?

No. The generator runs entirely as JavaScript in your browser. Nothing is uploaded, logged, or stored. You can disconnect from the network after the page loads and it will still generate the map.

Why do some rows say “needs review”?

Because the URL did not match a recognisable product, collection, page, or blog pattern for the platform you selected. Those rows still appear in the CSV with a best-guess target so you can correct them by hand rather than lose them.

Will the generated handles match my Shopify products?

Often, but not always. Shopify builds product handles from product titles. If your old slug was mens-running-shoes but the product title imports as “Men’s Trail Runner Pro”, the handle will differ. Always spot-check against the imported catalog before going live.

How many URLs can I paste at once?

The tool handles several thousand comfortably. The on-screen table shows the first 200 rows to keep the page responsive, but the downloaded CSV always contains every row you pasted.

Should every old URL get a 301?

No. URLs with no search impressions in 16 months and no internal links are better returned as 410 Gone. A redirect table full of dead URLs is harder to maintain and gives Google more low-value paths to crawl. Prune first, then map what remains.

How long should redirects stay in place?

Google’s guidance is a minimum of 180 days; a year is safer, and permanent is safest for URLs that carry backlinks. Removing redirects too early is a common cause of ranking loss several months after an otherwise clean migration.