Importing or exporting WooCommerce variable products can feel rather complicated without the right tools. Unlike simple products, each parent variable product carries one or more child variations, and each variation carries its own SKU, price, stock, and attribute values.
Import and export tools that treat variable products as simple products compromise data integrity by flattening the product data and breaking the parent-variation relationship.
WP All Import and WP All Export are dedicated WooCommerce import and export plugins that let you map variable product data from diverse sources, including CSV, XML, and Google Sheets.
This article walks through how to quickly and easily import and export WooCommerce variable products using both plugins. It also includes links to handle even more advanced variable product import and export needs without breaking a sweat.
📑 Table of Contents
- What Makes WooCommerce Variable Products Different to Import and Export
- How to Import WooCommerce Variable Products: The Basic Loop
- Advanced WooCommerce Variable Product Import Scenarios
- The Basic WooCommerce Variable Product Export Loop
- Advanced WooCommerce Variable Product Export Scenarios
- Final Thoughts
What Makes WooCommerce Variable Products Different to Import and Export
WooCommerce variable products consist of two linked record types, which make the import and export processes very different from those of simple products.
There is a parent product that holds base product data such as the title, description, categories, and attributes used for variations. The child record consists of one or more variations of the parent product with its own unique combination of global or custom attribute values, SKU, pricing, and stock level.
A good WooCommerce variable product import and export tool must be able to map parent and variation fields separately, with the correct combination of attribute values. Anything other than that will produce missing variations, duplicates, or unlinked variations, which mess up product listings in a WooCommerce store.
The next sections explore how WP All Import and WP All Export handle WooCommerce variable product imports and exports seamlessly.
Importing WooCommerce Variable Products
How to Import WooCommerce Variable Products: The Basic Loop
WP All Import makes it easy to import WooCommerce variable products in four straightforward steps. With Automatic Setup enabled, the plugin detects variation relationships and maps incoming data automatically, saving you time and effort that would have otherwise been spent adding them manually.
1. Preparing Your WooCommerce Variable Product Import File
To ensure WP All Import can read the product data file and create variable products from its content smoothly, the first step is to ensure that the file is formatted correctly.
The import file for variable products needs to be able to define three things clearly: the rows that are for parent products versus those that are for variations, how each variation links back to its parent, and the attributes that define the variations.
Below is a quick reference of the basic file structure required for variable products, whether in CSV, Google Sheets or XML formats:
- Parent rows: These store only the product title, SKU, category, and attribute information. It does not include the product's price or stock details.
- Variation rows: These carry their own SKU, price, stock, and attribute values. Each variation is contained within one row (CSV or Google Sheets) or record (XML) each.
- Linking methods: Variations can be linked to their parent products in multiple ways. The most common methods are via parent SKU/ID, Group ID, product title match (with or without parent rows), XML child elements, and Link All Variations, which generates every variation of the product from data contained in a single row with pipe-separated attribute values. WP All Import offers users full flexibility for variable product imports by supporting any of these structures.
- Attributes: This includes global (e.g., color and size) and custom (product-only) attributes, both mapped with automatic term matching.
- Pricing, stock and images: These are all set at the variation level and are independent of the parent.
For this example, the file contains one row per parent product and one row per variation. Each parent row has a unique SKU, and each variation row references its parent via a Parent column with the same SKU.

2. Starting the WooCommerce Variable Product Import
To start a new import, navigate to All Import › New Import from the WordPress admin menu and click the Set up automatically banner.

Upload the import file via local upload, URL, existing file, or FTP/SFTP, then choose WooCommerce and select Products.

You can expand the optional Add Setup Instructions field to pass specific guidance, such as non-standard delimiters or custom category separators. Click Start Automatic Setup to allow WP All Import to analyze the data, detect product types, and configure the parent-child variation structure automatically.

A summary card displays the detected import type, total records, the number of fields mapped, and an overall confidence score before the import runs.

3. Mapping Attributes and Variations
Automatic Setup identifies variation attributes and selects the appropriate linking method automatically. If you want to review or fine-tune these mappings, click Review Import Configuration to open the pre-filled template editor.

The Variations tab is where the parent-child link is defined. Since our example variable product file uses SKU-based linking, that option is selected.

The parent column maps to the Parent SKU element for the variation field, while the SKU column maps to the SKU element for parent field. The SKU, stock, and price map at the variation level, which ensures that each variation keeps its own value independent of its parent record.
4. Running the WooCommerce Product Import
Before committing data, click Preview in the header to inspect both populated backend fields in the WP Admin View and live variation dropdowns in the Frontend View.
After mapping all product data elements, configure the import settings, confirm them, and run the import.

Once the import is complete, navigate to Products → All Products, and you should see the imported variable products. Click View to see the product listing with its variations.

