How to import products from Excel to Shopify
Shopify doesn’t import .xlsx files, so the job is to reshape your sheet into Shopify’s CSV format and save it as CSV UTF-8. Here is the process, including the Excel habits that quietly break imports.
Step 1: Start from Shopify’s columns
Download the Shopify product CSV template and open it next to your sheet. Copy your data into the template’s columns rather than renaming your own headers one by one; that way the header row is exactly what Shopify expects.
| Typical spreadsheet column | Shopify column |
|---|---|
| Product name | Title |
| Item code / SKU | SKU |
| Selling price | Price |
| Cost / wholesale price | Cost per item |
| Brand / supplier | Vendor |
| Colour, Size | Option1 name/Option1 value, Option2 name/Option2 value |
| EAN / UPC | Barcodes |
| Photo link | Product image URL |
Step 2: Create handles and variant rows
Add a URL handle for every product: lowercase, hyphens instead of spaces, unique per product. If your sheet lists sizes or colors on separate rows, those rows become variants: give them the same handle, keep the title only on the first row, and put the differences in option columns. The variants guide shows the exact layout.
A quick way to draft handles in Excel is a formula such as =LOWER(SUBSTITUTE(TRIM(A2)," ","-")), then paste the results as values and remove characters other than letters, numbers and hyphens.
Step 3: Protect SKUs and barcodes
Excel treats long numbers as numbers. It drops leading zeros (0869000000011 becomes 869000000011) and shows long barcodes in scientific notation (8.69E+12). Once the file is saved, the original digits can be lost.
- Format the SKU and barcode columns as Text before you paste data into them.
- When opening a CSV, import it through Data → From Text/CSV and set those columns to Text instead of double-clicking the file.
- Check a few long barcodes after saving by opening the CSV in a text editor.
Step 4: Clean prices and formulas
- Remove currency symbols and thousands separators:
1250.50, not$1,250.50. - If your sheet uses decimal commas (
24,90), convert them to decimal points. - Replace formulas with values: copy the column, then Paste Special → Values.
- Make sure every variant row has a price. An empty price fails with “price can’t be blank”.
Step 5: Save as CSV UTF-8
Use File → Save As → CSV UTF-8 (Comma delimited) (*.csv). The plain “CSV (Comma delimited)” option can use a different encoding and turn characters such as é, ü or × into symbols. If your Excel uses semicolons as the list separator, check the saved file in a text editor: Shopify needs commas. More on encoding.
Step 6: Test the import as drafts
- Set
Statustodraftfor every product. - Save a copy with only two or three products and import it: Products → Import → Add file → Upload and continue.
- Leave Overwrite products with matching handles unchecked.
- Check the drafts in the admin: variants, prices, images.
- Import the full file, then publish products when you are happy with them.
Before the full import, run the file through the free Shopify CSV checker. If Shopify rejects the file, look the message up in the list of Shopify import errors.
When the sheet came from a supplier
Supplier spreadsheets add extra work: wholesale prices that need a markup, several price columns, merged cells, notes rows and headings in another language. Sheet2Store’s Excel to Shopify converter reads a one-sheet XLSX or CSV, keeps leading zeros that Excel number formats hide, flags formula cells, applies your markup and exchange rate, groups variants and writes the Shopify CSV. The first five rows are free to preview.
Frequently asked questions
Can Shopify import an .xlsx file directly?
No. Shopify’s product importer takes CSV files, so save your sheet as CSV UTF-8 first.
How many products can I import at once?
As many as fit in 15 MB per file. Split bigger catalogs into several files, keeping all rows of a product in the same file.
Why did my barcodes change after saving?
Excel converted them to numbers, removing leading zeros or rounding long values. Format those columns as text before entering data and reopen CSVs through the text import wizard.
Should I import products as active?
Import them as draft first. You can review everything and publish in bulk once you’ve checked prices and variants.
Turn a supplier file into an import-ready CSV
Upload a supplier PDF, Excel or CSV price list. Map the columns, set your markup, fix flagged rows and download a Shopify or WooCommerce CSV. The first five rows are free to preview.