This operation being really useful, there are unfortunately not many places where you can easily see how to input every product information so that you can successfully upload. For this reason, I have created this tutorial that will run you through it step by step.

Import Products in Bulk Shopify


First of all, you will have to request the sample Shopify .csv file.  This file has all the necessary columns already named and make the process easier for you.


To fill out the product import template with your information, you will have to account for the data that you input as well as the way you are inputting it. If your products don't have any variants, filling the .csv will be a lot easier.  The logic goes like this: 
  1. If product don't have variants - 1 ligne per products
  2. If product have variants - Multiple lines per products
Before I explain how to organise the multiple lines for the different variants, let's run through each column making sure we understand the relevant information that goes into it.


Following we have detailed each column name explaining the information that is needed. Not all columns are required to be filled, this simply depends of the type of product you have and how you are selling them.

  • Handle

The handle is the unique name for each of your product. They are used in the CSV also when you have multiple lines for a same product (for variants or if you have many images for the same product). Because the variant is the exact same one, Shopify will know the information needs to be added under the same product. 

If the title of your product is "Test T-Shirt", the handle would usually be named as "test-t-shirt".  Handle can contain letters, dashes and numbers but no spaces.

  • Title

Will be the title of your product as displayed on the product page. It could be Test "T-Shirt"

  • Body (HTML)

The body will be the description of your product. You would usually simply add plain text there, although if you wish to place titles or subtitles before have the plain text, some tricks will need to be applied (really basic HTML coding)

Step 1

As you see the description under the "ADD TO CART" have different title formatting. To reproduce this, here is what you would need to add into the Body (HTML) case of this product line. 

<h1>This would be a title</h1>

<h3>This would be a subtitle</h3>

<p>I would then have the plain text here to describe the product...</p>

Basically the <h1> tag reference to the big title, <h3> to a subtitle, and <p> is the general text, known as paragraph.

  • Vendor

It would be the name of your store if the products are all yours. If you are re-selling products of different stores you would assign a specific name to it.

  • Type

The type of product. This is similar but different to collection. Here the type could be T-Shirt.

  • Tags

You can list the relevant tags in a comma-separated list like "blue, t-shirt, sales". Tags are often used to sort or apply filters to products. Usually good tags would be the variants of the products (like colour, size, etc..)

  • Collection

This is where you need to add the collection name where you want your product to appear.

  • Published

Defines wether your product will be published (visible) or not (hidden from the store). To make it visible, set the value to "TRUE" if you wish to hide it temporary, set the value to "FALSE".

  • Option 1 Name

If your products has variations this is where you will be able to add the name of the first option. If for example you have different sizes for your product you would then input "Size" there. 

  • Option 1 Value

This is the value of your first option. It could be "Small" or "Medium" or "Large" (for example).

Step 2

If you have many different sizes (ex: you are offering small, medium and large)

You will have to input your size as shown on the image and make sure you keep the same Handle on the first column so Shopify will know those size variations are to be associated to this same product.

  • Option 2 Name

If you have another option (variation) to your product (ex: colour), you will have to indicates it's name there.

  • Option 2 Value

Adding the option value could be (Red, Blue, Black, etc...). Note that you have to respect a typical formatting when doing this, see as follow.

Step 3

As you can see, the "OPTION 1 VALUE" have been multiplied. As we have added 3 different colours "Red, Blue, Black" we had to multiply each option 1 value by 3 so we can have a combination for each. 

- A small red t-shirt  

- A small blue t-shirt

- A small black t-shirt

- etc...

  • Option 3 Name

The option 3 could be the material of the product for example. 

  • Option 3 Value

The value could then be "Cotton" , "Linen", "Wool", etc... 

Keep in mind that if you add a material to be chosen, we will have to multiply the Option 1 Value as well as the Option 2 Value so each combination can be create ! See as below..

Step 4

  • Variant SKU

The SKU is a single code (made of letter and or numbers). This is the way for you to track inventory. If you are working with a supplier for your products, they should already have an SKU linked to the products in which case you will use that one. If you are manufacturing your own products, simply create a single SKU for each products.

  • Variant Grams

Simply add the weight of your product in grams WITHOUT adding any unit of measurement, ONLY the number !

  • Variant Inventory Tracker

If you track your inventory (meaning that your stock will decrease each time someone buys a product), you will need to add "shopify" as a value. 

If you don't want to track your inventory, simply leave blank.

  • Variant Inventory Qty

It is the number of product or variant that you have at that stage when importing your products.

  • Variant Inventory Policy

Here you will specify the way Shopify should react when you are out of this product. Meaning that if the stock has reached 0, should the customers still be able to purchase products or not. 

