How to Import Products to Shopify (CSV, Other Stores, WooCommerce and Suppliers)

By Muhammad MustafaUpdated 1 October 20269 min readShopify SEO and store management

Quick answer

To import products to Shopify, prepare a CSV in Shopify's template and upload it under Products > Import, or use an app that reads from your source: the Store Migration app for WooCommerce, a supplier or dropshipping app, or a product importer for your other stores. Variants, images and prices transfer well; reviews, redirects and some SEO fields need extra work.

On this page
  1. Before you import anything
  2. Method 1: Import a product CSV
  3. Method 2: Import from another Shopify store you own
  4. Method 3: Import from WooCommerce
  5. Method 4: Import from suppliers
  6. Method 5: Importer and migration apps
  7. Keeping imported products up to date
  8. What transfers and what doesn't
  9. Post-import checklist

Importing products sounds like one job, but in practice it is two. The first is getting the data into Shopify: titles, variants, prices, images. The second is everything that does not come along for the ride: reviews, redirects, SEO fields, collections, and the small formatting problems that only show up when a shopper opens the page. Most failed imports get the first part right and skip the second.

This guide covers the main import routes (CSV, another Shopify store you own, WooCommerce, suppliers, and importer apps), then a table of what transfers and what does not, and a checklist to run once the products are in.

Before you import anything

A few decisions up front save a lot of re-importing later.

  • Make sure you have the right to sell the products. Import from sources you control or have an agreement with: your own stores, your suppliers, wholesale partners and brands that authorize resellers. Product photos and descriptions are usually copyrighted, so use supplier-provided content only where the supplier allows it, and write your own copy otherwise.
  • Decide how products map. Shopify allows up to 3 options and 2,048 variants per product. If your source uses more than 3 attributes to build variants, decide which three become options and where the rest go (tags, metafields or separate products).
  • Clean the source first. Deleting discontinued items and fixing obvious typos in the source is faster than fixing them after import.
  • Import into draft. Where the method allows it, import products with Draft status and publish after review.
  • Record old URLs. If products are moving from another site, export the list of old product URLs now. You need it for redirects.

Method 1: Import a product CSV

CSV is Shopify's built-in import and the format most other methods eventually produce. Every row is a variant, and rows that share a URL handle belong to the same product.

  1. Go to Products > Import and download the sample CSV so your headers match Shopify's current template.
  2. Fill the product-level columns (Title, Description, Vendor, Type, Tags, Status, SEO title, SEO description) on the first row of each product.
  3. Fill variant columns on every row: option names and values, SKU, barcode, price, compare-at price, weight, inventory quantity.
  4. Add public image URLs in the product image URL column, one image per row, with the same handle. Add alt text in the image alt text column.
  5. Save as UTF-8 CSV. Files over 15 MB must be split.
  6. Upload it in Products > Import. Choose whether to publish new products to all sales channels, and whether to overwrite products with matching handles.
  7. Review the preview and click Import products. You get an email when it completes. An import cannot be canceled once it starts.

The details of each column and the common errors are in our Shopify CSV import guide.

Warning: With overwrite turned on, blank non-required columns replace existing values with blanks. When updating existing products, remove every column you are not changing, or leave overwrite off.

Method 2: Import from another Shopify store you own

Moving products between your own stores is common: a new regional store, a second brand, or a wholesale store. There are two practical routes.

Export and re-import a CSV

  1. In the source store, go to Products > Export, choose all products (or a filtered selection) and export as CSV.
  2. Open the file in Google Sheets or a text editor. Avoid sorting it in Excel or Numbers, which can detach image rows from their products.
  3. Adjust prices, vendors, tags or status as needed for the new store.
  4. Import it in the destination store under Products > Import.

The export contains image URLs hosted on the source store's CDN, and Shopify downloads the images during import, so they end up hosted on the new store. Collections are not part of the product export, so recreate them, ideally as automated collections based on type, vendor or tags that did come across. Inventory quantities export per location, so check location names match or set stock after import.

Use a product importer

