Skip to content

/ Journal — Migration

Shopify Migration Redirects: How to Map Old URLs Without Creating an SEO Mess

A Shopify migration can preserve rankings, links, and customer journeys, but only if every valuable legacy URL has a deliberate destination. The redirect file is not launch-day housekeeping. It is part of the migration architecture.

( Short answer )

Inventory, map, redirect, test, monitor.

A sound Shopify 301 redirects migration starts with a complete URL inventory, maps pages by intent rather than by superficial wording, and tests the redirects as an HTTP system. The alternative is familiar: thousands of old URLs pushed to the homepage, redirect chains left in place, high-value pages returning 404s, and a team discovering the damage after organic sessions fall.

InventoryCrawl and export every discoverable legacy URL, then combine that data with analytics, Search Console, backlinks, sitemaps, and platform exports.

MapAssign each indexable URL one final Shopify destination.

RedirectUse a direct permanent server-side redirect where an equivalent page exists. Return 404 or 410 when no useful replacement exists.

TestImport, test, recrawl, and monitor the map before and after launch.

/ In plain terms

Why redirect mapping is where migrations succeed or fail.

A 301 redirect tells browsers and search engines that a resource has moved permanently. It also carries users from an old bookmarked or linked URL to the current page. During a replatform, that connection protects more than rankings: it protects paid landing pages, email links, affiliate links, customer support articles, QR codes, and links in documents that nobody remembers publishing.

Google recommends permanent server-side redirects such as 301 or 308 for permanent moves, direct old URLs to their new counterparts, update internal links, submit the new sitemap, and monitor both old and new properties. Its site move guidance also warns against redirecting many old pages to an irrelevant destination such as the new homepage because that can be treated as a soft 404.

The practical implication is simple: a redirect map is a page-level migration plan. It should be owned jointly by SEO, development, content, merchandising, and whoever understands the legacy catalogue. A spreadsheet assembled by matching slugs at the end of the project is not enough.

/ Old-URL inventory ( 08 )

Build the old-URL inventory before mapping anything.

No single source contains every URL that matters. A crawler finds linked pages, but not necessarily an orphaned campaign page with strong backlinks. Analytics finds visited pages, but not a valuable URL with no recent traffic. A platform export may include products and categories while missing editorial, faceted, account, or app-generated routes.

( Combine at least these sources )

01A full crawl of the legacy site: include HTML pages, canonicals, hreflang targets, pagination, redirects, 4xx URLs, and URLs found in JavaScript where relevant.

02XML sitemaps: current files plus older sitemap locations if they are still available.

03Google Search Console: landing pages, indexed pages, top queries, links, and crawl/indexing reports. Export enough history to account for seasonality.

04Analytics: organic landing pages as well as URLs used by paid, email, referral, and direct traffic.

05Backlink data: pages with external links deserve review even when traffic is currently low.

06Legacy platform exports: products, categories, collections, pages, blog posts, files, and market or language variants.

07Business records: campaign landing pages, printed URLs, influencer links, support macros, affiliate feeds, and frequently shared customer-service links.

08Server logs: useful for finding live requests to URLs absent from the crawl and for separating real demand from stale database entries.

Normalize the inventory before assigning destinations. Lowercasing may be appropriate for comparison, but preserve the exact requested path for implementation. Separate the protocol, hostname, path, query string, and fragment. Remove obvious duplicates carefully. Do not automatically discard parameters: a parameter may represent a campaign page, a filtered collection with search demand, or a route used by an integration.

( Decision data )

Add decision-making data to the sheet.

Prioritise the inventory, but do not use prioritisation as permission to ignore the long tail. Tier-one URLs should receive manual review: top organic landing pages, revenue-driving products and collections, URLs with meaningful backlinks, and routes used in campaigns or integrations. Lower-value URLs can use rules, provided those rules are reviewed through samples and exceptions.

Column Why it matters

Old path and current statusDefines the source and exposes existing chains, 404s, or canonical conflicts.

Page type and templateSeparates products, categories, content, search, account, and utility routes.

Indexability and canonicalPrevents low-value duplicates from receiving the same attention as canonical pages.

Organic traffic, impressions, clicksShows search demand and supports prioritisation.

