Free catalog resource
Shopify product CSV templates you can inspect before using
Download a native Shopify CSV, an EditEngine/Matrixify-compatible CSV, or one Excel workbook containing both. The examples include multiple variants, prices, compare-at prices, images, product metafields, and variant metafields where the format supports them.
Every EditEngine example row is set to IGNORE. Delete the examples, add your data, and deliberately choose NEW or MERGE before import.

EditEngine / Matrixify-compatible CSV
Product and variant commands, prices, product metafields, variant metafields, and image examples.
Download CSV ↓Shopify native product CSV
Current Shopify-style headers for products, variants, pricing, inventory settings, and product metafields.
Download CSV ↓Combined Excel workbook
Both templates plus a column guide, command reference, safety checklist, and source links.
Download XLSX ↓Choose the format
Native Shopify CSV
Use this when you plan to import directly from Shopify admin. The sample follows Shopify’s current product terminology and includes a product-metafield column. Shopify supports product metafields in the product CSV, but not variant metafields; use the variant bulk editor or an app for those.
For updates, Shopify requires URL handle and Title. Variant columns have dependencies: excluding option name or value while changing variant data can delete existing variants and create a default one.
Choose the format
EditEngine / Matrixify-compatible
Use this for EditEngine Advanced import or an existing Matrixify-style workflow. Command columns express whether a row should be ignored, created, merged, replaced, or deleted. Dynamic headers support product and variant metafields with their namespace, key, and type visible in the column name.
The workbook’s column guide marks matching keys, product-level fields, variant-level fields, metafield syntax, and dangerous commands. Keep Handle and Variant SKU unchanged when updating existing variants.
What the EditEngine template demonstrates
| Example column | Scope | What to preserve |
|---|---|---|
| Handle | Product matching key | Do not change it during an update unless changing the URL is intentional. |
| Variant SKU | Variant matching/context key | Preserve exact text and leading zeros. |
| Variant Price | Variant | Use plain decimal numbers without currency symbols. |
| Metafield: custom.material [single_line_text_field] | Product metafield | Replace namespace, key, and type with a definition that exists in your store. |
| Variant Metafield: custom.color [color] | Variant metafield | Use the exact dynamic header and a value valid for the metafield type. |
| Command / Variant Command | Import behavior | Leave examples on IGNORE; use MERGE for targeted updates and test NEW/REPLACE/DELETE carefully. |
Five import mistakes worth preventing
- 1
Editing matching keys
Changing Handle or SKU can retarget a row or create data instead of updating it.
- 2
Dropping dependent columns
Variant data can depend on option name and value columns in Shopify’s native format.
- 3
Sorting a native export
Shopify warns that sorting can detach variants and image URLs from the product row.
- 4
Using the wrong encoding
Shopify requires UTF-8 CSV; other encodings can introduce broken characters.
- 5
Skipping the test batch
Import two or three representative rows, verify them in admin and storefront, then scale.
Export your own catalog before changing it
A template teaches the format. A fresh EditEngine export gives you the exact matching keys, metafield headers, and current values needed for a safe update.
