WooCommerce Variation Import Not Working — Fix Variable Product CSV Errors
You imported a CSV file to update WooCommerce variations, but the variations are missing, prices are wrong, or the import didn't apply changes to variable products.
Variable product imports in WooCommerce are significantly more complex than simple product imports. Each variation has its own SKU, price, and stock level — and the CSV format requirements are strict.
This guide covers why WooCommerce variation imports fail, the most common errors, and how to fix them.
Why WooCommerce Variation Imports Fail
WooCommerce treats variable products and their variations as separate entities. When importing via CSV, both the parent product and each variation must be correctly formatted.
Common reasons variation imports fail:
- Variation SKUs don't match existing products in the store
- Parent product is missing or has incorrect type
- CSV format doesn't follow WooCommerce's variation structure
- Attribute values in CSV don't match product attributes
- Variation-specific fields like price and stock are in the wrong columns
- Import treats variations as simple products instead of variations
The most common mistake is formatting the CSV incorrectly for variable products, which causes WooCommerce to silently skip or misinterpret variation data.
Signs Your Variation Import Is Not Working
- Variations are missing after import
- Variation prices show as $0 or are blank
- Stock levels not updated for variations
- New simple products created instead of updating variations
- Attribute values don't appear on the product page
- Parent product type changed from "variable" to "simple"
- Only some variations updated, others unchanged
If you see any of these issues, your CSV format likely doesn't match WooCommerce's variation import requirements.
Common WooCommerce Variation Import Errors
Wrong CSV Structure
WooCommerce expects parent products and variations in specific rows with the correct "Type" column. Variations must reference their parent product's SKU or ID.
Mismatched Attributes
If your CSV contains attribute values that don't exist in the parent product's defined attributes, WooCommerce will silently skip the variation.
SKU Conflicts
Duplicate SKUs, missing SKUs, or SKUs that match simple products instead of variations cause imports to fail or create incorrect product types.
Missing Parent Reference
Each variation row must correctly reference its parent product. If this reference is missing or incorrect, the variation won't be associated with the right product.
Price Column Format
Variation prices must be in the regular_price column (not the parent product's price). Using the wrong column leaves variation prices empty.
Stock Management Not Enabled
If "Manage stock" is not enabled at the variation level, stock_quantity values in the CSV will be ignored even if they are formatted correctly.
How to Fix WooCommerce Variation Import Issues
Export existing variations first
Before importing, export your current variable products from WooCommerce. This gives you the exact CSV format WooCommerce expects, including parent-variation relationships and attribute structures.
Use correct product type column
Set the "Type" column to "variable" for parent products and "variation" for each variation row. This tells WooCommerce how to process each row.
Match attribute values exactly
Attribute values in the CSV must exactly match the attributes defined on the parent product. Check for trailing spaces, capitalization differences, and encoding issues.
Verify SKU mapping
Each variation must have a unique SKU. The parent product should have its own SKU (or none). Confirm that variation SKUs in the CSV match existing variation SKUs in WooCommerce.
Use variation-specific price columns
Set prices in the regular_price and sale_price columns for each variation row individually. Do not set prices on the parent product row.
If your import already applied incorrect data, see how to undo a WooCommerce import. For general import issues, read our guide on fixing WooCommerce CSV import errors.
How WooStockSync Handles Variation Imports
WooStockSync is built to handle variable products and their variations correctly, without the formatting issues that plague native WooCommerce imports.
Automatic Variation Detection
WooStockSync automatically identifies variations by SKU and maps them to the correct parent product. No special CSV formatting required.
Per-Variation Preview
See price and stock changes for each individual variation before applying updates. Variations are shown separately from their parent product.
Variation-Level Rollback
Rollback changes for a single variation without affecting other variations of the same product, or rollback the entire batch.
Risk Detection
Flags suspicious changes like inconsistent pricing across variations, zero prices, and extreme stock changes before they are applied.
Frequently Asked Questions
Why are my WooCommerce variations not importing?
The most common cause is incorrect CSV formatting. Variations must have the correct "Type" column set to "variation", a valid parent SKU reference, and attribute values that exactly match the parent product's defined attributes.
Why are variation prices showing as $0 after import?
Variation prices must be set in the regular_price column of each variation row, not the parent product row. Empty price cells or prices set on the parent row will result in $0 variation prices. See our guide on fixing wrong prices after import.
Can I update only variation stock without changing prices?
Yes. You can create a CSV with only the SKU and stock_quantity columns. WooStockSync will update only the stock field for each variation without modifying prices or other product data.
How do I import variable products with many variations?
For products with many variations (50+), native WooCommerce imports often timeout. Use a tool that processes imports through the REST API in batches, which avoids server timeout limits and handles large variation sets reliably.
Update WooCommerce variations without CSV formatting issues
Simple CSV format. Automatic variation detection. Per-variation preview and rollback.
Start Free Trial90-day free trial. No credit card required.