# Import products from a spreadsheet

> Go to Products and click Import. Upload a CSV, Excel or JSON file, match its columns to product fields, choose whether to create new products, update existing ones or both, and click Start import. Already selling on Shopify, WooCommerce, Squarespace or Big Cartel? Paste your shop's address on the same page instead.

Help Centre / Products - Updated 29 October 2026

Instead of adding products one at a time, you can bring a whole catalogue in from a spreadsheet: names, descriptions, prices, stock, variants, categories and pictures. The same import also updates products you already have, so it is a quick way to change prices or stock across many products at once.

## Before you begin

- Your file can be a CSV, an Excel file (`.xlsx`, `.xls`) or a JSON file, up to 10MB. Save CSV files as UTF-8.
- To see the expected layout, go to **Products**, click **Import**, then click **Download CSV template** at the top right. It is a short example with a product that has two sizes and a product with none.
- To bulk-edit products you already have, start from an export: see [Export your products](https://v3.shoprocket.io/help/export-products.md). The export uses the same columns, so it imports back with no changes to the mapping.
- To import, your staff account needs permission to create products.

## How the file is laid out

- The first row must be column headers.
- Each product is one row. Extra variants go on the rows below it: leave **Product Name** blank on those rows, or set **Row Type** to `VARIANT`.
- Prices are decimals in your store's currency, like `16.00`. Currency symbols are ignored.
- Separate several categories or picture addresses in one cell with semicolons, for example `Coffee;Beans`. Categories that don't exist yet are created.
- Pictures are given as web addresses (**Image URLs**) and are copied in the background after the import.

For example, a Portland coffee shop's file might look like this:

```
Row Type,Product Name,Description,SKU,Price,Stock,Option 1 Name,Option 1 Value,Categories,Image URLs
PRODUCT,Portland Morning Blend,A bright medium roast,PMB-12,16.00,40,Size,12 oz,Coffee;Beans,https://example.com/morning-blend.jpg
VARIANT,,,PMB-2LB,38.00,15,Size,2 lb,,
PRODUCT,Stoneware Mug,Hand-glazed in Oregon,MUG-01,18.00,25,,,Accessories,
```

Exports from WooCommerce, Wix, BigCommerce and Ecwid's catalogue export import as they are, variants included.

## Step 1: Upload your file

1. Go to **Products** and click **Import**.
2. Click **Choose a CSV, Excel or JSON file** and pick your file.
3. Click **Upload & continue**.

![The Import products page with the file upload box, the Download CSV template button, the CSV format & tips panel and the shop address card below](https://v3.shoprocket.io/img/help/import-products/upload-step.webp)

## Step 2: Match your columns

The **Map CSV columns** list shows each column in your file, with a few example values from it. Beside each one, use **Map to** to pick the product field it fills, or **(Skip this column)** to leave it out. Columns Shoprocket recognises are matched for you and marked **Auto-detected**; check them anyway.

The fields you can map:

- **Product**: **Product name** (required), **Slug / handle**, **Summary**, **Description**, **Status** (`active`, `draft` or `archived`), **Brand / vendor**, **Tax class**, **SEO title**, **SEO description**, **Shipping mode**, **Shipping amount**.
- **Variant**: **SKU**, **Parent product**, **Price**, **Compare-at price**, **Cost price**, **Stock quantity**, **Barcode**, and one weight column: **Weight (grams)**, **Weight (kg)**, **Weight (lb)** or **Weight (oz)**.
- **Options**: **Option 1 name** and **Option 1 value**, up to option 3, or **Options (all in one cell)**.
- **Relationships**: **Categories**, **Image URLs**.
- **Control**: **Row type**.

You must map **Product name**, and also **Price** or **SKU**. If you map an option's name, map its value too.

If you picked the wrong file, click **Change file**.

## Step 3: Choose how the import works

Under **Import settings**, pick an **Import mode**:

- **Import all (create + update)**: new products are created, and products you already have are updated.
- **Only create new**: rows that match an existing product are skipped, and nothing you already have changes.
- **Only update existing**: only products that match are updated, and rows without a match are skipped.

When updating, **Match existing by** decides how a row finds its product: **SKU** (the default) or **Product name**. When a product is updated, empty cells keep the existing value, so you can import a file with just a SKU and a price column to change prices.

The **How your import will work** box sums up your choice. Then click **Start import**.

![The Map CSV columns step, with columns matched to product fields and the Import settings panel showing Import mode and Match existing by](https://v3.shoprocket.io/img/help/import-products/map-columns.webp)

## Step 4: Check the result

The page shows the import's progress and then how many products were **Created**, **Updated** and **Failed**. While it runs, **Cancel import** stops it.

- If any rows failed, or were imported with a change, click **Download error report** (or **Download report**). Use it to fix those rows in your file and import it again.
- If your plan has a product limit and the file goes over it, the extra products are counted as **Over plan limit** and are not imported. Upgrade, then import again to bring in the rest.
- Imported products start as **Draft** unless your file has a **Status** column, so shoppers don't see them yet. Check them, then set them to **Active**.

Click **View products** to go to your product list, or **Import another file**.

## Importing from your shop's address

If your shop is on Shopify, WooCommerce, Squarespace or Big Cartel, you can skip the spreadsheet. On the same **Import products** page, under **Moving from Shopify, WooCommerce, Squarespace or Big Cartel?**:

1. Type your shop's address in **Your shop's address**, for example `portlandroasters.com`.
2. Click **Read my shop**. Shoprocket reads the products your shop shows publicly and tells you what it found, before anything is imported.
3. Click **Import them all**. If your plan can't hold every product found, the button reads **Import the first** and the number that fits, for example **Import the first 100**.

Products, variants, pictures and categories come across. Because only products that are live in your old shop are visible, they import as active. Addresses of products in your old shop redirect to their new pages. Running it again later updates the products rather than adding copies. If you'd rather use a file after all, click **Use a different address** or **Or upload a CSV instead**.

The same page also has a **Moving from Ecwid?** card for importing an Ecwid store.

## Related

- [Export your products](https://v3.shoprocket.io/help/export-products.md)
- [Add your first product](https://v3.shoprocket.io/help/add-your-first-product.md)
- [Product variants and options](https://v3.shoprocket.io/help/product-variants-and-options.md)
- [Categories](https://v3.shoprocket.io/help/categories.md)
- [Track stock and inventory](https://v3.shoprocket.io/help/track-stock-and-inventory.md)

[Open Import products in your dashboard](https://app-v3.shoprocket.io/go/products/import)

---

- HTML version: https://v3.shoprocket.io/help/import-products
- Language: English (en)
- Also in: [العربية](https://v3.shoprocket.io/ar/help/import-products.md), [Deutsch](https://v3.shoprocket.io/de/hilfe/produkte-aus-tabelle-importieren.md), [Ελληνικά](https://v3.shoprocket.io/el/help/import-products.md), [Español](https://v3.shoprocket.io/es/ayuda/importar-productos-desde-hoja-de-calculo.md), [Français](https://v3.shoprocket.io/fr/aide/importer-des-produits-depuis-un-tableur.md), [עברית](https://v3.shoprocket.io/he/help/import-products.md), [हिन्दी](https://v3.shoprocket.io/hi/help/import-products.md), [Bahasa Indonesia](https://v3.shoprocket.io/id/bantuan/impor-produk-dari-spreadsheet.md), [Italiano](https://v3.shoprocket.io/it/aiuto/importare-prodotti-da-un-foglio-di-calcolo.md), [日本語](https://v3.shoprocket.io/ja/help/import-products.md), [Lietuvių](https://v3.shoprocket.io/lt/pagalba/importuokite-prekes-is-skaiciuokles.md), [Norsk](https://v3.shoprocket.io/nb/hjelp/importer-produkter-fra-et-regneark.md), [Nederlands](https://v3.shoprocket.io/nl/hulp/producten-importeren-uit-spreadsheet.md), [Polski](https://v3.shoprocket.io/pl/pomoc/importowanie-produktow-z-arkusza.md), [Português](https://v3.shoprocket.io/pt/ajuda/importar-produtos-de-planilha.md), [Română](https://v3.shoprocket.io/ro/ajutor/importa-produse-dintr-un-tabel.md), [Русский](https://v3.shoprocket.io/ru/help/import-products.md), [ไทย](https://v3.shoprocket.io/th/help/import-products.md), [Türkçe](https://v3.shoprocket.io/tr/yardim/urunleri-elektronik-tablodan-ice-aktarin.md), [中文](https://v3.shoprocket.io/zh/help/import-products.md)
