How to Import WooCommerce Variations from a CSV File

Importing variable products into WooCommerce natively is notoriously prone to errors. When you migrate a store or update a large catalog, the default importer often fails to correctly link child variations to their parent products. If the attribute columns are misaligned or the parent-child IDs do not match the database exactly, the entire import process breaks.

Managing this via standard CSV files requires strict adherence to complex formatting rules, making it a frustrating task for store managers dealing with hundreds of variations.

In this technical guide, you will learn how to bypass these native limitations and safely bulk import WooCommerce variations using a dedicated spreadsheet interface.

We will use the WP Sheet Editor – WooCommerce Products Spreadsheet plugin. This tool allows you to visually map your data, correct formatting issues before importing, and ensure that all attributes and variations sync perfectly.

Video Tutorial

1. Open the WooCommerce Products Spreadsheet

Once you install and activate WP Sheet Editor, navigate to WP Sheet Editor > Edit products in your WordPress dashboard.

Instead of the standard WooCommerce interface, your entire catalog will load in a grid format. By default, the spreadsheet displays parent and simple products. To expose the underlying variation data, click the Display variations button on the top toolbar.

Displaying product variations inside the WP Sheet Editor spreadsheet interface

2. (Optional) Export Existing Variations to a CSV

If you are updating existing inventory rather than creating new products from scratch, the safest workflow is to export your current catalog, update the values in Excel or Google Sheets, and then import it back.

  1. Click on Display variations to ensure child rows are active.
  2. Click on the Export tool located on the top menu.
  3. Select the specific columns you need to update (e.g., Name, Regular Price, Stock).

Opening the export tool to generate a CSV file of variable products

This generates a clean CSV file with the correct formatting already applied, giving you a perfect template to work from.

Viewing the exported WooCommerce variations CSV file in a spreadsheet application

3. Critical Rules for Formatting a Variations CSV File

Before you run an import, you must ensure your CSV file is structured correctly. Failing to follow these technical rules will result in broken parent-child relationships.

Rule A: Use SKUs Instead of IDs for Site Migrations

If you are migrating variations from a staging site to a live site, do not rely on Product IDs. Every WordPress database assigns IDs differently. If you import a CSV using the old site’s IDs, WooCommerce will attach the variations to the wrong parent products.

By default, an exported CSV uses the parent’s database ID in the “Parent” column to link the variation.

CSV file showing the default product ID used in the parent column

The Solution: Replace the IDs in the Parent column with the parent product’s unique SKU. This guarantees that WP Sheet Editor will correctly identify and link the variations during the import, regardless of the target database structure.

CSV file correctly updated to use parent SKUs for reliable migration

Structural Requirements:

  • The parent product must have variable listed in the Type column.
  • Each individual variation must have variation listed in the Type column.
  • The Parent column for every variation row must contain the exact SKU of its parent product.

Rule B: Formatting Attribute Columns Correctly

WooCommerce requires a specific column sequence to register variation attributes properly. If you are creating a new CSV file manually, you must replicate this structure.

For every attribute assigned to a variation (e.g., Color), your CSV must contain these exact four columns:

  • Attribute 1 Name (e.g., Color)
  • Attribute 1 value(s) (e.g., Red)
  • Attribute 1 visible (1 for yes, 0 for no)
  • Attribute 1 global (1 if using global attributes, 0 for custom attributes)

Proper CSV formatting for WooCommerce attribute columns such as color

If you have a second attribute (e.g., Size), simply repeat the structure using the number 2 (Attribute 2 Name, Attribute 2 value(s), etc.).

Adding a second set of attribute columns for size in the CSV file

Workflow Tip: If manually formatting CSV attributes sounds too complex, it is often faster to generate the variations directly in bulk within the WP Sheet Editor interface instead of using a spreadsheet file.

4. How to Bulk Import the WooCommerce Variations

Once your CSV file is properly formatted, return to WordPress to execute the bulk import.

Open the Import tool located on the top toolbar of the WP Sheet Editor interface.

woocommerce-import-variable-products-variations

Configure the file source:

  • Source: Select CSV file from my computer.
  • Click Choose File and locate your updated spreadsheet.
  • Click Next.

Selecting the correct CSV file from your computer to import into WooCommerce

On the next screen, you can choose to Import all the columns or select specific columns to map manually.

Choosing to import all columns from the uploaded variations CSV file

Next, define the import logic. This step dictates how the plugin handles the incoming data:

  • Do you want to update or create items:
    • Select Create new items and update existing items for general catalog management.
    • Select Import all rows as new if you are migrating products to a completely new website.
  • Match the data in the CSV with the data in WordPress: To update existing products reliably, map the record_id field from the CSV to the ID field in WordPress (or use the SKU field if mapping by SKU).

Click Next.

Configuring the import logic to match record IDs with WordPress IDs

The plugin will generate a data preview. Review the rows to ensure the columns align correctly with their intended fields. If the structure is accurate, click The preview is fine, start import.

Reviewing the final data preview before executing the bulk import

The import process will execute in server-friendly batches, preventing timeouts. Once complete, your new attributes, prices, and variation configurations will be live in your WooCommerce store.

Managing variable products via CSV does not have to be a fragile process. By structuring your file correctly and utilizing a dedicated spreadsheet importer, you maintain total control over your inventory data.

Do you need help?

You can receive instant help in the live chat during business hours, or you can contact us and we will help you via email.