Skip to content
AREM Labs

EN TR

Shopify → WooCommerce

Turns your Shopify product export into a WooCommerce bulk-upload file, column for column.

1Drop your file here

Excel (.xlsx, .xls) or CSV

Tips

  • Shopify Admin › Products › Export, then pick "Plain CSV file"
  • Leave no barcode or stock-code cell empty; rows that miss one land in the warning list.
  • Category names are not mapped automatically — check the category column in the file you download.

How to use it

  1. 1 In Shopify Admin open the Products page and click Export.
  2. 2 Choose "All products" and "Plain CSV file", then download.
  3. 3 Drop the file on this page; the source format is detected and a mapping preview appears.
  4. 4 Check the warning list: missing barcodes, empty prices and duplicated variants are collected there.
  5. 5 Download the CSV file for WooCommerce.
  6. 6 Open WooCommerce › Products › Import and pick the CSV.
  7. 7 Columns map themselves because the tool writes standard WooCommerce headers.
  8. 8 Tick "Update existing products" when you want rows matched by SKU.

What you should know

Reshaping a Shopify product list into the WooCommerce format by hand costs hours: column names differ, prices switch between tax-inclusive and tax-exclusive, variants are grouped by a different rule, and a barcode’s leading zero disappears the moment a spreadsheet opens the file. This converter reads the file you exported from Shopify, maps every field onto the WooCommerce template, and reports the rows you should check before uploading.

The file never leaves your computer: reading, mapping and writing the new file all happen in the browser tab, with no account and no upload. The result downloads as UTF-8 CSV and can be handed straight to the WooCommerce import screen.

What to know about a Shopify export: Every variant is its own row; Handle ties the rows of one product together. Extra images arrive on rows with an empty title through Image Src; the tool attaches them to the right product. Body (HTML) carries markup, which is stripped when the target expects plain text.

Worked example: a Shopify file turned into a WooCommerce file

Our Shopify sample file (shopify.csv) holds 4 rows and 36 columns. The tool recognized 17 of those columns on its own. The other 19 are not product fields the tool carries, so they were left out: "Type", "Published", "Option1 Name", "Option2 Name", "Option3 Name", "Variant Inventory Tracker", "Variant Inventory Policy", "Variant Fulfillment Service" …. The rows were grouped into 2 products with 3 variants, and 4 image URLs were carried over. The WooCommerce file that downloads has 4 rows and 34 columns; 28 of those columns arrive filled and the rest stay empty because the sample has no data for them.

First row of the output (under WooCommerce column names)

WooCommerce columnValue written
Type variable
SKU linen-shirt
Name Linen Shirt
Published 1
Is featured? 0
Visibility in catalog visible
Description <p>Summer linen, <b>relaxed</b> fit</p>
Tax status taxable
In stock? 1
Categories Shirts
Tags summer, linen
Images https://cdn.example.com/img/linen-1.jpg, https://cdn.example.com/im…
Brands Nuve
Attribute 1 name Color

Notes the tool gave for this file

  • In your WooCommerce admin, upload it from Products > Import; the columns map automatically.
  • Variations are linked through the parent SKU in the "Parent" column; where the parent SKU was empty it was generated from the model code or the product name.
  • WooCommerce downloads the image URLs during import, so make sure they are publicly reachable.

Field mapping: Shopify → WooCommerce

Which target column each source column is written to. You can fix unmatched fields in the preview before downloading.

Field Source column Target column
Product name Title Name
Model / group code Handle Parent
SKU Variant SKU SKU
Barcode Variant Barcode GTIN, UPC, EAN, or ISBN
Sale price Variant Price Sale price
List / compare-at price Variant Compare At Price Regular price
Stock Variant Inventory Qty Stock
Volumetric weight (desi) — Weight (kg) Missing in the source; left empty
Weight (grams) Variant Grams Weight (kg)
Image columns Image Src + Image Position Images
Option 1 Option1 Name / Value Attribute 1 name / value(s)
Option 2 Option2 Name / Value Attribute 2 name / value(s)
Description Body (HTML) Description
Brand Vendor Brands
Category Type Categories

Frequently asked questions

Which fields does WooCommerce require?

Name, Type (simple/variable/variation), SKU, Regular price, Published. When one of them is empty the row lands in the warning list; fill it in the source file before uploading.

Are category and brand mapped automatically?

The brand is carried over untouched. Category names never match one to one across platforms, so you still have to fit them into the WooCommerce category tree yourself; the tool writes the source category into the "Categories" column.

Are prices carried over with or without tax?

The price in the Shopify file is carried over exactly as it is; WooCommerce then reads it as tax-inclusive or tax-exclusive according to your store tax settings, so check them.

Are images transferred too?

Image URLs are carried over and WooCommerce downloads the files from those addresses during import, so every URL has to stay publicly reachable.

How many products can I convert at once?

There is no cap. The conversion runs on a background thread, so the page stays responsive even with files of 10,000 to 20,000 rows; the time it takes depends on your machine.

Share

Guides

Articles and format references related to this tool.

Guides →

Related tools

An independent tool. Not affiliated with Shopify or WooCommerce, and not an official product of either.