Ecommerce

Migrate Shopify to WooCommerce without losing SEO

A practical migration plan: keep the URLs you can, redirect the rest one-to-one, and check Search Console until the new store has taken over.

By RaaoPublished 8 min read

Short answer: can you migrate Shopify to WooCommerce without losing SEO?

Yes. To migrate Shopify to WooCommerce without a lasting traffic drop, keep as many URLs identical as you can, 301-redirect every other old URL to its closest new page, and carry over titles, meta descriptions, product copy and structured data unchanged. Then watch Search Console for 90 days and fix what it reports.

Most lost rankings after a replatform are not caused by the platform. They come from redirects that were never set up, product pages that lost their text, or a new store that is slower than the old one.

Why do stores lose traffic after a platform migration?

Google ranks URLs, not businesses. When a URL disappears without a redirect, the links pointing to it and its ranking history stop counting. Google's own site move guide says a medium-sized site can take "a few weeks or more" to be reprocessed even when everything is done right.

The usual causes of a drop that does not recover:

  • Missing redirects. Old product, collection and blog URLs return 404. This is the most common one.
  • Redirects to the home page. Sending everything to / is treated much like a 404.
  • Lost content. Product descriptions, FAQs or reviews that lived in Shopify apps or metafields did not make it across.
  • Duplicate URLs. Shopify serves products under /collections/{handle}/products/{product} as well as /products/{product}. If both now resolve on WooCommerce without a canonical, you have created duplicates.
  • Speed regressions. A heavy theme on cheap hosting can undo the migration gains. We cover the fixes in why WooCommerce is slow.
  • Tracking gaps. GA4, Google Ads conversions and Merchant Center feeds are rebuilt late, so you cannot even see what dropped.

Shopify vs WooCommerce URLs: what changes?

Shopify's URL structure is fixed. WooCommerce's is configurable, which is good news: you can rebuild most Shopify paths exactly.

Page type Shopify URL WooCommerce default WooCommerce matched
Product /products/oak-table /product/oak-table/ /products/oak-table/
Collection /collections/tables /product-category/tables/ /collections/tables/
Product in collection /collections/tables/products/oak-table none 301 to /products/oak-table/
Page /pages/delivery /delivery/ 301 or /pages/delivery/ via parent page
Blog article /blogs/news/care-guide /care-guide/ /blogs/news/care-guide/
Variant /products/oak-table?variant=4012… ?attribute_pa_finish=walnut 301 to the parent product

To match the structure, go to Settings → Permalinks in WordPress. Under Product permalinks choose Custom base and enter /products/. Set Product category base to collections. For blog posts, use a custom structure of /blogs/news/%postname%/.

WordPress adds a trailing slash to every URL. A request for /products/oak-table is redirected to /products/oak-table/ automatically with a 301. That one hop is fine. Just make sure your manual redirects point straight to the final, slashed URL, so you never create a chain.

Options: plugin, migration service or done-for-you?

Be honest about the size of the job before choosing a route.

Route Good for Watch out for
Shopify CSV export + WooCommerce importer Under ~300 simple products, no app data Variant columns need reshaping; images must be re-hosted
Automated migration services (Cart2Cart, LitExtension) Larger catalogues, orders and customers in one go Redirect handling varies; metafields and app data often missed; check the result line by line
Agency migration Custom data, B2B prices, ERP, many apps to replace Costs more; insist on a written URL map and a staging review

If your Shopify store is a standard catalogue and you only want lower fees, a careful DIY move can work. If the store depends on several apps, a configurator, B2B accounts or ERP stock, the migration is really a rebuild, and should be planned as one. For cost comparisons before you decide, see Shopify vs WooCommerce cost over three years.

Step by step: Shopify to WooCommerce migration checklist

1. Inventory every URL that matters

Do not rely on the sitemap alone. Combine four sources into one spreadsheet:

  • Shopify's sitemap.xml (it links to sitemap_products_1.xml, collections, pages and blogs).
  • A full crawl with Screaming Frog or Sitebulb.
  • Search Console → Performance, last 16 months, exported by page.
  • Search Console → Links → Top linked pages, plus your backlink tool.

Add existing Shopify redirects too. In Shopify admin they live under Content → Menus → URL redirects, and you can export them as CSV. Old redirects must be re-pointed to the new final URLs, not left as chains.

2. Export the data before you touch anything

From Shopify admin, export products (Products → Export, all products, CSV for Excel), customers and orders. Then collect what the export misses:

  • Product images (Shopify CDN URLs stop working when the store closes)
  • Metafields and metaobjects: specs, size charts, care instructions
  • Reviews from apps such as Judge.me or Yotpo (each has its own export)
  • Gift card balances and active discount codes
  • SEO titles and meta descriptions (columns SEO title and SEO description in the product CSV)
  • Image alt texts
  • Customer marketing consent flags

Customer passwords cannot be exported. Plan a password-reset email for launch week.

3. Build and import on staging

