How to Import Products to Shopify: The 4 Methods That Actually Work

Every working way to import products to Shopify in 2026: manual entry, the built-in CSV importer, the bulk editor, and AI-powered apps. With Shopify's real limits, the gotchas merchants always hit, and which method to pick for your catalogue size.

Shopify gives you four ways to import products into a store, and picking the right one is mostly a question of catalogue size, where the product data is coming from, and how much time you'rewilling to spend in a spreadsheet. Get this wrong and you'llspend a weekend formatting CSV columns; get it right and the same job takes an afternoon.

The four methods, ranked from slowest to fastest for sourced products:

  1. Manual entry. Add products one at a time inside the Shopify admin.
  2. The Shopify CSV importer. Bulk upload a spreadsheet under Products > Import.
  3. The Shopify bulk editor. Shopify's underused spreadsheet view for editing dozens of products at once.
  4. A product importer app. Paste a URL and pull complete listings from any supplier or marketplace.

The rest of this guide walks through each one in detail, with Shopify's real file limits, the formatting gotchas the official docs bury near the bottom, and a decision table at the end so you can pick the right method for your catalogue.

Quick decision table

If you only read one thing, read this. The right Shopify import method depends on three variables: how many products you'readding, where the product data lives now, and how much manual work you're willing to do.

Your situationBest methodTypical time
1–10 new products built from scratchManual entry~3–5 min / product
Migrating from BigCommerce, Wix, Squarespace or WooCommerceCSV importer (with reformatting)1–3 hrs setup, then bulk
Editing prices, inventory or status across 50+ existing productsShopify bulk editor~10 min / 100 products
Importing from Amazon, AliExpress, Etsy, Alibaba, Temu, eBayProduct importer app (e.g. Product Upload)~30–60 sec / product
Sourcing 500+ products from supplier URLsProduct importer app, bulk modeHours, not weeks

Method 1: Add products manually in the Shopify admin

This is the built-in path. No file formatting, no apps, just the Shopify admin and a product page open in another tab if you'recopying from a supplier.

How to add products to Shopify manually

  1. From the Shopify admin, click Products in the left nav.
  2. Click Add product in the top right.
  3. Fill in the Title, Description, Media (images and video), Pricing, Inventory, Shipping, and Variants sections.
  4. Set the product Status to Active (publish) or Draft (hold) in the right sidebar.
  5. Pick the Sales channels and Markets you want the product available on.
  6. Click Save.

That's one product. Repeat for every SKU in your catalogue.

When manual entry is the right call

Use the admin form when you're adding fewer than 10–15 products, the product copy is original (you're not copying someone else's listing), and you want full control over every field on the first pass. It's also the right way to learn how Shopify's data model works (Handles, variants, option sets, metafields, sales channels) before you scale up.

Where it breaks: manual entry stops scaling around the 30-product mark. A 200-product catalogue is a full week of work, and most of that week is image uploads and variant entry rather than anything requiring judgement. If you find yourself copying titles and descriptions from a supplier site, you've already outgrown this method.

Method 2: Bulk import products with Shopify's CSV importer

Shopify has a native CSV importer under Products > Import. Used right, it'llcreate or update hundreds of products at once. Used wrong, it'llsilently strip your images, duplicate variants, or fail mid-upload with an error message that points at a row number you can no longer find.

Before you start, the constraints worth knowing, straight from Shopify's import documentation:

  • File format: comma-separated .csv, UTF-8 encoded. Windows-1252 (the Excel default on older Windows) will produce garbled characters.
  • File size: 15 MB maximum. Larger catalogues need to be split into multiple files.
  • Columns: ~67 fixed column headers. Case-sensitive. You don't need every column populated, but headers must match exactly.
  • Variants: one row per variant, all variants of the same product share a Handle.
  • Images: must be publicly accessible URLs (Image Src), not local files. Shopify fetches them during import.
  • No cancel button. Once an import starts, you can't stop it. Test against a development store first if you're replacing existing products.