Backlinks and referring domainsIdentifies external equity and relationships worth preserving.

Revenue or assisted conversionsSurfaces commercially important pages with modest organic traffic.

Proposed destination and rationaleMakes every mapping reviewable instead of relying on an unexplained URL pair.

Owner, confidence, test statusCreates accountability and highlights ambiguous cases before launch.

/ URL mapping rules ( 05 )

URL mapping rules that avoid an SEO mess.

01 · Intent

Map by equivalent intent, not the closest-looking slug

An old product should redirect to the same product on Shopify. An old category should go to the collection that serves the same browsing intent. A buying guide should go to its migrated article, not to a product that happens to share a keyword. The content, purpose, and likely user expectation should all align.

If several legacy pages are genuinely consolidated into one stronger page, many-to-one mapping can be correct. Document the consolidation. If the destination only loosely relates to the source, a clean 404 or 410 is often more honest than a misleading redirect.

02 · One hop

Redirect directly to the final 200 URL

Avoid old URL → intermediate URL → final URL. Chains slow resolution, consume crawl resources, complicate debugging, and can break later when the intermediate rule changes. Resolve old redirect histories into a single hop. The final target should return 200, be indexable where appropriate, and use the intended canonical URL.

03 · Homepage

Do not send unmatched pages to the homepage

Homepage catch-alls feel safe because users land somewhere, but they erase intent. Google explicitly cautions that redirecting many old URLs to an irrelevant destination may be treated as a soft 404. Use a relevant parent collection only when it is genuinely useful. Otherwise, return an informative not-found experience and remove the dead URL from internal links and sitemaps.

04 · Page types

Treat products, variants, collections, and content differently

Each legacy URL type has its own preferred destination and decision note, set out below.

05 · Markets

Separate hostname, market, and language moves from path mapping

International migrations can fail even when the path map is correct. Decide whether each old country or language URL should resolve to a subfolder, subdomain, separate domain, or Shopify Market destination. Preserve language intent. Check hreflang, canonicals, locale selectors, and automatic market behaviour. A UK product URL should not silently land on a US page simply because the product handle matches.

/ By URL type ( 07 )

Treat products, variants, collections, and content differently.

( Legacy URL → preferred destination )

+Product still sold → Same Shopify product. Preserve the closest product intent, including market where possible.

+Product permanently retired → True replacement product or highly relevant collection. Use the collection only if it meaningfully helps the customer continue.

+Category/subcategory → Equivalent Shopify collection. Avoid flattening every subcategory into a broad catalogue page.

+Variant URL → Canonical product or valid variant-selected URL. Confirm the destination works without relying on a fragile parameter.

+Blog or guide → Migrated article or consolidated guide. Keep informational intent separate from transactional intent.

+Internal search/filter URL → Relevant indexable landing page, or no redirect. Do not manufacture thousands of low-value mappings.

+Account, cart, checkout → Equivalent functional Shopify route where one exists. Test authentication and state; SEO is not the only concern.

( Shopify limitations )

Shopify redirect limitations to design around.

Shopify supports individual URL redirects and bulk CSV import through the admin. Its current URL redirect documentation explains how to create, import, export, edit, and filter redirects. The source and destination fields are paths, and the destination can also be a full external URL.

The important constraints are architectural:

Reserved routesReserved and active routes cannot simply be overridden. Shopify notes that redirects cannot begin with certain reserved paths, including routes used for apps, carts, orders, services, and the Shopify filesystem. A redirect also will not behave as expected when the old URL still resolves to a live Shopify resource.

Path-basedNative redirects are path-based. Complex regex, conditional, parameter-based, or wildcard behaviour should not be assumed. If a migration requires edge-level rules, establish the solution before committing to the map.

HandlesHandle changes need coordination. Shopify can prompt for or create redirects when changing certain resource handles, but migration teams should still retain one controlled source of truth and test the resulting route.

Apps and marketsApps and markets can affect routing. Translation, localisation, subscriptions, search, and legacy integration apps may introduce URLs outside the basic product/collection/page model.

CSV importCSV import is operational, not strategic. It loads mappings; it does not judge equivalence, detect soft 404s, validate canonicals, remove chains, or confirm that targets return 200.

