← Blog

How to Migrate from Shopify to WooCommerce: A Step-by-Step Guide

Shopify’s monthly fees, transaction charges, and limited code access push a predictable number of store owners toward WooCommerce every year. The migration is achievable, but it has specific failure points — particularly around SEO — that will cost you if you do not plan for them.

Why Stores Leave Shopify

The economics of Shopify shift as stores grow. On Shopify’s Basic plan ($39/month), there is a 2% transaction fee on every sale unless you use Shopify Payments. On Shopify’s standard and advanced plans, fees drop but monthly costs climb to $105–$399. For high-volume stores, those platform costs become significant.

The other driver: code access. Shopify limits what you can modify in your theme and checkout. If you want a non-standard checkout flow, a custom product configurator, or deep integration with a specific ERP or CRM, Shopify’s architecture fights you. WooCommerce is open source — if you can code it (or hire someone who can), you can build it.

Tom ran an outdoor apparel store doing $180,000/year in revenue. On Shopify’s mid-tier plan, he was paying $1,380/year in platform fees plus approximately $1,800/year in transaction fees (using a non-Shopify payment processor). Switching to WooCommerce with self-managed hosting at $180/year and Stripe at 2.9% + $0.30 per transaction saved him roughly $1,200/year — while giving him full code ownership.

Pre-Migration Planning: What to Map First

Do not start moving data until you have mapped three things:

1. URL structure differences. Shopify product URLs follow the pattern /products/[handle]. WooCommerce product URLs can be configured, but the default is /product/[slug]. Every URL that changes needs a 301 redirect. Without redirects, you lose all organic link equity built to your Shopify URLs — and likely a significant portion of your search rankings.

Pull a complete list of your Shopify URLs before migration. Shopify lets you export your sitemap (yourstore.myshopify.com/sitemap.xml) or use a crawler like Screaming Frog to capture all product and collection URLs. Map each one to its WooCommerce equivalent.

2. Data requirements. What needs to move: products (with images, descriptions, variants, prices, SKUs), customers (email, name, address), orders (historical records), and reviews. Decide in advance which of these are essential.

3. Payment gateway reconfiguration. If you use Shopify Payments, you cannot transfer it directly — Shopify Payments is Stripe under the hood but connected to Shopify’s infrastructure. You will set up a direct Stripe account on WooCommerce. Your saved payment methods cannot migrate (PCI compliance prohibits storing raw card data). Customers who have saved cards in Shopify will need to re-enter payment details.

Product Data Migration

The cleanest path for product migration is CSV export from Shopify and import to WooCommerce.

From Shopify: Go to Products → Export → Export all products → CSV for Excel. This gives you a file with all product data. Shopify’s export includes: title, body (description), vendor, type, tags, published status, options (size, color, etc.), variants, pricing, barcode, weight, image URLs.

To WooCommerce: WooCommerce does not import Shopify’s CSV format directly. You have two options:

  1. WooCommerce Product CSV Importer — the built-in importer. You map Shopify’s CSV columns to WooCommerce’s fields manually. This works but requires column remapping for every field difference. Plan for 2–4 hours of mapping work for a store with 100+ products.

  2. Migration tool — services like Cart2Cart, LitExtension, or Matrixify handle the format conversion automatically. Cart2Cart has a per-product pricing model (approximately $0.05–$0.10/product depending on your store size and data complexity). For a 500-product store, this is $25–$50 for the migration tool.

Product images are the most time-consuming part. Shopify hosts your images on their CDN. During migration, you download all product images and re-upload to WordPress’s media library. Cart2Cart handles this automatically. A manual migration requires downloading the image library from Shopify (you can do this via a full store export) and uploading to WordPress.

Customer and Order Data Migration

Customer data (name, email, address history) migrates via CSV or migration tool. The priority data:

  • Email addresses — essential for your existing marketing lists
  • Order history — customers expect to see past orders if they create WooCommerce accounts
  • Shipping addresses — convenience for returning customers

WooCommerce’s customer importer handles the basics. For full order history migration, migration tools (Cart2Cart, LitExtension) are more complete — they create historical order records linked to customer accounts.

One important note: passwords do not migrate. Shopify hashes passwords with its own algorithm. WooCommerce uses WordPress’s hashing. Your customers will need to reset their passwords to log in to WooCommerce accounts. Send a post-migration email to existing account holders explaining this and providing a password reset link.

Setting Up WooCommerce Before Migration

Your WooCommerce site needs to be fully configured before you move data. This means:

  • WordPress installed on your host
  • WooCommerce plugin installed and configured (currency, tax settings, shipping zones)
  • Payment gateway connected (Stripe plugin configured with your API keys)
  • SSL certificate installed (required for payment processing)
  • Your theme in place (custom or otherwise)

Run the new WooCommerce site on a staging URL (or a password-protected domain) while your Shopify store remains live. Only cut over DNS when the WooCommerce site is fully tested.

Our custom WooCommerce development handles this staging-to-live process as part of every migration build — the Shopify store stays live until the WooCommerce site is tested and ready. Zero downtime is achievable with the right process.

The SEO Migration: The Part That Cannot Be Skipped

