Importing products

Last updated

Import tool in Ecwid allows to upload your products in the form of CSV files. You may want to use this if you need to add or update a lot of products at a time. In your control panel, you can find the import tool at Catalog → Products → Import products. 

For examples of the import tool usage, please refer to this article: Import-Export .

The 'CSV import' video tutorial is available here:

Import file format specification


Ecwid uses CSV format for import/export files. What is CSV: 

Essentially, CSV is a plain text, thus you can use any text editor for creating or editing CSV files. On the other hand, spreadsheet editors provide better editing experience. Currently, the most powerful and convenient tools are OpenOffice, MS Excel and Google Docs. We should note that Excel (especially its old versions) doesn’t open CSV files properly in some cases. There is a number of workarounds, however we recommend to use free OpenOffice app to edit & save your CSV import files.

File contents 

Each line in a CSV file represents the properties of some certain item (e.g. a product, an order item or a customer) separated with a delimiter. The same delimiter should be used for the whole file. 

The very first line in a CSV file can contain column names, for example:


Export always puts column names to the first line. As to import, it supports both formats (with or without column names line). The Ecwid import dialog has a relevant option  - "Skip first line". In case this option is selected, Ecwid just skips the first line in the file without any verification. If "Skip first line" option is off, it means that the whole file contains data, hence Ecwid checks every line.

Data columns separators (delimiters)

Ecwid supports three CSV value separators:

  • semicolon
  • comma
  • tabulation

Line separators

Ecwid supports three different line separators for CSV files:

  • \r\n - Windows
  • \n - Unix, Linux, MacOS X
  • \r - classic MacOS

Ecwid automatically recognizes file line separators, you do not need to set it up or adjust it in any way.

File encoding 

Ecwid supports more than 10 charsets, such as UTF-8, UTF-16, US-ASCII, etc. If all your products and categories are in English, you don't need to set anything. Use the default encoding settings ("UTF-8") and all the information will be imported correctly. If you want to import a CSV file with non-English characters, we strongly recommend you to use the UTF-8 encoding for your CSV file. If you cannot use UTF-8 for your CSV file for some reason but use some other encoding, you will need to set the correct encoding in the import settings. Otherwise, the information will not be imported correctly.

Number formatting

There are two strict requirements for number format in Ecwid import:

  1. The decimal mark (decimal separator) must be a dot (.)
  2. A number must not contain thousand separators


Ecwid recognizes 16 columns in the CSV file, their descriptions are below: 

Column name







Product SKU

At least SKU or Name field is required

255 symbols



Product name

At least SKU or Name field is required

255 symbols



Product description


no limits



Product availability (enabled/disabled)


"true", "yes", "on", "Y", "1" for true, any other values for false


floating number

Product weight


Any valid floating number value, if column is present

but empty, then product is intangible


floating number

Product price



Any valid floating number value

Recommended price floating number Product compare-to price optional Any valid floating number value



Product quantity in stock


Any valid integer value, if column is present but empty - quantity tracking is disabled



Product image url


Only http://, https:// and links are allowed, any other values are ignored

Category 1


Category name or path to category (e.g.Books/Science/Biology), which product belongs to 


255 symbols for each name in path, "Books" - one name, "Science" - another name

Category 2


Path to second category,

which product belongs to


the same as Category 1

Category 3


Path to third category,

which product belongs to


the same as Category 1

Fixed shipping rate

floating number

Product shipping freight value


Any valid floating number value

Fixed shipping rate only     


If product has only fixed shipping rate


"true", "yes", "on", "Y", "1" for true, any other values for false

UPC string Product 'UPC' attribute (see also: Product types and attributes) optional 255 symbols
Brand string Product 'Brand' attribute (see also: Product types and attributes) optional 255 symbols
Page title string SEO field optional 55 symbols
Meta description string SEO field optional 160 symbols
Width floating number  Product dimension for shipping calculation (see also: Product dimensions) optional 5 symbols
Height floating number Product dimension for shipping calculation (see also: Product dimensions) optional 5 symbols
Length floating number Product dimension for shipping calculation (see also: Product dimensions) optional 5 symbols


