
Shopify's URL Redirects live under Content > Menus in your admin, work for a single URL or a bulk CSV import, and take effect immediately — but only for a URL that's actually broken. If the old address still loads a real page, Shopify won't redirect it no matter how the rule is configured. That one rule explains most of the "my redirect isn't working" confusion, and it's the first thing to check before assuming something else is wrong. This covers the setup steps, the CSV process for bulk moves, and the limits Shopify documents on its own help center, checked September 2026.
From your Shopify admin: go to Content > Menus, click View URL Redirects, then Create URL redirect. In Redirect from, enter the old path; in Redirect to, enter the destination — a relative path like /collections/t-shirts if you're redirecting within your own domain, or a full URL (https://example.com/...) if you're sending traffic somewhere else entirely. To redirect to your homepage, enter /. Click Save redirect, and Shopify's own documentation is explicit that "URL redirects start working immediately" — there's no propagation delay to wait out the way there sometimes is with DNS changes.
You can also use Liquid inside the Redirect from and Redirect to fields for more dynamic matching, though Shopify notes that "full field validation can't be performed when using Liquid in your paths" — so test a Liquid-based redirect carefully before relying on it for something important.
This is the rule that catches almost everyone at some point: you can only redirect from a broken URL. Shopify's help center states it directly: "you can redirect only from broken URLs. Broken URLs display error messages, such as Page not found or 404, on a page or in the page title. If the URL still loads a valid webpage, then the URL redirect won't work." In other words, the redirect rule doesn't override an existing, resolvable page — it only activates for a path that currently returns a 404.
This has a practical consequence people don't expect: if you set up a redirect from /collections/summer to /collections/summer-2026 while the original summer collection is still live and visible, the redirect will sit there doing nothing, because /collections/summer isn't actually broken yet. Shopify's own example makes this concrete — you can deliberately use this behavior to redirect people away from seasonal content: set a collection's Online store visibility to Hidden, which turns its URL into a 404, and then the redirect from that now-broken URL will work. The same applies to a product: setting it to Draft or removing it from all sales channels makes its URL return a 404 and become eligible for a redirect.
There's a matching gotcha in reverse: if you later flip that collection or product back to Visible, Shopify automatically deletes the redirect, because — as the help center puts it — "redirects only work for URLs that return 404 errors." You'd need to manually recreate the redirect if you hide the same content again later; it doesn't just pause and reactivate on its own.
Other reasons a redirect might not fire, per Shopify's own troubleshooting list:
Shopify blocks redirects from several categories of path, and it's worth checking this list before you build out a large redirect map so you don't waste time on paths that will never work:
/apps, /application, /cart, /carts, /orders, /services, or /shop./products, /collections, and /collections/all can't be redirected, since these are core storefront routes Shopify manages directly./collections/vendors, /collections/types, /apps/, /a/, /community/, /tools/, and myshopify.com domain paths ending in /shop or /services.yourstore.com/collections/collection-name/tag-name can't be redirected, and Shopify notes this holds "even if no products exist with that tag" — the path is still considered valid..html variants: a URL ending in .html can't be redirected to the same URL without the extension, because Shopify treats them as the same URL internally.If you're moving between builders entirely rather than reorganizing within Shopify, the cross-platform side of this — mapping old URLs on your previous platform to new ones on Shopify — is a separate, bigger project than what this page covers; see our guide to redirects when changing website builders for the inventory-and-mapping process itself, and our guide to moving a store to Shopify if you're still planning the migration itself.
For anything beyond a handful of individual redirects, Shopify's own guidance points you to CSV import rather than clicking through the single-redirect form repeatedly:
To export your existing redirects: go to Content > Menus, click URL redirects, click Export, choose which redirects to include, select a CSV format, and click Export URL redirects.
To import a new batch: go to Content > Menus, click URL redirects, click Import, click Add File and select your CSV, click Upload file, review what Shopify parsed from it, then click Import redirects. Shopify provides a downloadable sample CSV template to work from, structured around two columns — the old path and the new one.
For a very large batch, don't expect an instant download: Shopify's documentation notes that for large redirect lists, it emails you a download link instead of generating the file immediately, which can take a few minutes to arrive.
There's a hard ceiling on how many redirects a store can hold at once: standard Shopify plans cap out at 100,000 URL redirects, while stores on the Plus plan can hold up to 20,000,000. For nearly every store, the standard cap is far more than you'll ever need — it only becomes relevant for a very large catalog migration.
Yes, by default. If you sell in multiple markets using subfolders — for example, a US store at example.com and a Canadian market at example.com/en-ca — a single redirect you create applies across every subfolder automatically. Shopify's own example: delete a product and create one redirect from /products/blue-t-shirt to /collections/t-shirts, and both example.com/products/blue-t-shirt and example.com/en-ca/products/blue-t-shirt redirect correctly, each to its own market's version of the destination. If you need a different destination for a specific market instead of the same relative path, you can still create an individual redirect scoped to that subfolder on top of the default behavior.
Shopify supports editing redirects individually or in bulk from the same Content > Menus > URL redirects screen — select one or more redirects, click Edit redirect, make your changes, and save. Deleting works the same way: select the redirects you want to remove and click Delete selected redirects. Keep in mind the caching behavior noted above — Shopify's documentation points out that "301 redirects are cached by browsers and search engines," so if you delete a redirect after people have already hit it, some visitors' browsers may keep honoring the old redirect until that cache expires, even though the rule itself is gone from your admin.
Set up redirects under Content > Menus > URL Redirects, one at a time for a handful of changes or via CSV import for anything larger, and they take effect the moment you save them. The one rule to keep in mind before you troubleshoot anything else: a redirect only works when the old URL is genuinely broken (returning a 404), never when it still resolves to a live page — and Shopify will silently delete a redirect for you the moment the underlying content becomes visible again. If you're mapping redirects as part of a move from a different platform onto Shopify rather than reorganizing an existing Shopify store, build your full old-URL-to-new-URL map first using our cross-platform redirects guide, then bring that map in here as a CSV.