Step-by-step: how to import a CSV into Shopify

  1. In the Shopify admin, click Products and then Import in the top right.
  2. Click Download sample CSV template. This is the only reliable way to get the exact column headers and order Shopify expects this month. The template changes occasionally.
  3. Open the template in Google Sheets, not Excel. Excel's automatic cell re-sorting can detach image links from product rows. If you must use Excel, save explicitly as CSV UTF-8.
  4. Fill in your product data, row per variant. Group variants of the same product under one shared Handle in column A.
  5. Upload your product images to a host that returns direct URLs. Shopify Files works, as does any CDN. Paste those URLs into Image Src.
  6. Save as .csv with UTF-8 encoding. Re-open the file in a plain-text editor to double-check it's comma-separated and headers are intact.
  7. Back in the admin, drag the file into the importer, click Upload and continue, then Import products.
  8. Wait. Shopify emails you a summary when it finishes, including any rows that failed.

The columns you can't skip

Of Shopify's ~67 columns, these are the ones that have to be right or the import won't produce a usable product:

  • Handle: the URL-safe slug. Groups variant rows. Lowercase, hyphenated, unique per product.
  • Title: required on the first row of each Handle group.
  • Body (HTML): the product description. Yes, raw HTML is fine.
  • Vendor: brand or supplier. Used in filters and reports.
  • Product Category: Shopify's standard taxonomy, used for tax, Markets, and channel mapping.
  • Option1 Name / Option1 Value: for variants (e.g. Size / Medium). Up to three option columns.
  • Variant SKU, Variant Price, Variant Inventory Qty: the variant's commercial data.
  • Image Src and Variant Image: public URLs.
  • Status: active, draft, or archived.

For a fully pre-mapped Shopify CSV template with example product and variant rows, see our free Shopify product CSV template.

Where Shopify CSV imports go sideways

The errors that catch merchants out aren't usually obvious from the docs. Four to plan around:

  1. Excel breaks image links. Sorting the CSV in Microsoft Excel or Apple Numbers re-orders rows, but image positions are inferred from row order under each Handle. Sort, and Shopify will silently attach images to the wrong product. Use Google Sheets or edit the CSV as text.
  2. Variant option columns aren't interchangeable. Once a product has Option1 set to Size in Shopify, re-uploading with Option1 as Colour will delete the existing variant IDs and break any third-party integration that referenced them.
  3. UTF-8 vs Windows-1252. If apostrophes and em-dashes come through as ’ after import, the file wasn't saved as UTF-8. Re-export from Sheets or use a text editor that lets you set encoding explicitly.
  4. 15 MB ceiling. A catalogue with high-resolution image URLs and long HTML descriptions can hit 15 MB faster than you'd expect. Split the file into batches; Shopify is perfectly happy with multiple sequential imports.

Method 3: Edit and import with Shopify's bulk editor

The bulk editor is Shopify's most underused product tool. It opens a spreadsheet-style grid inside the admin where you can edit titles, prices, inventory, status, and metafields across hundreds of products without touching a CSV. It can't create new products from supplier URLs, but it's the right tool when you're batch-editing products you've already imported.

How to use the Shopify bulk editor

  1. From Products, filter or select the rows you want to edit.
  2. Click the Bulk edit button (or open a saved view with the filters already applied).
  3. Click Columns and add only the fields you need: Price, Compare-at price, Status, Inventory, etc. Fewer columns means a faster grid.
  4. Edit cells directly. Shopify auto-saves as you go.
  5. Use keyboard navigation: tab between cells, paste columns of values straight from Sheets.

The bulk editor is where Shopify finally feels like a spreadsheet without the CSV hassles, but it doesn't replace the CSV importer for creating new products, and it doesn't pull data from outside Shopify.

Method 4: Use a Shopify product importer app

The CSV importer and bulk editor both assume the product data already lives somewhere usable, in a CSV you control or in your existing Shopify catalogue. The moment your source is a supplier site, marketplace listing, or any external product page, neither tool is much help. That's the gap product importer apps fill.

