Migrate WooCommerce to Shopify: what moves, what breaks

This site participates in affiliate programs. If you sign up through a link on this page, we may earn a commission at no extra cost to you.

By Jason Feng, Founder & Researcher. See how this review was researched.

Quick answer

Migrating from WooCommerce to Shopify moves your product catalog, your customer list, and, with a third-party app, your order history. It does not move your URLs, your theme, your plugins, your subscription agreements, or your custom fields. The Woo-specific trap is variant structure. WooCommerce lets a variable product carry as many attributes as you can invent. Shopify allows three options per product and 2,048 variants. Shopify’s own WooCommerce guide says products with more than three options do not have their options imported. Budget for a variant rebuild and a redirect map before you budget for anything else.

Table of contents

Cardboard shipping boxes stacked on a concrete floor

This move is not the reverse of Shopify to WooCommerce

Most migration content treats replatforming as one problem with two doorways. It isn’t. The data loss lands in different places depending on which way you go.

Shopify publishes a column mapping for WooCommerce exports. Attribute 1 name becomes Option1 Name, Stock becomes Variant Inventory Qty, Weight (lbs) becomes Variant Grams with a 453.6 multiplier. Exporting WooCommerce data is never the hard part; the hard part is what Shopify’s import path will accept. Our Shopify to WooCommerce walkthrough covers the opposite direction.

Three differences shape this direction:

  • WooCommerce content is WordPress content: posts, pages, the media library, plugin-written database tables. CSV carries none of that structure.
  • WooCommerce does not cap how many attributes a variable product can use. Shopify caps options at three and variants at 2,048.
  • Both directions lose customer passwords. The damage is smaller here, because Shopify signs customers in with a six-digit code sent by email rather than a stored password, so nobody has to invent a new one.

What moves, what does not

Everything below comes from vendor documentation fetched on 2026-09-24.

WooCommerce data Moves to Shopify? Where the limitation comes from
Product catalog (name, description, SKU, price, stock) Yes, via CSV Shopify’s guide maps Name to Title, Description to Body (HTML), SKU to Variant SKU, Regular price to Variant Price
Product images Only while WordPress stays reachable The CSV carries URLs that Shopify fetches at import time
Variable products with 1 to 3 attributes Yes, one row per option value Shopify’s mapping: Attribute 1 value(s) to Option1 Value
Variable products with 4 or more attributes No, options are dropped Shopify’s guide: "Shopify only allows for 3 product options. Products with greater than 3 options won’t have their options imported"
Products above 2,048 variants No Shopify help: "You can create up to 2,048 variants for a product"
Categories and tags Partial, as collections and tags The Woo taxonomy hierarchy is not preserved by CSV
Custom fields and product metadata No bulk path WooCommerce exports custom fields with a meta: prefix; the Shopify product CSV has no metafield columns
Customer records Yes, via CSV The customer CSV mapping covers first_name, last_name, user_email, and billing address fields
Customer passwords No Shopify help: "You can’t migrate customer passwords from another online store using a CSV"
Order history Only through a third-party app Shopify’s guide lists LitExtension, Store Migration, and Matrixify; there is no CSV route
Stored payment records on old orders Not documented [DATA NOT VERIFIED: no vendor page we fetched describes importing WooCommerce gateway tokens into Shopify]
Subscriptions and active subscriber agreements No Shopify has no first-party subscription product type
Coupons App-dependent [DATA NOT VERIFIED: the Shopify product and customer CSV templates have no discount columns, and no fetched page describes a coupon import path]
Blog posts Only through an app or the Blog API Shopify’s guide routes blogs to migration apps or the Blog API, not CSV
Product reviews No Shopify’s guide: "You can’t export or migrate reviews from WooCommerce to Shopify"
Theme, plugins, URLs No Separate theme systems, WordPress plugins, and different URL shapes

The variant ceiling, in practice

This is where a Woo store breaks on contact with Shopify, and it rarely shows up in a cost estimate. WooCommerce’s variable product documentation describes global and custom attributes feeding variations, each with its own price, stock, and image, and publishes no cap. [DATA NOT VERIFIED: we found no published WooCommerce limit on attributes or variations per product.]

Shopify’s limits are specific:

Limit Figure Source
Options per product 3 Shopify’s adding-variants guide
Variants per product 2,048 Same guide, plus a changelog entry confirming the increase from 100
Media items per product 250 Same guide
Media per variant 1 item, from the product’s media list Same guide
Daily variant upload cap past 500,000 variants 10,000 per day; Plus exempt Same guide
CSV import file size 15 MB Shopify’s product import guide

A made-to-order sofa with four attributes (size, fabric, leg finish, cushion fill) cannot exist as one Shopify product. Shopify’s guidance is to use a third-party app or theme line-item properties beyond three options, which means collapsing an attribute into a metafield and losing the ability to price it, or splitting the product in two.

One more wrinkle: changing the Option1, Option2, or Option3 columns deletes existing variant IDs and creates new ones. Several themes and apps also still do not support more than 100 variants, so a catalog that fits Shopify’s documented ceiling can still fail on a theme you bought years ago.