Ecwid import/export CSV file template (separator = comma, import settings dialog


How can I import product options?

The options are rather complex properties of the products, and it is hardly possible to put them into the same plain table, as described above. So Ecwid doesn't allow importing product options using the CSV format described here yet. However, you can partially import product options using CSV files in X-Cart format.  Please, refer to this article: X-Cart import format and Ecwid

How can I upload additional product images (gallery) in bulk?

It is possible to upload gallery images to your Ecwid store in bulk using Bulk Gallery Upload app:

The app allows to upload images using a single ZIP-archive, please check this help page for details:

The Bulk Gallery Upload app is free, but requires any Ecwid paid plan to access API.

Can I import products from other file formats?

Yes, you can import your products in X-Cart and LiteCommerce formats.

More information on them: 

Can I import categories?

Ecwid doesn't allow importing categories using its format yet. However, you can import categories using CSV files in X-Cart format. Please, refer to this article: X-Cart import format and Ecwid

When I import a CSV file, Ecwid shows that the import will take a few hours, however usually it takes about 5 minutes. Why?

Import process is a quite long and resource consuming procedure. Thus it can affect server performance, so all the other stores which use the same server can load slower because of that. We don't want this. We want to make sure, that all the stores are always loaded quickly. So we have implemented a smart way to import products from different stores. How it works (in a nutshell):  

  • if some Ecwid users try to import products at the same time on the same server, Ecwid doesn't start to process many import jobs simultaneously. All the import files are put into a queue and are processed sequentially, one by one. 
  • if a server load is too high for some reasons, all the import jobs are stopped temporarily. Ecwid will continue to import products automatically, once the server load becomes normal. 
  • depending on the server load and the length of the import queue, Ecwid calculates the approximate ETA of import start. It isn't 100% exact, but gives a conception when your file will be processed. 

As a result, even if 100 Ecwid users decide to import 20,000 products each at the same time, all the other stores will work without any delays or slow downs.

In your particular case we assume that the import queue has already had a bunch of files to import and the server load has been a bit high. So it has taken longer than usual to import your file.

What does "skip column" option mean? 

The "skip column" options in the import settings dialog are necessary when your CSV file has some columns that cannot be processed by Ecwid, and you for some reason don't want to modify your CSV file. So, just enable the "skip column" option and Ecwid will ignore the corresponding column in the CSV file.


In most cases issues with CSV import in your Ecwid store are related to one of the following:

  • invalid CSV file format,
  • import settings that the store administrator chooses in the Ecwid control panel do not correspond to the file content

Please look at these screenshots. There you can see an example of a CSV file content and the corresponding import settings:

So, if you face any problem when importing a CSV file to Ecwid, you should first of all check the below points:

  1. Your file has CSV format. For information on what CSV format is see
  2. Your file contains only columns that Ecwid supports
  3. Columns that represent numeric product properties (e.g. price, quantity, etc.) contain numbers, not strings
  4. Columns enabled in the import settings are the same as in the CSV file. For example, if your CSV file contains SKU, name, price and weight columns, exactly the same checkboxes should be ticked in the import settings dialog (SKU, name, price, weight). 
  5. Columns order in the CSV file corresponds the columns order in the import settings. 
  6. The values separator (comma, semicolon, or tab) used in your CSV file corresponds the 'Delimiter' option in the import settings dialog. 
  7. CSV file encoding is the same as the one you select in the 'Character encoding' option in the import dialog.

Please find the full format specification here:

An error is displayed on the import page. What does it mean?

The import function may generate the following errors:

In Ecwid maximum category depth is limited to 50. Your import file contains category /Category1/Category2/.../Category80, which has depth of 80. Please reduce the number of its parent categories and try again.

You have too many nested categories

'Category name' is too long (400 symbols) . The maximum allowed length is 255 symbols.

Ecwid has a limit for a the category name field length. Your import file contains a category name value longer than 255 symbols.

Wrong columns count. You have selected 10 columns in import dialog, but the file contains only 8.

If you select 10 columns, each line in your file has to contain at least 10 values. Values may be empty (it depends on a column type), for example:sku0001;iPhone 3GS 16Gb;;;;;;;;;;;;;

Unsupported image format (

Ecwid supports only JPG, BMP, PNG and GIF image file formats

Image is bigger than 4Mb

Ecwid doesn't allow uploading images bigger than 4 megabytes

'SKU' or 'Name' column has to contain value

Every product line has to contain at least one value - SKU or Name. Product can not be created (or updated) without SKU and Name

'SKU' is too long (300 symbols) . The maximum allowed length is 255 symbols.

Ecwid has a limit for the SKU field length. Your import file contains SKU values which are longer than 255 symbols

'Name' is too long (350 symbols) . The maximum allowed length is 255 symbols.

Ecwid has a limit on the Name field length. Your import file contains Name values longer than 255 symbols

Incorrect 'price'/'weight'/etc value

Column has data of a wrong format. For example, there are letters in column instead of numeric values

Malformed image URL htp://

URL is of a wrong format. For example,

  • wrong protocol - htp://
  • no protocol -

Common URL format is [protocol]://[server]/[file path]

Cannot upload image

Ecwid can not load an image from server due to server failures, timeouts or other network problems

Ecwid has a limitation of 1000 categories per store.

Ecwid has a limitation of 1000 unique categories per one store. This error message means than your store plus categories from the import file break this limit

I have tried to update my products with import, but it has duplicated them. Why is that?

When updating your products with the import function, Ecwid checks if the incoming products do already exist in your inventory by their SKUs as the key field. It takes each row of the imported file and verifies whether the SKU is already present among your products. The SKU is verified word-by-word, i.e. the length and the exact characters in the SKU must match both in the imported file and ina your inventory in order for Ecwid to consider this product a target for the update. If such a product is not found, Ecwid will create a new one and will store the information from that row in the new product.

So, for example, SKUs '00050' and just '50' are completely different for Ecwid, despite that they both may represent numeric value 50 and may look the same for humans. When you have a product with SKU '00050' in your inventory, and try to import a product with SKU '50', you will get 2 similar but separate products - because for Ecwid those 2 SKUs are completely different.

We had a number of reports that Microsoft Excel, being overall a well-done spreadsheet editor, tends to cut off the leading zeros from the SKUs, just like in the example above. This may result in duplicating products when you quickly edit your exported inventory in Excel and import it back to Ecwid.

Excel automatically selects the most matching format for the columns, so if you use numeric SKUs and try to edit an exported file from your Ecwid inventory in Excel, it may decide that SKUs are pure numerals and their leading zeros are meaningless.

To prevent such behavior, you can try to rename the exported *.csv files from Ecwid into *.txt, open them in Excel with 'Open…' menu command (not just with the double click on the file). In this case Excel will show the settings dialog, where you can select the exact type for each column; you should select the 'Text' type for the SKU column to preserve its leading zeros.

The other solution is to use free office suite to edit the *.csv files exported from Ecwid. No renaming is needed then: you can just open the *.csv files with OpenOffice spreadsheet editor and it will show the settings dialog right away. Make sure that the settings you use there produce a meaningful table of product properties for you, and the SKU codes match the ones you actually use in your Ecwid shop.

Product images failed to import. Why?

In some cases everything is imported fine except for the product images. If you face such a problem, please follow these troubleshooting steps:

1. Check whether the images URLs you put in your CSV file are correct and accessible on the web.

The images prepared for import have to be available by direct links, e.g. ''. To check it you can try to open an image URL in your browser: if the image is opened without asking for password or login, it can be included into the import file.

2. Make sure each product image URL leads directly to the image file, not to an HTML page that contains the image. 

For example, if you upload your images to some image hosting like Flickr and want to include their URLs to your Ecwid CSV import file, you have to use the direct links (e.g. , not just URLs of HTML pages that display that image (e.g. . How to get such a direct link from an HTML page containing the image:

  • open the page in your browser
  • right-click on the displayed image
  • the mouse context menu will likely contain a point like 'Copy image URL' . This URL will work unless it is protected by your account login.

I use non-English characters in my product names and descriptions. When I  export them to a CSV file and open it in Excel, it doesn't show these characters correctly.

Ecwid exports all the information in UTF-8. This encoding is widely used and is already a standard for web applications, because it can work with all the languages. Therefore, for example, you can have a part of your product description in French and the other part - in Japanese. 

However, if you use a non-English version of Excel, it may expect your CSV file to be in a different encoding, for example in the encoding of your national language. Thus, non-ASCII symbols will be corrupted. In order to fix this issue take these steps:

  • Launch Excel.
  • Go to the "Data → From text" page (if you use localized Excel, the actual menu items` names may vary). Open your CSV file.
  • The "Text Wizard" window will appear. Set the correct delimiter and charset (use "UTF-8")

All decimals are rounded to nearest integers after importing a CSV file. Why?

Such issues are caused by incorrect number format used in the import CSV file, e.g. when you use a comma as a decimal separator (it must be a dot). Please refer to this paragraph for the details: Number format .  

If you have difficulties with troubleshooting an import issue, please create a new thread on our forums with the issue description and attach the CSV file you are trying to import with the screenshot of your import settings.  

When I open a csv file in Libre Office, the SKU looks different. Why?

If your SKU is a long combination of numbers, like 23794309283364723, Libre Office automatically sets the column format to "Numbers", "thinks" that the SKU is a number and rounds it. For example, the SKU of a product in Control panel looks like this: 8829404463829104801. If you export orders and open the csv file in Liber Office, then the Sku will look like this in the cell: 8829404463829110000 and like this in the preview line at the top: 8.82940446382911E+018, see the screenshot:

To avoid it and make the SKU display as it is in Control panel, you should change the format of the column with SKUs. Here is how:

  1. Click on the csv file that you've just exported from your store to open it.
  2. In the opened preview window click on the column with SKUs. In “Column type” dorp-down menu above select “Text” type.
  3. Open the file. The SKU will display correctly.


Was this article helpful?
4 out of 4 found this helpful
Get help
  • Presales Chat

    Need help choosing the right Ecwid plan? Our Sales team has the answer you’re looking for.

  • Forums

    Join the Ecwid community. Discuss support topics and store ideas with other Ecwid users.

  • Contact us

    Still have questions about Ecwid? Let us know! We will be glad to help you with your Ecwid store.

  • Status Monitor

    Get real time status updates on Ecwid services here, 24/7