No other steps are required after this. Customers can now shop for variations of your products with ease.
Advanced WooCommerce Variable Product Import Scenarios
The Basic Import loop covered above applies to a standard, straightforward import. However, in reality, many WooCommerce catalogs don’t stay so simple for long. There are instances where products need to be migrated from other platforms, attributes need to be matched to existing ones instead of created, and existing variable products need to be updated without breaking their variations. WP All Import handles it all seamlessly.
Importing WooCommerce Variable Products with Multiple Images per Variation
Sometimes, rather than inheriting a single photo from a parent product, variations have their own set of images that need to be correctly assigned during an import. How Do I Import Multiple Images for a WooCommerce Variable Product? describes how to do this.
Bulk Uploading Large Batches of WooCommerce Variable Products
Whether you are looking to upload only a few dozen variable products or hundreds to thousands at once, WP All Import will get it done without hassle. See How Do I Bulk Upload Variable Products in WooCommerce? for more.
Updating Variation Price and Stock Without Re-Processing the Parent
Variation data can be exported to a spreadsheet, edited, and reimported to update pricing and stock data for all products in one go. How Do I Bulk Edit Product Variations in WooCommerce? provides more insights.
Migrating Variable Products from Shopify
Shopify's export format doesn't natively match WooCommerce's variation structure, but WP All Import handles the conversion without requiring the file to be restructured first. How to Easily Import Products From Shopify to WooCommerce
Scheduling Variable Product Imports
For scenarios where you need to run recurring imports of variable products from an external source to your WooCommerce store, you can take advantage of WP All Import’s scheduling service. See How Do I Automatically Import Products into WooCommerce? to learn more.
Exporting WooCommerce Variable Products
The Basic WooCommerce Variable Product Export Loop
The process for exporting WooCommerce variable products with WP All Import is similar to the import process. It only takes three straightforward steps to export them in your preferred file format within minutes.
1. Starting the WooCommerce Variable Product Export
To start a new export, go to All Export → New Export from the WordPress admin dashboard and select WooCommerce Products as the post type to export. Under Add Filtering Options, filter to Product Type equals Variable to exclude simple products from the export.

2. Choosing What to Export: Parent vs. Variation Fields
On the Drag and Drop Screen, choose which fields to include for the parent products and for its variations in the export file. WP All Import also includes the option to export parent and variation data together, variations only, or parent products only, depending on the export file's purpose.

3. Running the Variable Product Export
Choose an export format; options include CSV, Excel, Google Sheets, and XML. Then choose a name for the export file and run the export. The exported variable product file will have all variations correctly linked to their parent, ready to be edited and re-imported as an update.
Advanced WooCommerce Variable Product Export Scenarios
The example above runs through how to execute a standard WooCommerce variable product export. But WP All Export can do so much more, including the more advanced export scenarios outlined below:
Migrating Variable Products to Another WooCommerce Site
To migrate variable products to another WooCommerce site, you can run a full product export that includes all variations and their parent-variation structure and import them in a bundled export file into the new WooCommerce installation. See How to Migrate WooCommerce Products to a Different Website for more.
Bulk-Editing Variations via Export and Reimport
Export variations, edit price or stock in a spreadsheet, and reimport as an update. How Do I Bulk Edit Product Variations in WooCommerce? provides all the details.
Scheduling Recurring Exports
WP All Export's scheduling services enable exports to run on a recurring schedule, keeping an external feed or system in sync with WooCommerce inventory. Check out How to Schedule Recurring Imports for details.
What Is the Best Way to Import and Export WooCommerce Variable Products?
Variable products can complicate WooCommerce product imports and exports because they are two record types, unlike their simple product counterparts.
WP All Import is the best plugin to import WooCommerce variable products because Automatic Setup eliminates manual parent-child mapping on upload. The plugin analyzes incoming rows, identifies parent SKUs versus child variations, and configures variation attributes automatically without requiring you to build custom templates by hand.
However, with WP All Import, mapping that structure correctly is an easy 5-minute task rather than a recurring source of errors. The sub-articles linked throughout this guide cover what happens as your catalog grows more complex and you need to perform tasks such as platform migrations, bulk updates, scheduled syncs, and variation-level filtering. Both ends of that range run through the same interface.
Import and Export WooCommerce Variable Products — Frequently Asked Questions
To import variable products: navigate to All Import › New Import, click the Set up automatically banner, upload your file, and choose WooCommerce Products. WP All Import detects parent-child records, links variations via SKU or Group ID, and maps variation attributes automatically.
To export: go to All Export › New Export, select WooCommerce Products, filter to Product Type equals Variable, and choose your export fields and format.
Run either process to complete the import or export.
You can export WooCommerce products with both images and variations using WP All Export. Create a new WooCommerce product export, then on the Drag & Drop screen, include the image field(s) from Available Data alongside your variation-level fields (SKU, price, stock, attributes). Each variation's own image exports independently of the parent product's featured image, so variation-specific photos are included in the output rather than defaulting to a single shared image.
1. Go to All Import › New Import and click the Set up automatically banner.
2. Upload your file, select WooCommerce, then choose Products.
3. Click Start Automatic Setup to allow the wizard to detect variation attributes and link parent-child rows automatically.
4. Click Review Import Configuration if you want to inspect or fine-tune mapped attributes in the template editor.
5. Click Preview to verify live variation dropdowns and galleries on the frontend, then click Run Import.