/ Implementation workflow

A controlled implementation workflow.

Freeze and review the redirect map. Set a cut-off for route changes, then diff the latest legacy crawl and Shopify catalogue against the map. Merchandising teams often rename products or collections late in a build. Without a freeze or change-control process, a destination can become stale between approval and launch.

Run automated quality checks before import →

Import in a non-production environment where the domain and routing setup allow meaningful tests, or stage the data for a controlled production import at launch. Preserve a timestamped export of existing Shopify redirects before changing them. Merge deliberately so an existing business-critical rule is not overwritten or contradicted.

01No duplicate source paths with conflicting targets.

02No blank or malformed source and destination values.

03No source mapped to itself.

04No known redirect chains or loops.

05No destination pointing to staging, development, preview, HTTP, or an unintended hostname.

06No fragment-only source logic; URL fragments are not sent to the server.

07No priority URL left without an approved outcome.

08No target scheduled for deletion, depublication, or market exclusion.

/ Validation

How to validate redirects before and after launch.

A browser click is not sufficient. Browsers cache redirects, hide intermediate hops, and do not expose canonical or robots directives. Validation should inspect HTTP responses and on-page signals at scale.

( Pre-launch test plan )

01Test every tier-one URL. Do not sample the pages responsible for most traffic, revenue, links, or campaign use.

02Test a stratified sample of the rest. Include every template, directory, language, market, parameter pattern, and mapping rule.

03Inspect status and hops. The old URL should return a permanent redirect and reach the final destination in one hop wherever possible.

04Validate the target. Confirm 200 status, indexability, correct canonical, intended language/market, and content equivalence.

05Recrawl the new site. Internal links should already point to final URLs rather than relying on redirects.

06Check sitemaps and canonicals. They should contain only canonical destination URLs, not legacy paths or redirecting URLs.

07Test negative cases. Confirm that nonsense URLs return a real 404 and are not caught by an overbroad redirect.

/ Launch-day checks

Launch-day checks.

Launch
day

Rerun the priority suite against production

As soon as DNS and the production domain resolve to Shopify, rerun the priority test suite from more than one location if the store uses international routing. Crawl the old inventory against production. Compare actual final URLs with the approved targets, not merely whether “something loaded.” Check robots.txt, canonical tags, noindex directives, hreflang, XML sitemaps, navigation, structured data, and key conversion journeys.

Domain
change

Keep the old domain resolving

If the domain changes, verify both old and new Google Search Console properties and use Google’s Change of Address tool when applicable. Keep control of the old domain and its TLS certificate so HTTPS legacy URLs continue to reach the redirect layer. A redirect rule is useless if the old host no longer resolves or cannot complete a secure connection.

/ After launch

Monitoring after the Shopify migration.

Redirect QA continues after launch because Google, customers, and external sites will request URLs your inventory missed. Monitor daily during the initial launch period, then weekly as the site settles. Keep redirects in place for as long as practical; Google recommends keeping them for at least a year, and users or external links may depend on them much longer.

Expect some volatility during a major move. Do not diagnose from sitewide traffic alone. Segment by old page type, destination type, country, brand/non-brand query, and migration status. A collection-template indexing issue requires a different fix from an omitted set of blog redirects.

01Legacy URL crawl: 404s, loops, chains, wrong targets, 5xx responses. Fix high-impact exceptions and add genuinely missing mappings.

02Search Console indexing: not found, soft 404, redirect error, duplicate/canonical shifts. Inspect representative URLs and correct the underlying rule or target.

03Organic landing pages: unexpected losses by page type, directory, market, or device. Compare like-for-like pages and separate migration effects from demand changes.

04Server/CDN logs: repeated requests to unmapped legacy URLs. Prioritise by frequency, user value, and backlink importance.

05Backlinks: important links resolving through chains or to dead pages. Correct redirects and request link updates for the most valuable sources.

06Revenue and journeys: landing-page or market mismatches, broken campaign paths. Fix customer intent first; do not wait for an SEO report.

/ Common mistakes ( 08 )

Common redirect mistakes.

+Mapping only URLs in the current sitemap. This misses orphan pages, old campaign routes, and externally linked URLs.