SEO is where Shopify-to-WooCommerce migrations most commonly fail. The URL structure changes. Without 301 redirects, every external link pointing to your Shopify product URLs — and every Google ranking — returns a 404 error on your new WooCommerce site.

Step 1: Match WooCommerce product slugs to Shopify product handles. Shopify uses handles as URL slugs. If you make your WooCommerce slugs identical to your Shopify handles, fewer redirects are needed. This works perfectly if you match the URL structure — WooCommerce’s default /product/[slug] vs Shopify’s /products/[handle]. You still need redirects for the folder name change (/products//product/).

Step 2: Configure WooCommerce permalinks. Go to WooCommerce → Settings → Permalinks. Set the product base to match your preferred URL structure. You can customize this to /products/[slug] to match Shopify’s convention exactly, which simplifies redirect mapping.

Step 3: Set up 301 redirects. On a WooCommerce/WordPress site, redirects are managed through the Redirection plugin or your server configuration (nginx or Apache redirect rules). For a 500-product store, you need 500 product URL redirects plus redirects for collection/category URLs.

Create your redirect map in a spreadsheet: column A = old Shopify URL, column B = new WooCommerce URL. Import this into the Redirection plugin. Test every redirect by visiting old URLs and confirming they land on the correct WooCommerce pages.

Step 4: Update your sitemap submission. After migration, submit your new WooCommerce sitemap (yourdomain.com/sitemap_index.xml with Yoast SEO, or the WooCommerce default sitemap) to Google Search Console. Request indexing for your key product and category pages.

Lisa migrated a 300-product store from Shopify to WooCommerce. She mapped redirects carefully, matched product slugs exactly, and submitted the new sitemap. Her organic traffic dipped 12% in the first two weeks post-migration (expected — Google takes time to process the redirects) and recovered to pre-migration levels within 6 weeks. By month 3, organic traffic was 18% above the Shopify baseline, driven by the improved page speed of the custom WooCommerce build.

Payment Gateway Transition

Shopify Payments connects to Stripe’s payment infrastructure but through Shopify’s dashboard. You cannot port this directly. Set up a standalone Stripe account, install the WooCommerce Stripe plugin, and configure it with your Stripe API keys.

If you have any recurring charges or subscriptions running through Shopify, these need to be recreated in your new Stripe/WooCommerce setup. Recurring billing is handled through WooCommerce Subscriptions (a paid extension) and the Stripe billing API — not a trivial migration if you have active subscriptions.

For stores using Shop Pay (Shopify’s accelerated checkout), WooCommerce has its own accelerated options: Google Pay, Apple Pay, and Stripe’s Payment Element all work in WooCommerce and provide similar one-click checkout experiences for returning customers.

Testing Before DNS Cutover

On your staging site, test every critical path:

  1. Browse products → add to cart → complete checkout (with a real test transaction)
  2. Customer account creation and login
  3. Order confirmation email delivery
  4. Shipping rate calculation for your key zones
  5. All product variants (size/color combinations)
  6. All discount codes from your Shopify store (recreate in WooCommerce)
  7. Mobile checkout on iOS and Android

Only move DNS when every path is confirmed working. DNS propagation takes up to 48 hours — during this window, some visitors will see the old Shopify site and some will see WooCommerce. Have a plan for orders that come in on both platforms during propagation.

Need an audit of your current Shopify store before deciding on migration? Run a check at honest.designodin.com — the ecommerce audit covers performance, conversion signals, and SEO health, all of which inform the migration business case. See our fixed-price WooCommerce packages for migration builds.

FAQ

How long does a Shopify to WooCommerce migration take? For a straightforward store (under 200 products, no subscriptions, no complex integrations), plan 2–4 weeks from start to DNS cutover. Larger stores with custom integrations or subscription products take 6–12 weeks. The SEO redirect mapping and testing phases are where timeline overruns most commonly occur.

Will I lose my Google rankings when migrating from Shopify to WooCommerce? You will see a temporary dip of 10–20% in organic traffic in the first 2–4 weeks as Google processes your 301 redirects. If redirects are set up correctly and all product slugs are mapped, rankings should fully recover within 6–8 weeks. Stores that skip redirect mapping can lose rankings permanently.

Can I migrate my Shopify customer passwords to WooCommerce? No. Password hashing algorithms are not compatible between platforms. Your customers will need to reset their passwords to log into WooCommerce accounts. Send a migration announcement email with a direct password reset link. Most customers who need account access will reset without friction.

Does migrating from Shopify to WooCommerce save money? It depends on your volume and current Shopify plan. Shopify’s $39–$399/month platform fee plus transaction fees (if not using Shopify Payments) is the benchmark. WooCommerce hosting costs $10–$50/month for most stores. Payment processing fees are the same whether you use Shopify Payments (Stripe) or WooCommerce with Stripe direct. For stores doing over $100,000/year in revenue, the savings are typically $1,200–$3,600/year.

What is the biggest risk in a Shopify to WooCommerce migration? SEO. Incorrect or missing 301 redirects can cause permanent ranking losses for product and collection pages. The redirect mapping is not glamorous work, but it is the most consequential part of the migration. Do not skip it and do not rush it.