Etsy → Shopify · product import

Import Etsy Products to Shopify

Shopify imports products from a CSV — but not Etsy's CSV. The two files share almost no column names, so the job is reformatting: Etsy's export in, Shopify's import format out. Here's exactly how the fields map, and a free converter that does it in your browser.

How the fields map

Etsy's “Currently for Sale Listings” export and Shopify's product import template, column by column:

Etsy columnShopify columnNotes
TITLETitleAlso used as image alt text. Shopify caps titles at 255 characters — longer ones are truncated with a warning.
DESCRIPTIONBody (HTML)Line breaks preserved as HTML.
PRICEVariant PriceStarting value for every variant — Etsy's file has no per-variant prices, so you set the real ones in the bulk grid before download.
QUANTITYVariant Inventory QtySame: one listing-level number, editable per variant in the grid.
TAGSTagsComma-separated list passes straight through.
VARIATION 1–3Option1–3 Name / ValueEach combination of your variation values becomes its own Shopify variant row. Shopify allows at most 3 option types.
SKUVariant SKUCarried when Etsy's file provides it; editable per variant in the grid either way.
IMAGE1–IMAGE10Image SrcOne image row per photo; Shopify downloads each image from the URL during import.
MATERIALSShopify's import CSV has no materials field — this is the one Etsy column that has nowhere to go.
CURRENCY_CODEShopify's import has no currency column; prices land in your store currency. You'll see a warning if your file mixes currencies.

Shopify is strict about this file: column names must match its template exactly, or the column is silently ignored — no error, just missing data. That, plus one-row-per-variant layout and handle generation, is what the converter below automates.

Processed locally
never uploaded

Drop your EtsyListingsDownload.csv here or click to choose a file

Free for your first 25 listings · no signup

Privacy: the conversion happens locally in this page. Your CSV is never uploaded, stored, or seen by us.

Running the import in Shopify

  1. Products → Import

    In Shopify admin, open Products, click Import, and choose the converted file you downloaded above.

  2. Review the preview

    Shopify shows a preview before committing. Check a multi-variant product: each size/color combination should appear with its own price.

  3. Spot-check after import

    Images take a few minutes to fetch. Products arrive as active — if you'd rather review first, select all and bulk-set status to Draft.

Common questions

Why did some of my columns disappear on a raw import?

If you fed Etsy's CSV to Shopify directly, every column vanished — none of Etsy's headers match Shopify's template, and Shopify skips unknown columns without complaining. The file has to be reformatted first; that's the whole job.

Why are all my variant prices identical after importing?

Because Etsy's export lists one price per listing, not per variant — any converter that doesn't ask you for variant prices is just copying the flat price onto every row. The full story on that gap →. The bulk grid above exists so you can fix it in minutes before importing instead of retyping prices in Shopify admin after.

Is this free?

First 25 listings, completely — variants, images, grid and all, no signup. Larger shops: $29 one-time for the full export. Full tool page and FAQ →