Shopify's product CSV uses one row per variant, with URL handle, Option1 name, Option1 value and SKU columns (older exports label them Handle, Option1 Name, Option1 Value and Variant SKU). WooCommerce's importer (Products → Import) expects a parent row of type variable and child rows of type variation. Reshape the file, then import to a staging site that is blocked from indexing.

Keep the Shopify handle as the WooCommerce slug. That single rule removes most redirects.

4. Write the redirect map

Every old URL gets exactly one row: old path, new path, status 301. Rules:

  • One-to-one wherever possible: product to product, collection to category.
  • Discontinued products go to the closest category, not the home page.
  • Variant URLs (?variant=) go to the parent product.
  • Tag filter URLs (/collections/tables/oak) go to a filtered category or the parent category.

Load the map with a redirect plugin (Redirection, or the redirect manager in Rank Math or Yoast Premium) or, better on large stores, as server rules in Nginx. Test every row on staging with a crawler in list mode: each old URL must return one 301 and then a 200.

5. Check on-page SEO parity

Before launch, compare old and new for your top 100 pages by clicks:

  • Same title tag and meta description
  • Same H1 and body copy (do not rewrite during the move)
  • Product structured data with price, availability and reviews
  • Canonical tag pointing to itself
  • Internal links and menus pointing to new URLs directly, not via redirects
  • Page speed equal or better on mobile

6. Launch day

  • Remove the staging noindex (Settings → Reading → Discourage search engines unticked)
  • Point DNS to the new server; if the domain was bought through Shopify, transfer it first
  • Submit the new sitemap (/sitemap_index.xml with Yoast or Rank Math) in Search Console
  • Keep the old sitemap submitted for a few weeks, so Google recrawls old URLs and finds the redirects
  • Reconnect GA4, Google Ads conversions, Meta Pixel and the Merchant Center feed
  • Place test orders with every payment method and courier

If the domain stays the same, you do not need Search Console's Change of Address tool. It is only for moves to a new domain.

7. Monitor for 90 days

Check Search Console → Pages weekly. "Page with redirect" growing on old URLs is expected and fine. Act on these:

Search Console status What it usually means Fix
Not found (404) An old URL missing from the map Add a 301 row
Redirect error A loop or a chain that is too long Point straight to the final URL
Duplicate without user-selected canonical Collection-product URLs or filter parameters resolving Add canonicals or redirect
Crawled – currently not indexed Thin or duplicated product pages Restore the original copy
Soft 404 Redirects to an irrelevant page Redirect to a closer match

Compare clicks per page against the same weeks before the move, not just site totals.

What does it cost to migrate Shopify to WooCommerce?

Ranges below are estimates based on typical European agency and freelance pricing, excluding VAT:

Scope Typical cost What drives it
DIY with export/import and a free redirect plugin €0–500 plus your time Theme licence, a few paid plugins
Automated migration service Roughly €100–1,000 Number of products, orders and customers
Agency migration onto an existing theme €2,000–6,000 Catalogue cleanup, redirect map, testing
Rebuild with custom design €6,000–20,000 Design, catalogue size, apps to replace
Rebuild with ERP or marketplace integrations €20,000–60,000 ERP, B2B, configurators, marketplaces

At Raao, a migration is scoped like a new store, because that is what it is. The Starter package starts from €1,900 (up to 500 products, one courier, card payments, SEO setup and GA4), Launch from €3,900 (up to 2,000 products, two couriers, invoicing, abandoned-cart emails), and larger catalogues with ERP or marketplace sync get a custom Enterprise quote. We treat the URL map and 301 redirects as part of the migration scope, not an extra. Prices are on our pricing page, and the ecommerce service page shows what is included.

Do not forget the running costs: hosting, plugin renewals and maintenance replace your Shopify subscription and app fees. They are usually lower, but they are not zero.

How we did it for Kuiba

Kuiba is a premium furniture and design retailer with more than 10,000 configurable products from 25+ European brands. It runs on a custom platform rather than WooCommerce, but the SEO rules we apply are the same on every build:

  • A custom storefront built for speed and SEO from the start, because speed regressions are one of the main causes of post-launch drops.
  • Automated supplier imports for brands such as Bonaldo, Calligaris, Nardi and Miele, with AI-assisted category mapping, so product data arrives complete instead of being retyped.
  • Server-side GA4 and the Meta Conversions API, plus Google Merchant, Meta, TikTok and Pinterest feeds, so tracking and Shopping visibility are in place from day one.
  • Orders pushed automatically to Microsoft Business Central through the client's CRM layer.

Read the full Kuiba case study. If you want a second pair of eyes on your redirect map before you switch, book a free 30-minute call via the contact page.

woocommerceshopifymigrationseo

Frequently asked questions

Keep reading

Let us look at your setup together

Book a free 30-minute call and leave with a clear next step and a realistic price range.

Prefer writing? Send us a brief
  • 30 minutes, video call, no obligation
  • Talk directly with the engineers who would build it
  • Honest view on scope, timeline and budget

The calendar is provided by Microsoft Bookings, which may set its own cookies.