Skip to content
Store Setup10 min readBy GoTinker Team

Migrate Products from WooCommerce to Shopify: The Data That Gets Lost (And How to Protect It)

Migrate Products from WooCommerce to Shopify: The Data That Gets Lost (And How to Protect It)

Most merchants who migrate products from WooCommerce to Shopify expect a clean transfer. What they actually get is a catalog full of holes: missing custom fields, broken variant structures, and stripped metadata that nobody warned them about. According to Group47 research, 83% of data migration projects either fail outright or blow past their budgets and timelines.

The product data you lose during migration won't show up as an error message. It just quietly disappears.

This isn't another step-by-step migration walkthrough. If you need that, we've already written a full WooCommerce to Shopify migration guide. This article is about the specific product data that gets destroyed during the move, why it happens, and how to catch it before your customers do.

Which WooCommerce product data types silently disappear during migration to Shopify?

Several WooCommerce data types have no direct equivalent in Shopify, so they're dropped without any warning. The most commonly lost fields include purchase notes, custom taxonomies, product add-ons, and plugin-generated metadata from tools like YITH, WooCommerce Subscriptions, and WooCommerce Bookings.

Here's what typically survives the migration intact:

  • Product title, description, and short description
  • SKU and price (regular and sale price)
  • Basic product images
  • Simple product weight and dimensions
  • Product tags and basic categories

And here's what almost always gets lost:

  • Purchase notes and custom thank-you messages
  • Cross-sell and upsell product relationships
  • Downloadable file permissions and expiry settings
  • Custom taxonomies beyond tags and categories
  • Plugin-generated data (subscriptions, bookings, composite products)
  • Product reviews with custom metadata (verified buyer status, review images)

The real danger isn't losing a single field. It's losing dozens of small data points across hundreds of products, then discovering the gaps three weeks later when customers start complaining. If you're planning to bring reviews over separately, check out our guide on importing product reviews to Shopify for the cleanest approach.

How do Shopify's variant and option limits break WooCommerce catalogs?

Shopify allows a maximum of 3 option types per product (like Size, Color, and Material) and up to 2,048 variants per product as of October 2025. WooCommerce has no hard limits on either. If your WooCommerce products use 4 or more attribute groups for variations, Shopify simply can't represent them in a single product.

This is where things get messy. A WooCommerce product with attributes for Size, Color, Material, and Length needs to be restructured before it can exist on Shopify. You have three options:

  1. Combine attributes: Merge two attributes into one (e.g., "Material - Length" becomes a single option). This works but creates ugly option names and bloated dropdown menus.
  2. Split into separate products: Break one WooCommerce product into two or more Shopify products grouped by a shared tag or collection. You keep clean data but lose the single-product experience.
  3. Use a product options app: Apps like Optionize Product Options let you add unlimited custom options to Shopify products, bypassing the 3-option ceiling. This is probably the cleanest solution if you have complex product configurations. For more on this limitation and available workarounds, read our breakdown of Shopify's product options limitations.

Here's my honest take: most merchants treat WooCommerce-to-Shopify migration as a data transfer problem when it's actually a data architecture problem. WooCommerce's schema is flat, plugin-dependent, and infinitely flexible.

That's exactly why Shopify can't automatically absorb it. The merchants who end up with broken catalogs aren't the ones who picked the wrong migration tool. They're the ones who never audited their WooCommerce data before the move.

What happens to WooCommerce custom fields, ACF data, and product metadata on Shopify?

Custom fields created through Advanced Custom Fields (ACF) and other WordPress plugins are completely ignored by most migration tools. WooCommerce's native CSV export only pulls default product attributes, so a dedicated export plugin is required for ACF fields. If CSV is your migration method, those fields are gone before the transfer even starts.

Here's a field-by-field breakdown of what happens to common custom data:

  • ACF text, number, and textarea fields: Dropped entirely. Not included in WooCommerce CSV exports or most migration app transfers.
  • ACF image and gallery fields: Lost. These reference WordPress media library IDs that have no Shopify equivalent.
  • ACF repeater and flexible content fields: Gone. Shopify metafields can't replicate nested repeater structures natively.
  • WooCommerce custom product attributes (non-variation): Sometimes transferred as tags, sometimes dropped. Depends entirely on the migration tool.
  • Post meta from plugins (YITH Wishlist counts, WooCommerce Points and Rewards balances): Always lost.

The "silent failure" problem is the worst part. Migration apps will show "100% complete" with a green checkmark while your custom metafields have been quietly dropped. No error log, no warning, no incomplete transfer notice. You just end up with products that look right at first glance but are missing the custom data your store depends on.

The fix? Export your ACF data separately using WP All Export before migration, then map those fields to Shopify metafields after the move. It's extra work, but it's the only reliable way to preserve custom product data. If you need to make bulk updates to those metafields post-migration, a bulk product editor will save you hours of manual work.

Why do product images and alt text often break during a WooCommerce to Shopify migration?

Product images break for two main reasons: URL resolution failures and alt text stripping. WooCommerce stores images in the WordPress media library with URLs tied to your specific domain and wp-content directory structure. During migration, the tool needs to download each image from those URLs and re-upload them to Shopify's CDN.