Product Upload is the highest-rated importer in this category on the Shopify App Store. Instead of formatting a CSV, you paste in a product URL or a list of URLs (from Amazon, AliExpress, Etsy, Alibaba, Temu, eBay, Walmart, an existing Shopify or WooCommerce store, or a wholesaler's own site), and the importer pulls the full listing, rewrites the description with AI, translates non-English copy, and publishes straight to your catalogue.

What you give up vs. CSV import

Honest take: if your product data already exists in a clean Shopify-compatible CSV, the native importer is the right tool. It's free and built into the platform. The product importer app is the better answer when:

  • You're sourcing from supplier or marketplace product pages and don't have a CSV at all.
  • The source CSV is in a different platform's format (Wix, Squarespace, BigCommerce, Magento, custom store) and you don't want to reformat 67 columns.
  • You need AI to rewrite supplier copy so it doesn't hit Google's duplicate-content filters.
  • Source listings are in another language and you want them auto-translated.
  • You're importing image-heavy catalogues that'd blow past Shopify's 15 MB CSV limit.

How a URL-based Shopify product import works

  1. Install Product Upload from the Shopify App Store (the free plan covers your first imports).
  2. Open the app and paste any product URL: a single product, a supplier collection, or a CSV of URLs for bulk runs.
  3. The importer fetches the listing: title, description, all images, every variant, pricing, weight, SKU, and category.
  4. Optionally edit the AI prompt to rewrite descriptions in your brand voice, add SEO keywords, or translate to English.
  5. Review the preview, then publish to your Shopify store as Active or Draft.

How to import products from specific sources to Shopify

The most common Shopify imports aren't CSV migrations, they're pulling listings from a single supplier or marketplace. Here's where each major source fits:

  • How to import products from Amazon to Shopify: Shopify has no native Amazon connector. Use a URL-based importer that supports Amazon ASINs.
  • How to import products from AliExpress to Shopify: Oberlo shut down in 2022, leaving DSers as Shopify's official AliExpress partner. URL-based importers cover this too with broader supplier support.
  • How to import products from Etsy to Shopify: Etsy provides a CSV export, but the column structure doesn't match Shopify's. Either reformat the CSV manually or use a URL importer that reads Etsy listings.
  • How to import products from Alibaba or 1688 to Shopify: Use a URL-based importer with translation. Alibaba listings are often in Chinese and need AI rewriting before they're customer-facing.
  • How to import products from WooCommerce to Shopify: WooCommerce can export a CSV, but it uses a completely different column schema. Use a migration tool or URL importer that supports WooCommerce store URLs.
  • How to import products from Wix or Squarespace to Shopify: Both can export their own CSV formats. Reformat to Shopify's schema or use a URL importer pointed at the live site.
  • How to import products from one Shopify store to another: Export the source store's CSV under Products > Export, then re-import on the destination. The columns are already compatible, though you'll still need to re-host or re-link images.

Common Shopify import errors and how to fix them

If the email Shopify sends after your import lists more errors than successful rows, the cause is almost always one of these:

  • "Error: column 'Variant Price' is required". You've probably got a variant row missing the price field. Every variant row needs Variant Price, even if the product has only one variant.
  • "Error: invalid CSV format". The file isn't UTF-8 encoded, or it was opened and re-saved in Excel without selecting CSV UTF-8 explicitly. Re-export from Google Sheets.
  • "Image could not be downloaded". Image Src URLs need to be publicly accessible. Dropbox shared links, Google Drive links, and any URL requiring auth will all fail. Upload images to a CDN or to Shopify Files first.
  • Variants get overwritten with new IDs. You changed the order of Option1/Option2/Option3 between imports. Shopify keys variants on option name plus value, so renaming Size to Color deletes the old variant entirely.
  • Products imported but show no images. Almost always Excel sort detachment (see Method 2). Re-export from source, don't sort, re-import.

So which Shopify product import method should you use?

The honest split:

  • Fewer than 15 products, building from scratch: manual entry. Don't over-engineer it.
  • Migrating from another Shopify store, or a platform you can clean-export from: the native CSV importer is free and accurate enough.
  • Mass-editing prices, inventory, or status on existing products: the bulk editor inside Shopify.
  • Importing from suppliers, marketplaces, or any external website: a Shopify product importer app like Product Upload. The CSV importer simply can't do this; manual entry isn't a serious option past a few SKUs.

Most stores end up using a combination: CSV for the initial migration, the bulk editor for ongoing maintenance, and a URL importer for every new product they source. Anyone telling you it's a one-method problem hasn't run a store.

Skip the CSV. Import your first product in 60 seconds.

Paste any supplier or marketplace URL. Product Upload pulls the title, description, images, variants, and pricing, rewrites with AI, and publishes straight to your Shopify store.

5 free imports · no credit card · installs in 30 seconds