What moves from Shopify to WooCommerce, and what never does
Products, customers and orders come across. Passwords and Shopify Payments cards do not. The full list, the tools, and where the cost goes.

Every Shopify to WooCommerce migration has the same two surprises, and both show up after the store is live if nobody planned for them. Customer passwords do not come across, so every returning customer hits a reset screen. Saved cards on Shopify Payments do not come across either, and Shopify will not release them to any other processor, including Stripe.
Everything else moves, given the right tool and a redirect map. The work is in the details, and the details are where the price lives.
TLDR
Products, variants, collections, customers, order history, pages and blog posts all move from Shopify to WooCommerce. Passwords and Shopify Payments card tokens never do. Plan a password reset email and a card update flow for subscribers before switch day, and build the redirect map before you build anything else.
What comes across
Shopify exports products, customers and orders as CSV files from the admin, and its Admin API gives a migration tool the same data with the relationships intact. WooCommerce has its own guide to moving from Shopify and a free importer for the basics.
| Data | Moves? | Watch for |
|---|---|---|
| Products, variants, images, collections | Yes | Variant option names and metafields need mapping to attributes and custom fields. |
| Customers | Yes | Names, emails, addresses, tags, order totals. Not passwords. |
| Orders | Yes, as history | Old orders import with status and line items. They are records, not live orders. |
| Discount codes | Partly | Simple codes map to coupons. Automatic discounts and Functions are rebuilt. |
| Pages and blog posts | Yes | Formatting comes across as HTML. Expect a cleanup pass. |
| Reviews | Depends on the app | Judge.me, Yotpo and Loox export CSV. Native Shopify reviews do not export. |
| Theme | No | Rebuilt on a WordPress block theme. |
| Apps | No | Each one is replaced by a plugin, a WooCommerce feature, or nothing. |
| Subscriptions | Partly | Records move. Cards move only from Stripe, Braintree or Authorize.net, not from Shopify Payments. |
| URLs | Via redirects | Shopify uses /products/handle. WooCommerce uses /product/slug. Every old URL gets a 301. |
The “apps” row is the one that decides the budget. A store with twelve apps is really twelve small projects: find the WooCommerce equivalent, check it does the same job, configure it, test it. Some apps become a setting. Some become a marketplace extension at $79 to $299 a year. One or two become custom code.
What never comes across
Passwords first. Shopify stores password hashes it does not export, and even if it did, WordPress uses a different hashing scheme. The fix is not technical. It is an email to every customer on launch day that says the store moved and here is the link to set a password, sent before they discover it at checkout. Stores that skip the email get a support inbox full of “my login stopped working”.
Cards second. Shopify Payments holds saved cards and subscription payment methods, and it will not transfer them to another processor. A long thread on the Shopify community forum has merchants asking for years. For a store with one-off purchases this costs nothing: customers enter a card next time they buy. For a subscription store it is the whole problem, and the plan for it is in our guide on moving subscriptions to WooCommerce without losing saved cards.
Third, anything a Shopify app did at checkout. Shopify Functions for discounts and shipping, checkout extensions, and Scripts on older Plus stores are rebuilt as WooCommerce logic, not migrated.
The redirect map comes first
Shopify product URLs look like /products/blue-linen-shirt. Collections are /collections/shirts. Pages are /pages/about. WooCommerce defaults are /product/blue-linen-shirt, /product-category/shirts and /about. Every one of those needs a 301 or the store loses the rankings it spent years building.
The map is a spreadsheet with one row per old URL, generated from the Shopify export, checked against Google Search Console for any URL that gets traffic and is not in the export. It goes into the WooCommerce site as redirect rules before launch, and it gets tested with a script that fetches every old URL and expects a 301 to a page that returns 200. A migration that ends with “we will add redirects next week” is a migration that will lose a month of search traffic.
Tools, and what they leave for you
Three paths. Manual CSV import works for a small catalog with no order history worth keeping. A migration service such as LitExtension or Cart2Cart moves products, customers and orders for a few hundred dollars and handles the relationships between them. An agency migration does the data and everything the tools leave behind: the theme, the apps, the redirects, the payment setup, the test orders and the switch.
The tools are clear about their limits. They move data. They do not rebuild the theme, they do not choose plugins, they do not write redirects for a custom URL structure, and they do not test that a returning customer can log in and reorder. That gap is the agency fee.
Apps, and what replaces them
The apps row in the table is the one to expand before quoting, so here is how the common ones map. The column on the right is a starting point, not an endorsement; the right plugin depends on what the app was actually doing for the store.
| Shopify app | WooCommerce equivalent | Note |
|---|---|---|
| Judge.me, Loox, Yotpo reviews | Judge.me has its own WooCommerce plugin; others export CSV into WooCommerce’s native reviews | Photos in reviews need a plugin that supports them |
| Klaviyo | Klaviyo’s WooCommerce integration | Flows are rebuilt; the list and the history import |
| Recharge, Bold, Seal subscriptions | WooCommerce Subscriptions | The subscriptions migration guide covers the cards |
| Shopify Flow | AutomateWoo | Each Flow is rebuilt by hand, one at a time |
| Shopify Email | MailPoet, or the email platform the store already uses | Templates are rebuilt |
| ShipStation, Shippo | Same service, WooCommerce integration | Carrier accounts stay; the connection is re-authorized |
| Bundle apps | Product Bundles or Composite Products | Bundle pricing rules need checking one by one |
| Wholesale and B2B apps | A B2B plugin, or custom pricing rules | See WooCommerce shipping and pricing rules for where plugins stop |
| Shopify Inbox | Any live chat with a WordPress plugin | Chat history does not move |
| Shopify Payments | Stripe, WooPayments, PayPal | New account, new fees, and the cards do not follow |
Two patterns to watch for. Some apps did a job WooCommerce does natively, such as a discount app whose rules are WooCommerce coupons, and those go to zero. And some apps did a job nobody remembers installing them for, and the migration is the moment to find out by turning them off on the old store for a week before switch day.
Switch day, in order
The day itself is short if the weeks before it were done properly. The order:
- The morning before, put the Shopify store into a “no new orders” state: a password page with a note, or checkout disabled, for the switch window. Announce the window to customers a week earlier.
- Export the final products, customers and orders. Only the orders since the last full import need to come across, so this is small.
- Import the delta into WooCommerce on the staging domain and spot check twenty orders and twenty customers against the export.
- Run the redirect test script one last time against the staging domain.
- Point DNS at the new store. Propagation takes minutes to hours; the old store stays reachable during it and is not taking orders.
- Place a real order on the live store with a real card, and refund it. Check the confirmation email, the admin, and the fulfillment integration.
- Send the password reset email to every customer.
- Watch Search Console for crawl errors over the next week, and the support inbox for “my login stopped working”, which should be near zero if step seven went out.
Keep the Shopify store on the lowest plan, paused, for a month. Every migration finds one record that did not come across, and a paused store is where you get it from.
What it costs
A tool-only migration of a mid-size store: under $1,000 in tool fees plus your own time on everything else. An agency migration for a store with a few thousand products, a handful of apps and a proper redirect map: $4,000 to $12,000 is the range we see published, and our own store builds start at $4,500. The variables are the app count, whether subscriptions are involved, and whether the design is being kept or rebuilt.
The order of work matters more than the tool. Redirect map, then theme, then data, then apps, then test orders from a real customer account, then the password email, then DNS. Switch on a quiet day, and keep the Shopify store paused rather than closed for a month so nothing is lost if a record turns out to be missing.
Questions
Can the old Shopify store keep selling during the migration?
Yes. The WooCommerce store is built on a separate domain or a staging host. Only the final data sync and the DNS change happen on switch day, and orders placed in the last window are imported after.
Do customers have to create new accounts?
No. Their accounts come across with email, name, addresses and order history. They set a new password on first login because Shopify does not export password hashes.
Read these next
Same kind of problem, different corner of the store.

Block theme or page builder for a new WooCommerce store
Page builders are how most WooCommerce stores got slow. A block theme keeps the layout in the editor WordPress already has. Where each one wins.
WooCommerce
Check old plugins for HPOS before an update breaks the store
HPOS moved orders out of the posts table. Old plugins that read orders as posts fail without an error. How to find them and what a fix involves.
WooCommerce
Add custom fields to the WooCommerce block checkout
The old checkout field filters do nothing on the block checkout. The Additional Checkout Fields API does. Code, limits, and when to go further.
WooCommerce