If you want to pick products one by one, adjust them, and push them straight in without a spreadsheet, an importer is faster. The AM Jarvis Product Importer reads products from a public Shopify or WooCommerce storefront, such as your own other store or a wholesale partner's store that authorizes resale, and creates them in your Shopify or WooCommerce store with all variants, images and prices. You can edit before import, rewrite titles and descriptions with AI, apply pricing rules, and import in batches.

Method 3: Import from WooCommerce

For a full move from WooCommerce, Shopify's own guidance offers three routes: a CSV import, the Store Migration app, or third-party migration apps.

  1. In WordPress, go to Products > All Products and click Export to download WooCommerce's product CSV.
  2. Either upload that file through Shopify's Store Migration app, which maps WooCommerce fields to Shopify, or convert it to Shopify's CSV template yourself.
  3. If converting by hand, map the main fields: WooCommerce Name becomes Title, Description becomes the Description column (Body HTML in older templates), SKU stays SKU, Regular price becomes Compare-at price when a sale price is set, and attributes become option names and values.
  4. Import into Shopify as Draft and review a sample of simple and variable products.
  5. Create redirects from old WooCommerce URLs (usually /product/name/) to new Shopify URLs (/products/name) under Content > Menus > View URL redirects, using the CSV import option for many at once.

Watch for WooCommerce products with more than three variation attributes: Shopify's help notes that products with more than 3 options will not have their options imported. Grouped and external products have no direct Shopify equivalent and need to be rebuilt. Customers and orders need separate exports, and customer passwords never transfer, so customers must set new ones. For larger or more complex stores, paid migration apps such as Matrixify or LitExtension handle more data types.

Method 4: Import from suppliers

How you import from a supplier depends on how they share their catalog.

Supplier setupHow to import
Spreadsheet or price listConvert to Shopify's CSV template and import. Keep the supplier SKU so you can match future updates.
Data feed (CSV or XML URL)Use a feed import app that fetches the file on a schedule and updates price and stock.
Dropshipping platformInstall the supplier's Shopify app (such as DSers for AliExpress) and push products from its import list.
Supplier is on ShopifyConnect through Shopify Collective if both stores are eligible, or import from their storefront with their permission.
Marketplace listingsUse a browser extension importer, then rewrite titles and descriptions.

For marketplace suppliers, the AM Jarvis Chrome extension imports products from AliExpress, Amazon and other product pages into your store as you browse. Our step-by-step guide to importing from AliExpress to Shopify covers cleaning supplier titles and variant names.

Shopify Collective is worth a look if your suppliers are Shopify brands. Imported products stay connected to the supplier, orders are forwarded automatically and tracking syncs back. It requires a supported country and currency, an active plan and a completed Shopify Payments account, and your store must match the supplier's country and currency.

Method 5: Importer and migration apps

Apps fill the gaps that the built-in CSV import leaves:

  • Spreadsheet power tools such as Matrixify import and export products along with collections, metafields, redirects and more in one file.
  • Migration services such as LitExtension move full stores from other platforms, including customers and orders.
  • Store-to-store importers, like AM Jarvis, copy selected products with variants and images between Shopify and WooCommerce stores you work with, with editing before import.
  • Dropshipping apps import from their own supplier networks and keep stock synced.

Pick based on what you need to move. Products only: CSV or an importer. Products plus customers, orders and blog posts: a migration app.

Keeping imported products up to date

An import is a snapshot. The moment it finishes, prices and stock in the source start to drift from your store. Plan how updates will flow before you import thousands of products.

  • Pick a matching key. Handle or SKU is what ties a row in your next file to the product already in Shopify. Keep supplier SKUs intact on import, even if you also add your own.
  • Update only what changed. For a price or stock update by CSV, keep only the handle, the option columns needed to identify each variant, and the columns you are changing. Changing option values in a CSV deletes the existing variant IDs and creates new ones, which can break apps and ad feeds that reference them.
  • Automate stock where you can. Dropshipping apps, Shopify Collective and feed apps sync stock and price on their own schedules. For manual suppliers, set a weekly routine rather than waiting for an oversell.
  • Protect your edits. If you rewrote titles and descriptions after import, make sure a later sync does not overwrite them with supplier copy. Most apps let you choose which fields sync.

Bulk price changes after import, such as a new markup across a vendor, are faster in a bulk editor than in a spreadsheet, and a preview step shows the result before any customer sees it.

