MANUAL VARIATION SETUP · UPDATED OCTOBER 2, 2026

How to rebuild Etsy variations in WooCommerce

A successful CSV import is not a complete variation migration. Keep products as drafts while you recover the missing details and recreate the options customers can buy.

Can Etsy CSV migrate all variations automatically? Not reliably. WooCommerce’s Etsy import documentation says Etsy does not export variant prices or quantities. CraftPorter does not invent that missing inventory or generate variable-product rows.

What the listings export leaves out

Etsy’s export documentation lists title, description, price, currency, quantity, tags, materials, image URLs, and any listing SKUs. Those listing-level fields are not a complete record of each sellable option combination.

Even if your file includes variation names or values, do not assume it contains the correct SKU, stock, price, or photo for every combination. A description saying “small and large” is not an inventory table.

No warning does not mean no variations

CraftPorter flags recognizable variation data when present. An export can omit the evidence needed to detect it. Check your actual Etsy listings before publishing any imported product.

Record the missing details first

Open each affected listing in your own Etsy account and keep a local worksheet. You do not need to send your catalog or credentials to CraftPorter.

  • Option names and values, such as Size and Color.
  • Only the combinations you actually offer.
  • The price, SKU, and available quantity for each combination.
  • Which photo belongs to each option, plus any shipping differences.
  • Whether inventory is a shared pool or tracked separately.

For example, knowing that a shirt comes in Small/Large and Blue/Red does not prove you sell all four combinations. Do not manufacture a Large Red variation if that option is unavailable.

Rebuild one draft product first

Back up the destination store or use staging. Follow the draft-first import guide, then edit the imported product rather than creating a duplicate.

  1. Change the product type

    Open its Product data panel and select Variable product. Keep the product in draft status.

  2. Add the option attributes

    In Attributes, add the real options and mark them for use in variations. In the product editor, separate custom values with |, such as Small | Large, then save attributes.

  3. Create the valid combinations

    Use Variations → Add manually for a partial set. Generate variations only if every combination is genuinely offered.

  4. Fill in each variation

    Enter its verified price, SKU, stock settings, and photo. Save changes. A variation without a price will not appear for purchase.

Editor workflow: WooCommerce variable-product documentation. Button labels may differ with your installed version or product editor.

CraftPorter may have imported Materials as a descriptive attribute. That is not automatically an option customers should select. Keep it descriptive unless your actual product varies by material.

Can you rebuild variations with another CSV?

Yes, once you supply the missing source information yourself. Export one correctly rebuilt WooCommerce product as a template. Preserve its identifiers and attribute structure; do not simply relabel CraftPorter’s simple rows.

The core CSV documentation distinguishes a variable parent from variation rows. Each variation needs its own identifying SKU, a Parent reference, and its option values. CSV attribute lists use commas, unlike the editor’s pipe-separated values.

Check your WooCommerce version

WooCommerce 11.1 supports changing a simple product to a variable product and adding its variations in one update import when the parent row precedes its children and the documented requirements are met. Earlier versions, or a different row order, require the documented two-import workflow. Test one product before bulk editing.

Check before publishing

Where CraftPorter still helps

Use CraftPorter for the listing-level preparation: supported simple-product fields, properly escaped descriptions, and combined image URLs. Rebuild variations separately. The converter stays free during validation and your CSV stays on your device.

Convert listing-level dataBrowser-only · no account · variations remain manual

If you have completed a migration, tell us whether it helped. Counts and a short note are enough; please do not send your catalog or store password.