Subscriptions and other Woo plugins

WooCommerce Subscriptions lists at $279 for a one-year plan, or $446 for two years at the advertised 20% saving. Shopify has no first-party equivalent, so recurring billing moves to an app. Bold Subscriptions starts at $24.99/month plus a 2% transaction fee on its Launch tier, and $49.99/month plus 1% on Grow. Both carry a 30-day free trial.

Read that as a substitution, not a saving. You keep a recurring software bill, you pay a different vendor, and every subscriber has to re-authorize payment, because the mandate lives with your WordPress payment gateway. Whether those stored agreements can be exported at all is unclear. [DATA NOT VERIFIED: no page we fetched describes exporting WooCommerce Subscription payment tokens or reimporting them into a Shopify subscription app.]

LitExtension’s WooCommerce-to-Shopify page names reviews, subscriptions, memberships, loyalty programs, custom product options, and custom fields as data types to review separately before launch. A store using a memberships plugin and a wholesale pricing plugin is not migrating two features. It is shopping for two replacements.

Pages, blogs, reviews, and media

Product CSVs are the easy part. The content around them is where the manual work hides.

Blog posts live in WordPress as posts. On Shopify they live in blogs, with URLs shaped like /blogs/news/post-title, and they arrive through a migration app or the Blog API. A few policy pages can be copied and pasted. A library of a few hundred posts needs an app or a developer.

Reviews cannot be exported from WooCommerce at all. Shopify’s guide names three apps that import them manually, which means extracting them from WordPress with a plugin first, then feeding that file to the app.

Media is the quiet one. WordPress serves images from /wp-content/uploads/, Shopify serves from its CDN, and every image URL changes. Any inbound link or indexed image pointing at the old path breaks unless it is redirected.

Routes and what they cost

Five routes are documented, and they differ more in coverage than in difficulty.

Route What it handles Published price (2026-09-24)
Shopify Store Migration app WooCommerce products from a CSV upload, with guided setup; early access and desktop-only per Shopify’s guide Free; App Store listing shows a 3.1 rating from 76 reviews
Manual CSV into Shopify’s product importer Products and inventory only; 15 MB per file $0
Third-party migration apps Products, customers, orders, coupons, and SEO URLs depending on the app LitExtension’s WooCommerce-to-Shopify page displays $59 for its self-service plan, and its estimator prices by product, order, and customer counts
Shopify Partner or agency Everything, including theme and app rebuilds [DATA NOT VERIFIED: no published rate card]
Custom build against the Shopify API Everything the API exposes Developer time only

One detail to price in: LitExtension states that transferring customers and orders into Shopify requires the Grow plan or higher. On yearly billing that is $79/month rather than $29/month.

The free option deserves a caveat. Shopify’s Store Migration app carries a 3.1 average from 76 ratings, and the visible complaints center on vague errors during customer imports. Read the reviews before trusting it with a one-shot migration of 20,000 customers. Shopify’s pricing page also runs an entry promotion of three days free, then $1/month for three months, which is a trial discount rather than the ongoing price.

SEO: URLs change shape, and Shopify’s redirect tool has limits

Same domain, new URL everywhere. WooCommerce stores typically serve products from a configurable product base, with categories at a base that defaults to product-category, so /product/hoodie/ and /product-category/accessories/. Shopify serves /products/hoodie, /collections/accessories, pages at /pages/slug, and blogs at /blogs/blog-handle/post-slug. Every product, category, page, post, and image URL changes.

Because the domain does not, Google’s site-move documentation offers no shortcut: the Change of Address tool applies only to domain or subdomain changes. Your 301 map is the entire signal.

Shopify’s redirect documentation adds constraints that matter more in this direction than in most. Redirects only work from broken URLs, so if the old URL still resolves, the redirect will not fire. Paths beginning with /apps, /application, /cart, /carts, /orders, /services, or /shop cannot be redirected at all, and the same applies to Shopify’s fixed paths /products, /collections, and /collections/all. Collection tag filter URLs are off limits, market subfolders each need their own rule, and the cap is 100,000 redirects.

The first constraint will bite a Woo store. If your Woo product base is set to shop, your product URLs look like example.com/shop/hoodie, and Shopify will not accept a redirect from any path starting with /shop. If the base is products, the fixed-path rule blocks you. In both cases those URLs need a redirect outside Shopify’s tool, usually at the DNS or edge layer before traffic reaches Shopify.

Google’s guidance for the redirects you can create: use server-side permanent redirects, keep them for at least a year, keep chains short, and expect visibility to fluctuate. It also says small and medium sites should move all URLs at once, which conflicts with the staged testing most migration tools recommend.

If Shopify’s constraints are pushing you away from this migration, our comparison of the main Shopify alternatives covers what else fits, and the fee breakdown for both platforms models what each one actually costs per order.

Cost lines before and after

US list prices published on 2026-09-24.

