Moving a store from WooCommerce to Shopify: what transfers
Short answer: Products and customers move from WooCommerce to Shopify with Shopify's free Store Migration app or CSV files. Historical orders, coupons, blog posts, pages and reviews need extra steps or a third-party migration app, and customer passwords can't move at all. Plan the migration around an inventory of what you have, test with a slice of the catalog, and keep the old store's back end available for refunds after launch.
Most migration trouble comes from things nobody listed: the coupon codes printed on flyers, a subscription plugin, a product with five variation attributes. Start with the list.
Inventory: what you have and where it goes
| WooCommerce data | Route to Shopify (per Shopify's migration guide) | Notes |
|---|---|---|
| Products | Store Migration app or CSV import | Shopify products allow a maximum of 3 options; products using 4+ variation attributes import without variants |
| Product images | Travel with the product data when the import can read them | Check a sample of products and their galleries after import |
| Customers | Store Migration app or CSV import | Marketing consent fields deserve a careful look |
| Customer passwords | Can't be migrated | With Shopify's customer accounts, people sign in with email and a one-time code; with legacy accounts, invite them to create passwords |
| Historical orders | Not via CSV; use a third-party migration app | Shopify lists apps such as LitExtension Store Migration, Matrixify and Ablestar WooCommerce Importer; import products and customers first |
| Coupons | Not via CSV; recreate as discounts or use a third-party app | Find every live code first |
| Reviews | Not in the product export; needs a separate import | Usually through your new reviews app |
| Blog posts and pages | Not in WooCommerce exports | Rebuild, copy, or use a third-party app |
| Extensions and custom features | Don't transfer | Find a Shopify app, a native feature, or custom work for each |
| Subscriptions and saved cards | Not covered by the standard import | Plan with your payment provider and subscription app before you move anyone |
On the WooCommerce side, the built-in product CSV exporter handles standard product fields and columns prefixed with meta:; data added by extensions may need that extension's own export, according to WooCommerce's documentation.
List your extensions
Open Plugins in WordPress and write down every active plugin that touches the store: payments, shipping rules, product add-ons, bundles, wishlists, reviews, subscriptions, invoices, marketing. For each, decide:
- Native in Shopify (often shipping rates, discounts, gift cards)
- Replace with an app
- Drop (not needed anymore)
- Custom build (rare, but sometimes the right call)
Migration steps
1. Set up the Shopify store and pick a theme
Shopify's guide starts here: create the store, add a free or paid theme, and get a rough look in place so imported products land somewhere visible.
2. Clean your WooCommerce data first
Delete dead products, merge duplicates, fix missing SKUs and weights. Migrating mess just moves the mess. WooCommerce's documentation also advises backing up and testing imports with a small sample first.
3. Do a test import
Export a few products of each type (simple, variable, with many images) and a handful of customers. Import them with the Store Migration app. Shopify says imported products arrive as drafts and the app gives an import report listing anything that had problems.
4. Fix the problems, then import everything
Usually: products with too many options, odd characters in titles, missing images, or variant prices. Then run the full import.
5. Bring over orders, reviews and content
Use a migration app for order history if you need it in Shopify. Import reviews into the reviews app you've chosen. Rebuild key pages (About, FAQ, Shipping, Returns) rather than copy-pasting messy HTML.
6. Rebuild settings that don't migrate
Shipping zones and rates, tax settings, payment providers, notification emails, staff accounts, and discounts for any coupon codes still in circulation.
7. Redirects, in one paragraph
WooCommerce and Shopify use different URL patterns (Shopify uses /products/ and /collections/), so old links will 404 unless you redirect them. Shopify's guide shows creating URL redirects under Content > Menus > View URL Redirects, one by one or by CSV import, and recommends checking your most-visited old pages redirect correctly after launch.
8. Test orders
Shopify suggests test transactions covering a successful and a failed payment, a refund and cancellation, a full and a partial fulfillment, and archiving an order, checking the customer emails each time.
9. Switch the domain
Point the domain to Shopify once everything above is checked, ideally at a quiet time of week.
Post-launch checks
Day one
- [ ] Place a real order with a real card and refund it.
- [ ] Check ten top old URLs redirect to the right new pages.
- [ ] Confirm order notification emails reach you and the customer.
- [ ] Look at the store on a phone, logged out.
First week
- [ ] Watch for 404s and add missing redirects.
- [ ] Answer "I can't log in" emails with a simple explanation of the new sign-in.
- [ ] Check stock levels against your warehouse count.
- [ ] Confirm analytics and any ad conversion tracking are firing.
First month
- [ ] Compare traffic and conversion to the same period on the old store.
- [ ] Keep the old WooCommerce back end (not the public site) for refunds on old orders. Afterpay's merchant help, for example, advises keeping its WooCommerce integration installed for as long as you need to refund earlier orders, because those orders won't appear in Shopify. The same logic applies to other payment providers.
- [ ] Cancel hosting and plugin subscriptions you no longer need, once you're sure.
FAQ
Will my customers need to reset their passwords?
Passwords can't be migrated. With Shopify's customer accounts, imported customers sign in with their email and a one-time code; with legacy accounts, you invite them to create new passwords.
Can I keep my blog?
Yes, but WooCommerce exports don't include WordPress posts and pages. Rebuild them in Shopify's blog or use a third-party migration app, and redirect the old post URLs.
How long does a migration take?
It depends on catalog size, extensions and how clean the data is. The test import usually tells you more than any estimate.
Do I lose my SEO?
Not if redirects, page titles and meta descriptions carry over. Expect some movement in the first weeks, and watch for 404s.
If you'd like a second opinion on your plugin list before you commit, send it over and we'll mark what moves easily.