What transfers and what doesn't

DataUsually transfers?Notes
Title, description, vendor, type, tagsYesCheck HTML formatting in descriptions after import.
Variants and optionsYes, up to 3 optionsProducts with more than 3 option attributes need restructuring.
Prices and compare-at pricesYesCheck currency and sale price mapping from other platforms.
SKUs and barcodesYesNeeded for Google Shopping and supplier matching.
ImagesYes, from public URLsShopify downloads them. Private or blocked URLs fail silently.
Image alt textSometimesOnly if the source has it and your method maps it.
SEO title and meta descriptionSometimesShopify exports only customized ones. WooCommerce SEO plugin data usually needs a separate export.
URLs and handlesHandle yes, old URL noCreate redirects for every changed URL.
CollectionsNo, in plain CSVRecreate them or use an app that imports collections.
Variant metafieldsNo, in plain CSVNot supported by Shopify's product CSV.
ReviewsNoExport from the old review app and import into your new review app.
Videos and 3D modelsNo, in plain CSVUpload them manually on the product page.
Inventory quantitiesYes, per locationLocation names must match.

Reviews deserve a special mention because they are the most often lost. They live in a review app, not in Shopify's product data. Most review apps can export reviews as CSV and import them keyed on product handle or ID, so plan the review import after your product handles are final.

Post-import checklist

  1. Count check. Compare the product and variant counts in Shopify with the source. A shortfall often means rows with errors or products over the option limit.
  2. Spot check ten products of different types: variants, images per variant, prices, compare-at prices and inventory.
  3. Descriptions. Look for broken HTML, supplier contact details, foreign-language text and copied content that needs rewriting.
  4. SEO fields. Fill blank SEO titles and meta descriptions on key products. A bulk editor such as Bulk Edit Pro can apply templated SEO titles, meta descriptions and price changes with a preview and one-click revert.
  5. Handles. Fix odd handles such as product-1 before publishing.
  6. Collections and menus. Make sure every product appears in at least one collection.
  7. Redirects. Add redirects for every old URL and test a sample.
  8. Shipping and tax. Confirm weights and tax settings, then place a test order.
  9. Identifiers. Check GTINs and brand before submitting products to Google. The GTIN lookup tool helps confirm barcodes.
  10. Publish in batches. Move reviewed products from Draft to Active and watch Search Console for new errors.

A final crawl after publishing catches what the checklist misses. Our Shopify SEO audit guide explains how to run one.

Frequently asked questions

How do I import products to Shopify from a CSV file?

Download Shopify's sample CSV, fill one row per variant with matching URL handles, and add public image URLs. Save as UTF-8 under 15 MB. Then go to Products, click Import, upload the file, choose publishing and overwrite options, review the preview and click Import products. Shopify emails you when it finishes.

Can I import products from one Shopify store to another?

Yes, for stores you own or products you are authorized to sell. Export a CSV from the source store under Products, Export, then import it in the destination store. Images come across because Shopify downloads them from the image URLs. Collections do not transfer in the CSV, so recreate them afterwards.

Do product reviews transfer when importing to Shopify?

No. Reviews are stored by your review app, not in Shopify product data, so a product CSV never includes them. Export reviews from the old app or platform as a CSV and import them into your new review app, matching on product handle or ID once your handles are final.

Why are images missing after a Shopify import?

Usually because the image URLs were not publicly accessible, were blocked by the source server, or the CSV was sorted in Excel or Numbers, which can separate image rows from their product. Check that each URL opens in a private browser window, keep image rows under the right handle and re-import.

How do I import WooCommerce products into Shopify?

Export products from WooCommerce under Products, Export. Upload that file through Shopify's Store Migration app, or convert it to Shopify's CSV template and import it. Check variable products with more than three attributes, then add redirects from the old /product/ URLs to the new /products/ URLs.

Muhammad Mustafa

Founder of AM Jarvis and 95 Solutions LLC. More than a decade running e-commerce stores, Google Shopping campaigns and niche sites. About the author

Platforms such as Shopify, Google Merchant Center, Etsy and Amazon change their menus and rules often. We review guides regularly; if something here no longer matches what you see, let us know.