If your WooCommerce store is already offline (or you've changed DNS before completing the migration), those image URLs return 404 errors. The migration tool can't download what it can't reach, so you end up with products that have no images at all.

Alt text is a separate problem. WooCommerce stores image alt text in the wp_postmeta table, attached to the media attachment post. Most migration tools grab the product images but skip the alt text metadata entirely. You'll end up with every product image on Shopify having blank alt text, which is terrible for accessibility and product page SEO.

Protect yourself with these steps:

  1. Export a full list of image URLs and their alt text from WooCommerce before you start
  2. Keep your WooCommerce store live until migration is fully verified
  3. After migration, audit every product image on Shopify against your export list
  4. Re-add alt text manually or use Shopify's bulk editor to fill in the gaps

Poorly executed migrations can cause up to a 30% decline in organic traffic overnight, and missing image alt text is one of the sneaky contributors to that drop.

How do you migrate products from WooCommerce to Shopify with the least data loss?

API-based migration causes the least data loss because it transfers structured data directly between platforms without the lossy compression of a CSV file. But each method has specific trade-offs that matter depending on your catalog complexity.

CSV export/import is the simplest approach but also the most limited. WooCommerce's native exporter skips ACF data, custom taxonomies, and most plugin metadata. Shopify's CSV importer has its own quirks with variant formatting. If your catalog is straightforward with simple products and no custom fields, CSV works fine. For the full process, see our guide on importing products to Shopify from a CSV file.

Migration apps like Migratify sit in between. They connect to your WooCommerce store and pull product data through WooCommerce's REST API, which captures more fields than a CSV export. Migratify supports migration from WooCommerce and 100+ other platforms, letting you preview products before import and use AI-powered editing to clean up titles and descriptions during the transfer. The downside is that even well-built migration apps can't map data types that don't exist on the destination platform.

Custom API migration gives you the most control. You write scripts that pull from the WooCommerce API and push to the Shopify Admin API, with custom mapping logic for every field. It's the only method that lets you transform ACF data into Shopify metafields during the migration itself. The trade-off: it requires developer resources and takes significantly longer to set up.

For a detailed comparison of the best migration tools available right now, check our ranked list of Shopify store migration apps in 2026. And if you'd rather hand the whole project to someone else, we've covered how to choose the right Shopify migration service too.

How do you validate product data integrity after a WooCommerce to Shopify migration?

You validate by running a systematic comparison between your WooCommerce export and your live Shopify catalog, checking every data field that matters to your business. Don't trust the migration tool's completion report. It tells you records were transferred, not that data is correct.

Start with these checks:

  1. Product count: Compare total products in WooCommerce vs. Shopify. If numbers don't match, find what's missing.
  2. Variant count per product: Products with complex variants are the most likely to lose data. Spot-check your top 20 sellers.
  3. Price accuracy: Verify regular prices, sale prices, and compare-at prices. Currency conversion errors happen more than you'd think.
  4. SEO metadata: Check that page titles and meta descriptions transferred. If you were using Yoast or Rank Math on WooCommerce, that SEO data needs to be mapped to Shopify's SEO fields. Watch for duplicate content issues that can emerge when URL structures change.
  5. Image verification: Count images per product. Check that gallery order is correct and alt text is populated.
  6. Inventory levels: Compare stock quantities. Migration tools sometimes reset inventory to zero or skip tracking settings.

The good news? Well-planned migrations achieve 40% organic traffic increases by month three, according to Zelst research. That upside is real, but only if you catch data problems before going live.

Build a spreadsheet with a sample of 50 products (covering simple, variable, and any custom product types). Compare every field manually. Yes, it's tedious. It's also the only way to catch the silent failures that automated tools miss.

Tools like Edify can help you fix issues in bulk once you've identified them.

What extra steps does migrating a large WooCommerce catalog (1,000+ products) require?

Large catalogs need batching, a staging environment, and a delta sync strategy. Trying to migrate 1,000+ products in a single transfer is asking for timeout errors, incomplete imports, and data corruption that's nearly impossible to debug after the fact.

Here's the playbook for large catalogs:

Use a staging store

Create a Shopify development store (free through a Shopify Partner account) and run your entire migration there first. This gives you a risk-free environment to catch problems. Never migrate directly to your live store on the first attempt.

Batch your transfers

Break your catalog into batches of 200-500 products. Migrate by category or product type so you can verify each batch before moving to the next. If a batch fails, you only need to redo that group, not the entire catalog.

Plan for delta sync

If your WooCommerce store stays live during migration (which it should), new orders and inventory changes will happen between your initial export and your Shopify launch. You need a plan to sync those changes. Some migration apps handle this automatically. For API-based migrations, you'll need to script a delta sync that captures changes made after your initial export timestamp.

Watch for rate limits

Shopify's Admin API has rate limits. If you're pushing thousands of products through the API, you'll hit throttling. Build retry logic into your scripts and expect the full migration to take hours, not minutes.

Research from Chain Store Age found that 90% of businesses that migrated platforms experienced sales and revenue improvements. Large catalog migrations are harder to execute, but the payoff is worth the extra planning.

The bottom line: the more products you have, the more you need to treat migration as a project, not a task. Budget at least two weeks for a 1,000+ product catalog, with time for auditing, fixing, and re-migrating problem batches.

Edify - Bulk Product Editor

Edify - Bulk Product Editor

Sponsored

Edit products, prices, and collections in bulk with preview, scheduling, and one-click undo.

Check it out

Related Articles