Cost line WooCommerce Shopify
Platform and hosting $0 platform fee, hosting billed separately at $25–$350/month for most stores Basic $29/mo yearly or $39/mo monthly; Grow $79/$105; Advanced $299/$399; Plus from $2,300/mo, hosting included
Card processing with the in-house processor WooPayments at 2.9% + 30¢ per transaction Shopify Payments from 2.9% + 30¢ on Basic, 2.7% Grow, 2.5% Advanced, 2.25% Plus
Fee for using an outside processor None listed 2% Basic, 1% Grow, 0.6% Advanced, 0.2% Plus
Feature subscriptions Extensions at $29–$299/year each; WooCommerce Subscriptions at $279/year App subscriptions priced per app; Bold Subscriptions from $24.99/mo plus 2%
Theme Third-party Woo themes, priced individually Free themes included, paid themes bought once from the Theme Store and non-refundable
Migration cost Built-in product export with a custom-meta option Free Store Migration app or LitExtension from $59; app-based routes for orders

The direction of the trade is what matters. Moving to Shopify replaces a variable hosting bill and a stack of annual extension licenses with one predictable subscription, then adds a second percentage on every order if you keep your existing gateway instead of Shopify Payments. That surcharge is the most commonly missed line. For a small Woo store paying $25/month for hosting, Shopify Basic is often the higher monthly cost before it.

The risk list

Ranked by how often they turn a migration into an outage:

  1. Products with four or more options. Shopify’s guide is explicit that the options are not imported, and Shopify’s own templates cannot represent them afterward.
  2. A product base of shop or products in WooCommerce, which makes the matching Shopify redirects impossible to create.
  3. Subscription customers needing to re-authorize payment, with no documented path to move the old mandate.
  4. Taking the WordPress site offline before the image import finishes. Shopify fetches images from the URLs in your CSV, so the old host stays live until the import completes.
  5. Sorting the export CSV in a spreadsheet. Shopify’s import guide warns this can disassociate variants from image URLs.
  6. The 15 MB ceiling on product and customer CSVs, which splits large catalogs into multiple files.
  7. Order history requiring Grow or higher per LitExtension’s note, which changes the monthly bill you are comparing against.
  8. Replacement apps arriving with their own monthly bills, so a $0 migration still raises your platform cost.

Our verdict

Migrate filter-first. If your catalog fits inside three options and 2,048 variants per product, and your Woo stack is mostly a theme plus a payments plugin, the move to Shopify is a fair trade: predictable billing, no WordPress maintenance, and a checkout someone else is responsible for. The product CSV mapping is published by Shopify itself, and 301s cover the URL damage you can anticipate.

Stay on WooCommerce if your store’s value sits in things Shopify cannot represent. Four-option products, subscription agreements with years of history, B2B pricing layers, membership content, or a custom checkout you built yourself. Those are rebuilds, and no fee comparison shows that cost.

Three steps are not optional in either case. Audit products with four or more options before you touch a CSV. Confirm your Woo product base is not shop or products. Keep WordPress online until the images land in Shopify.

Frequently asked questions

What actually transfers from WooCommerce to Shopify?

Your product catalog, customer list, and — with a third-party app — order history move over. URLs, themes, plugins, subscription agreements, and custom fields do not.

How many variants and options can a Shopify product have?

Shopify allows three options per product and up to 2,048 variants. Products with more than three options won’t have their options imported.

What happens to WooCommerce products with four or more attributes?

Their options are dropped during import, because Shopify only allows three product options. You’ll need to rebuild them, collapse an attribute into a metafield, or split the product in two.

Do customer passwords migrate from WooCommerce to Shopify?

No, customer passwords can’t be migrated via CSV. The damage is smaller because Shopify signs customers in with a six-digit code sent by email rather than a stored password.

Can I migrate WooCommerce subscriptions to Shopify?

No, Shopify has no first-party subscription product type, so recurring billing moves to an app. Every subscriber has to re-authorize payment because the mandate lives with your WordPress payment gateway.

Why can’t I create Shopify redirects for my WooCommerce product URLs?

Shopify redirects only work from broken URLs and can’t cover paths starting with /shop, /products, or /collections. If your Woo product base is set to shop or products, those URLs need a redirect outside Shopify’s tool.

How we researched this

  • This is a research-based guide. Every figure comes from the vendors’ published documentation, which we link and date.
  • Pages were fetched on 2026-09-24 through a US exit IP with an en-US language header, so the prices shown are US list prices rather than region-localized ones.
  • We worked from direction-specific sources: Shopify’s "Migrate from WooCommerce" guide, which holds the only published column mapping for this move, plus Shopify help pages for variant limits, product import, customer import, and URL redirects.
  • On the WooCommerce side we used its pricing page, permalinks, variable product, and product CSV importer docs, plus the Subscriptions product page.
  • For search behavior we used Google Search Central’s site-move documentation, since redirect and change-of-address rules come from the search engine.
  • Where a page did not state a figure, we marked it. Read more in how we research.

Sources

All URLs fetched 2026-09-24.

Directly comparable breakdowns on this site:

Leave a Comment