Product Variant Generator

Turn option lists like size and colour into an import-ready CSV of every variant, with SKUs, for Shopify or WooCommerce.

Describe the result you need. AI will set up the tool and ask for any missing details.

Configure with AI

Enter to submit · Shift + Enter for a new line

Sent to AI. Leave out passwords and private customer data.

Your details

Format
Product

Optional. Leave 0 for none.

Options

Import-ready CSV

merino-crew-sweater-shopify.csv
Title,URL handle,Option1 name,Option1 value,Option2 name,Option2 value,Option3 name,Option3 value,SKU,Price,Compare-at price,Inventory quantity,Status
Merino Crew Sweater,merino-crew-sweater,Size,XS,Color,Navy,,,MCS-XS-NAV,89.00,,10,draft
,merino-crew-sweater,,XS,,Oatmeal,,,MCS-XS-OAT,89.00,,10,
,merino-crew-sweater,,XS,,Forest Green,,,MCS-XS-FG,89.00,,10,
,merino-crew-sweater,,S,,Navy,,,MCS-S-NAV,89.00,,10,
,merino-crew-sweater,,S,,Oatmeal,,,MCS-S-OAT,89.00,,10,
,merino-crew-sweater,,S,,Forest Green,,,MCS-S-FG,89.00,,10,
,merino-crew-sweater,,M,,Navy,,,MCS-M-NAV,89.00,,10,
,merino-crew-sweater,,M,,Oatmeal,,,MCS-M-OAT,89.00,,10,
,merino-crew-sweater,,M,,Forest Green,,,MCS-M-FG,89.00,,10,
,merino-crew-sweater,,L,,Navy,,,MCS-L-NAV,89.00,,10,
,merino-crew-sweater,,L,,Oatmeal,,,MCS-L-OAT,89.00,,10,
,merino-crew-sweater,,L,,Forest Green,,,MCS-L-FG,89.00,,10,
,merino-crew-sweater,,XL,,Navy,,,MCS-XL-NAV,89.00,,10,
,merino-crew-sweater,,XL,,Oatmeal,,,MCS-XL-OAT,89.00,,10,
,merino-crew-sweater,,XL,,Forest Green,,,MCS-XL-FG,89.00,,10,

15 variants. Import at Products → Import. The product comes in as a draft so you can add images and a description before publishing. Inventory quantity only applies to single-location stores.

How the variants are built

Every value of each option is combined with every value of the others. Five sizes and three colours make 15 variants; add two materials and it's 30. The generator builds each combination, gives it a SKU and lays it out in the exact columns your platform's importer expects.

Variants = values in option 1 × values in option 2 × values in option 3

The Shopify and WooCommerce formats

ShopifyWooCommerce
StructureOne row per variant, sharing a URL handleA variable parent row, then one variation row each
OptionsUp to 3 (Option1–3 name/value)Attribute 1, 2, 3 name and value(s)
LinkingSame URL handle on every rowEach variation's Parent = the parent's SKU
Price columnsPrice, Compare-at priceRegular price, Sale price
LimitUp to 2,048 variants per productNo hard limit; performance drops past a few hundred

The Shopify file uses Shopify's current column names (such as URL handle and Compare-at price). The product imports as a draft so you can add images and a description before it goes live.

Importing the file

  1. 01

    Download the CSV

    Use Download above the output. Open it in a spreadsheet if you want to set different prices per variant.

  2. 02

    Shopify

    Go to Products → Import, upload the file and check the preview before importing.

  3. 03

    WooCommerce

    Go to Products → All Products → Import, upload the file, and let the column mapper match the fields. Keep the parent row above its variations.

Questions people ask

Can each variant have a different price?

Yes. The file gives every variant the same starting price; edit individual rows in a spreadsheet before importing.

How are the SKUs built?

Your prefix, then a short code for each option value: MCS-NAV-M for a navy medium. Choose Full values if two values start with the same letters.

Will importing overwrite an existing product?

In Shopify, a matching URL handle updates that product. Use a new title, or change the handle, if you're creating a new product.

What about variant images?

Add image URLs in the CSV's variant image column (Shopify) or upload them per variation after import (WooCommerce).

Want this builtinto your store?

I'm Emmanuel, a Shopify and WooCommerce developer. If this tool pointed at something you'd rather have fixed for you (a faster store, cleaner product data, a migration, a custom feature), send me a note.

Emmanuel Asika

Emmanuel Asika

Shopify & WooCommerce developer, Dublin

I build and fix online stores: new builds, migrations, speed, SEO and the custom bits apps can't do.

hello@emmanuelasika.com