Table of contents
You can one of these two ways to import products from your Shopify stores:
- Import a CSV file with your products to Shopify.
- Directly import products from your dashboard to Shopify using a SaaS tool.
If you are new to Shopify go through how Shopify works for Sellers read
otherwise let’s move forward with the next steps.
Importing Products to Shopify via CSV file
If you’ve decided to go the CSV import route, make sure to follow Shopify’s CSV structure recommendations to export the file correctly. To ensure a successful import, your CSV file can’t exceed 15MB. Otherwise, the Shopify product import may be incomplete or will fail.
How can you import products to Shopify automatically (without CSV import/export)?
Alternatively, you can automate the process and increase the speed of importing products with the help of online SaaS solutions like Apimio. It will save you from concerns about the file structure, and you can continue working on your store while your products are being imported. You can bulk upload to Shopify through a single dashboard without too much manual work.
More details about how Apimio works here (in detail).
If you’re a manufacturer:
You can install Apimio for Manufacturers: Share All Your Product Data from the Shopify App Store. This will take you to the Apimio Sign Up page where you can create your own Apimio Manufacturer account. Once your account is created, you can invite your retailers to share product catalogs with them.
Apimio lets you create groups of products that you can assign to specific retailers. You can easily import product catalogs to your Shopify store without the hassle of CSV files that need to be formatted every time you wish to import products.
The best thing about using Apimio for migrating your product data to Shopify is that you can also migrate images of your products to your store in one click.
Once you have all your products on your Apimio account, you can edit and bulk import them to your Shopify store in one click.
If you’re a retailer:
You can install Apimio for Retail: Import Products from Supplier from the Shopify App Store. This will take you to the Apimio sign-up page, where you can sign up as a retailer, and import your brands and products to your dashboard.
You can carry out CSV uploads once you have all your product data on your Apimo account, and also access all your product images in one place. Once you’ve invited your supplier to your account, you can sync all their product data to your Shopify store to ensure your stores are always updated and accurate.
Shopify Import Capabilities
Shopify allows you to import several entities by default. However, because you are bound to CSV files, you can’t automate processes. So every time there has been an update in your product data, you will have to import a new CSV file. Shopify Plus has various data transfer features that can be useful for businesses. Let’s go through those.
Importing Products from Another Store/Platform
So assume that you’ve decided to migrate from another platform to Shopify and wish to import all your products to your new Shopify Store. You might have exported a CSV of your existing products from the old platform, but unfortunately, this won’t be compatible with Shopify. The CSV file will follow the format of the older platform that you were using. So in order to use it to import your product data to your Shopify store, you will have to edit the file’s format. Even components like a missing header lead to import failure.
Moreover, your product CSV can’t be more than 15MB in size. So if you’re getting an error while trying to upload a new CSV file, check to see if it doesn’t exceed the size limit.
To import product data from your CSV on Shopify, follow these steps:
- From your Shopify admin, go to “Products” > “All products.”
- Click “Import”.
- Click “Choose File” in the Import products by CSV file window.
- Locate your CSV file, then click “Open”.
- Click “Upload file”.
- Once your CSV file is uploaded, you will receive a confirmation email from Shopify on your registered email.
Re-importing Products from Shopify
Shopify allows you to make changes to your catalog items via CSV, export your products, edit the CSV file and re-import it back to your Shopify store.
However, if you’re using Oberlo or other similar apps to add products to your website, this method will not work.
You can import products to Shopify as follows:
- Go to Shopify Admin > Products > All products and hit the Import button.
- The Import products by CSV file window displays. Click “Choose File”.
- Locate your product CSV and click “Open”.
- By enabling the “Overwrite any current products that have the same handle” feature, you override the corresponding Shopify data. For columns that aren’t present in the CSV file, the corresponding product information remains untouched. For instance, if you transfer items without price information, Shopify will keep the existing values.
- Upload the file.
- A confirmation email is sent upon a successful upload.
Shopify Product Import: CSV File Format
Below, you can see a list that shows the structure of a typical product file supported in Shopify.
Handle: in this field,, you need to specify unique product names using letters, dashes, and numbers. Also note that spaces, accents, periods, and other characters are not allowed. It is also worth mentioning that Shopify uses handles in product URLs.
Besides, Shopify treats every line in the CSV file that starts with a different handle as a new product. However, you can use multiple lines with the same handle to add multiple images to a single product. Since this field is required, it cannot be blank or missing.
Title. This column contains the title of your product — for instance, Women’s Black Stiletto Heels. Since this field is required, you cannot leave it blank.
Body (HTML). Here, you can provide your product description in HTML format or as plain text. It’s not required so can be left blank.
Vendor. In this field you need to enter the vendor name of the product and should have more than two characters.
Type. This field shows the product type, such as “Dresses” or “Heels”. You can leave it blank.
Tags. Here, you can place a comma-separated list of tags associated with the product. Add quotes around the tags if they are absent: “tag1, tag2, tag3”. This one can be blank.
Published. This shows the status of the product on your store: whether it is published or not.
TRUE – the product is published.
FALSE – the product is hidden.
The field is required. If you leave it blank, the product will automatically be published.
Option1 Name. If an item contains options, specify its name (e.g. Color). Set it to “Title” for products with one option only. This is a required field and can’t be left blank.
Option1 Value. If a product is associated with an option, you should enter its value here (White).
For products with only one option, set it to Default Title. Also, note that changing data in this column replaces the existing variant IDs. This process usually breaks third-party dependencies on variant IDs. This is a required field and can’t be left blank.
Option2 Name. If a product has the second option, specify it here but this column can be left blank.
Option2 Value. Enter the value of the second option here. This field can also be left blank.
Option3 Name. If a product has the third option, specify it here. You can leave this column blank.
Option3 Value. Enter the value of the third option here or leave it empty.
Variant SKU. In this column, you need to enter the SKU of a product or variant which is used to track inventory. Unless you use custom fulfillment services, this field can be left blank.
Variant Grams. You need to enter the product or variant weight in grams under this section. You can’t use any letters or special characters here, so if your product weight is 1.789 kg, you should specify it as 1789.
Also, despite setting a different unit on your website, Shopify always imports and exports the product weight in grams. It usually happens even if you set a different unit on your website. Therefore, use only accurate weights so that you can give customers accurate carrier charges based on weight. Since this field is required, you cannot leave it blank even if the value is 0.
Variant Inventory Tracker. This section contains the inventory tracking details for a variant or product. If your inventory isn’t tracked you can leave this column blank.
Variant Inventory Qty. This column displays the number of items available in stock but is only related to Shopify stores with a single location. If you have inventory at various locations, Shopify will not include this column for you.
Variant Inventory Policy. This column lets you specify the action taken towards customers when they order a product or variant that has reached 0 inventory.
deny – a product cannot be purchased after its inventory level reaches zero;
continue – a product can be purchased after its inventory level reaches zero: negative inventory levels are enabled.
You can’t leave this field blank.
Variant Fulfillment Service. Here, the system displays a fulfillment service responsible for the product or variant fulfillment. Possible values are:
It is also possible to specify the name of your custom fulfillment service here. Note that it is necessary to use lowercase letters and replace spaces with a dash (-). Also, remove periods and other special characters. And don’t forget to set up a custom fulfillment service in your Shopify admin before adding its name in this column. Since this field is required, it cannot be blank or missing.
Variant Price. Here, Shopify lets you set the price of the product or its variant. You can’t include currency symbols in this field.
Variant Compare at Price. The “Compare at Price” feature of the product or variant is related to this column. The requirements are the same: you shouldn’t use currency symbols. The field can be blank.
Variant Requires Shipping. Here, Shopify contains options that show whether shipping is required or not. TRUE and FALSE are two possible values. If you leave the column blank, the system understands it as FALSE.
Variant Taxable. Here, you need to specify whether taxes are applicable to your variant or not. You can enter True or False. If you leave the field blank, the system will assume it to be false.
Variant Barcode. In this column, you can add a product barcode, ISBN, or UPC. It can be left blank.
Image Src. This column allows you to specify the URL of a product image. The system downloads images during the import and uploads them back. However, they are not variant-specific. You should specify variant images in the variant image column.
You can leave this field blank.
Image Position. In this column, you can specify the order of the images to appear on your product page. the sort order for images that appear on a product page. It is shown from smallest to largest, so image set as 1 will appear first. The field can be left blank.
Image Alt Text. Here, you need to enter the Alt text for an image which is displayed when the image can’t load. You can enter up to 512 characters, but the optimal recommended length is 125 characters. You can leave this field blank.
Gift Card. Here, the system places data necessary to determine whether the product is a gift card or not. As you might have already guessed, valid values are TRUE or FALSE. You need to create gift cards in admin prior to changing the corresponding fields in a CSV file. The field can be blank.
SEO Title. You can find the SEO Title under the Search engine listing preview header in the Page title field on the product details page. The SEO Title consists of letters and numbers. The character limit is 70.
This field is optional, so if you leave it blank, it will automatically be populated with the product title on import. Note that it is optional.
SEO Description. The SEO Description shows in the Meta description field on the product details page and has a 320 letters/numbers limit. You can leave this field blank, and in that case it will automatically be populated with the product description you have provided on importing.
Google Shopping metafields. It is possible to ignore fields in the columns that include Google Shopping in their names. However, some situations may require using them. Therefore, this field is optional.
Variant Image. In this column you can specify the functioning image URLs of the variant, but it is optional.
Variant Weight Unit. Shopify uses only the following values:
The field is optional and if left blank, the default unit is “kg”.
Variant Tax Code. This column is available in Shopify Plus only if it is integrated with Avalara AvaTax. Don’t import a CSV file with this column filled in with data into a store that isn’t connected to Avalara.
Cost per item. In this column, Shopify specifies the product or variant cost for you. Currency symbols are still not allowed and the field is optional.
Status: This shows the status of the products in your store.
active – the product is available on your storefront;
draft – the product is not active with a draft that needs to be completed;
archived – it is an archived item that is no longer available on the storefront.
This field is required and if you don’t add the column to your CSV file, all products are uploaded as active.
Free Shopify CSV Template
You can download a free CSV template to import products to Shopify from here.