If you wish to block the customers from buying more when our of stock input is: "deny".

If you wish to allow people to keep buying even when out of stock, input will be: "continue".

  • Variant Fulfilment Service

The general value to input would be "manual". Meaning that you will manually mark the item as fulfilled when you have dispatched the order.

  • Variant Price

This is the price of the variant. WITHOUT any currency !

A correct value would be "9.90". 

A wrong value would be "$9.90"

  • Variant Compare At price

The compare at price of a variant or product is the price as "discounted". Once again don't place any currency there, only the value.

  • Variant Requires Shipping

If you ship your items to the customers the correct input will be "TRUE"

If you don't, simply input "FALSE"

  • Variant Taxable

If you want to add taxes at the checkout for this variant the input should be "TRUE"

If all the taxes are included into the product price, the input will be "FALSE".

  • Variant Barcode

If you are using Shopify POS and selling your product in brick and mortar stores as well, you will want to add the barcodes, ISBN or UPC of the variants/products so each time someone buys either online or in the store, the inventory will be tracked correctly.

  • Image src

To add the image source on the spreadsheet, you will have to upload it in your Shopify admin first. 

To upload a file, from the home page in the admin, select "Settings" (bottom left corner), then click on "Files". See as below the page where you should now be.

Step 5 


The Image Scr should look like this:


You will paste the entire link into the .CSV file. Each product will have their own image link(s). If you have more than 1 image for a product, you will have to add each image src links under different raws and make sure to duplicate the product handle on the first column so Shopify know those images are to be imported under the same product.  


This is how you should paste the link into your .csv Spreadsheet.

  • Image Alt Text

The text that describes an image. Useful if an image cannot be displayed or a screenreader passes over an image—the text replaces this element.

  • Gift Card

States whether the product is a Gift Card or not.

  • Google Shopping/MPN

The MPN, or Manufacturer Part Number, is a string of alphanumeric digits of various lengths (0-9, A-Z).

  • Google Shopping/Age group

What age group does this product target? Valid values are "Adult" or "Kids" only.

  • Google Shopping/Gender

What gender does this product target? Valid values are "Female", "Male", or "Unisex".

  • Google Shopping/Google Product Category

Google has a proprietary set of product categories. The full list is quite large to allow merchants to be specific towards their target audience. You can upload any value you want using the CSV file, however if your language format does not match Google's full product taxonomy, you might not be able to publish the products to Google.

  • SEO Title

The SEO Title is found on a product's details page under the Search engine listing preview header in the Page title field. The SEO Title has a character (letters & numbers) limit of 70.

  • SEO Description

The SEO Description is also found on a product's details page under the Search engine listing preview header in the Meta description field. The SEO Description has a character (letters & numbers) limit of 160.

  • Google Shopping/Adwords Grouping

This is used to group products in an arbitrary way. It can be used for Product Filters to limit a campaign to a group of products, or Product Targets to bid differently for a group of products. You can enter any "string" data (letters and numbers).

  • Google Shopping/Adwords Labels

Can be left blank.

  • Google Shopping/Condition

Can be left blank.

  • Google Shopping/Custom Product

Can be left blank.

  • Google Shopping/Custom Label 0

Can be left blank.

  • Google Shopping/Custom Label 1

Can be left blank.

  • Google Shopping/Custom Label 1

Can be left blank.

  • Google Shopping/Custom Label 2

Can be left blank.

  • Google Shopping/Custom Label 3

Can be left blank.

  • Google Shopping/Custom Label 4

Can be left blank.

  • Variant Image

After having uploaded you images (as explained above) you can copy and paste the link of your Variant image in this case of the CSV file. The Variant image is the specific image for a variant. I you have a white t-shirt and black t-shirt. You can copy paste the image link of the white t-shirt to the correct variant. This would only work if you have pictures for all of your variants. 

  • Variant Weight Unit

The values you can use here are "lb" or "kg"


If you are facing any trouble, please submit your enquiry to our experts team

To upload your CSV into Shopify, from the admin, go into the "products" tab. 

You will then: 

  1. Click on "Import" in the top right corner.
  2. Choose the file to be imported.
  3. If you want to erase the similar product that are already on the store but where the information isn't correct, you will have to select "Overwrite existing products that have the same handle".
  4. Otherwise leave it blank and click on "Upload File". 
  5. You should then see something like below.

Step 7

Click on "Start Import". 

Shopify will then start importing your products. Depending on the quantity you have, this could take up to an hour. 

Once done, you should receive an email from Shopify with a summary of the amount of products successfully imported and the ones that have been dismissed because there was some errors in the CSV file.