+Using fuzzy string matching without review. Similar words do not guarantee equivalent search or customer intent.

+Redirecting all retired products to one collection. Some mappings may help, but indiscriminate consolidation creates poor relevance.

+Leaving old chains intact. Every legacy source should be resolved to the final canonical destination.

+Importing redirects before final handles are stable. Late catalogue changes quietly invalidate approved targets.

+Testing only in a browser. Teams miss chains, soft 404s, canonicals, status codes, and market-routing errors.

+Forgetting non-SEO consumers. Feeds, apps, ads, emails, printed material, and customer bookmarks still use URLs.

+Deleting redirects after the initial monitoring window. External links and long-tail crawling do not stop when the project closes.

/ How we work

How Signature Works approaches migration redirects.

We treat redirect mapping as part of the Shopify information architecture, not as an export-import task. That means agreeing the new URL model early, bringing SEO and engineering into catalogue decisions, and establishing which rules Shopify can support natively before launch pressure narrows the options.

For established ecommerce brands, the work typically includes a multi-source inventory, programmatic candidate matching, manual review of priority and ambiguous URLs, rule and exception design, automated preflight checks, production validation, and post-launch monitoring. The deliverable is not just a CSV. It is a tested migration system with clear ownership for exceptions.

/ FAQ ( 08 )

Shopify migration redirect FAQs.

How do I create 301 redirects in Shopify during a migration?

In Shopify admin, use the URL redirects area to create individual mappings or import a CSV for bulk redirects. Prepare and review the map outside Shopify first, then import it and test the production responses. Each old path should lead directly to a relevant final destination.

Can I bulk import Shopify 301 redirects?

Yes. Shopify supports CSV import and export for URL redirects. Bulk import saves time, but it does not validate relevance, detect redirect chains, or confirm that destination pages are indexable. Run those checks before and after import.

Does Shopify support wildcard or regex redirects?

Do not assume Shopify’s native redirect manager supports arbitrary wildcard, regex, or conditional rules. Native mappings are path-based. If the legacy platform depends on pattern matching, query-string logic, or edge rules, validate the requirement and choose an appropriate routing layer before launch.

Should discontinued products redirect to a collection?

Only when the collection is a useful and closely relevant next step. A genuine replacement product can be better. If no destination satisfies the same intent, return a proper 404 or 410 rather than forcing the visitor to an unrelated collection or homepage.

Why is a Shopify URL redirect not working?

The source may still resolve to a live Shopify page, the path may be reserved, the rule may conflict with another redirect, or an app, market, cache, or domain layer may be affecting routing. Inspect the raw HTTP response, test without browser cache, and confirm the exact source path and final target.

How long should migration redirects stay live?

Google recommends keeping redirects in place for at least one year. For ecommerce sites, keeping useful legacy redirects longer is usually sensible because backlinks, bookmarks, printed material, emails, and customer documents can remain active for years.

Will 301 redirects prevent all SEO traffic loss?

No. Redirects are essential, but migration performance also depends on content equivalence, internal links, canonicals, indexability, sitemaps, rendering, site performance, international setup, and demand changes. Good redirects reduce avoidable loss; they do not compensate for a weaker destination site.

How do I test a Shopify 301 redirects migration?

Crawl the complete legacy URL list against production and record every status, hop, and final URL. Confirm priority pages manually, verify that targets return 200 and use the intended canonical, check markets and languages, recrawl internal links, validate sitemaps, and monitor Search Console, logs, traffic, and revenue after launch.

Source note: Technical recommendations in this guide were checked against current Shopify Help documentation and Google Search Central guidance for redirects and site moves on 31 October 2026.

/ Next

Planning a Shopify migration?

Signature Works can help design the URL architecture, build and validate the redirect map, and coordinate Shopify implementation with your SEO, content, merchandising, and integration workstreams.

Talk to our Shopify migration team ↗

Also worth a look:  Migrations and rescues  ·  Store audits  ·  Shopify technical ownership

Written by the founder

Every Journal post comes from work on a real store, with the numbers to back it.

/ Next

Want this done on your store?

Tell us what’s going on. A first look costs nothing.

Start a project ↗