Export and import products with CSV

Features · Updated Nov 12, 2026

Edit your products and variants in a spreadsheet, then import the changes back into your store. Edify checks the file first, runs the import as a task in History, and lets you revert it like any other edit.

Before you start

  • CSV import and export are on the Pro plan. See Is Edify free?
  • Start from a file you exported from Edify. The import needs its Product ID column, and its Variant ID column for variant prices, SKUs, barcodes, tax, or stock.

Export your products

  1. In Edify, open Import & export.
  2. Under Products to export, choose All products, or choose Products matching filters and add filters the same way as in Bulk Edit. See Choose which products to edit with filters.
  3. Click Export CSV. Edify exports in the background and shows how many products it has exported so far.
  4. The file downloads when it's ready.

An export holds up to 10,000 products. If more match, a banner says only the first 10,000 were exported. Use filters to export the rest in groups.

What's in the file

The file has one row per variant. A product's fields repeat on each of its rows.

Column What it holds
Product ID, Variant ID Shopify's IDs for the product and variant. Don't change them
Title, Handle, Description, Vendor, Product type, Tags, Status, SEO title, SEO description Product fields
Variant The variant's name, so you can tell rows apart. The import ignores it
SKU, Barcode, Price, Compare at price, Cost per item, Charge tax Variant fields (Barcode holds all of the variant's barcodes, separated by commas)
Stock at (location name) One column per location. Blank where stock isn't tracked or stocked

Edit the file

  • Change the values you need, then save the file as CSV.
  • Delete a whole column to keep that field as it is for every product.
  • Products whose values already match your store are left alone.
  • Use the same product values on every row of a product. If two rows of one product disagree, for example two different titles, that product isn't imported.
  • Title, Handle, Price, and Charge tax can't be blank. A blank cell in another product or variant column clears that field. A blank stock cell leaves stock as it is.
  • In Barcode, separate multiple barcodes on a variant with commas, for example 036000291452, CASE-1. Edify keeps their order and any existing barcode types (such as UPC) on unchanged values. A blank Barcode cell clears all barcodes on that variant.
  • Status must be active, draft, or archived. Charge tax must be true or false (yes, no, 1, and 0 work too). Prices must be numbers of 0 or more, and stock must be a whole number of 0 or more.
  • A file can be up to 10 MB and 10,000 products. Split bigger files.

Import the file

  1. Open Import & export.
  2. Under Import products, click Choose a CSV file, or drop the file on the box.
  3. Edify checks the file. It shows how many products and rows it found, and a sample of the changes under Changes to make.
  4. If some rows can't be imported, a banner lists them with the row number and the reason, for example Row 5: Price must be a number of 0 or more. Fix them and upload the file again, or import the rest.
  5. Click Import. Edify opens History, where the import runs as a task.

Columns Edify doesn't read are listed under These columns aren't imported. They're ignored.

After the import

  • In History, the import shows CSV import in the Entity Type column. Its details say Edited with the values from an uploaded CSV file.
  • Open the task to see each product's old value and new value, or click Revert to undo the import. See View history and undo an edit.
  • Rows that couldn't be imported are listed as failed in the task's change log, with the reason. For example, a stock cell for a variant that doesn't track stock, or isn't stocked at that location, is skipped.
  • An import counts as one edit, like any other task.

Related

Still stuck? Message us from the chat in the app and we'll help.