Retyping a whole catalogue by hand is slow, and it invites typos in prices, SKUs, and image links. If you need to move products into Shopify from another store — your own older shop, a supplier catalogue you are permitted to use, or a platform you are leaving — the practical route is a CSV file: extract the product data once, review it properly, test the import with a couple of products, and only then bring the rest across.
First, the rights note
Only move products you own or have the right to sell. Product text and photos belong to their source stores. Descriptions, photography, and branding are usually created by the store that published them, and copying them without permission can create problems for your new shop even if the import itself works perfectly.
This guide assumes the products are yours: for example, your own store on another platform, a previous shop you are closing, or a catalogue a supplier has given you clear permission to reproduce. If you are not sure whether you have the right to use a listing's text and images, stop and check before you extract anything. Writing your own descriptions and using your own photos takes longer, but it is the safe foundation for a store you intend to keep.
Step 1: Plan before you extract
Decide what is actually moving. List the collections or categories you want, note any products that are discontinued or seasonal and should stay behind, and check how variants are set up in the source store. A product with sizes and colours needs to arrive in Shopify as one product with variants, not as a pile of separate listings.
Also decide your pricing approach now. Will you keep source prices, apply a markup, or reprice manually afterwards? Making that decision before extraction means the CSV can be built correctly the first time, instead of needing bulk edits later.
Step 2: Extract the products
Using an extraction tool, paste the URL of a single product or of a collection page and run the extraction. A collection URL is the efficient choice when a whole range is moving, because the tool can work through the products in that collection in one pass.
For a deeper walkthrough of the tool itself, including what to check on screen during extraction, read the extractor guide. Keep the source store open in another tab while you work, so you can spot-check any product that looks odd in the results.
Step 3: Review and edit the CSV
Never import a file you have not looked at. Open the CSV in a spreadsheet program and scan the rows that matter most: titles, prices, compare-at prices, SKUs, variant options, and image links. Look for truncated titles, prices that lost a digit, variants in the wrong order, and images pointing at the wrong product.
This review is also where the small pricing maths happens. For example, a source price of 2,590 with a 10% markup set in the tool becomes 2,590 × 1.10 = 2,849 in the CSV. Check a couple of those calculated prices by hand. If the worked examples in the file match your own arithmetic, you can trust the rest of the column far more confidently.
Fix problems in the CSV once, rather than importing first and repairing dozens of product pages inside Shopify afterwards.
Step 4: Test with two products first
This is the step impatient sellers skip, and it is the step that saves the most time. A seller tests with 2 products first out of a 14-product collection, checks the import, then imports the remaining 12 (14 − 2 = 12) once the test looks right.
Do the test import at Shopify Admin → Products → Import, using a small file containing just those two products. When it finishes, open both products in Shopify and check them as a customer would: title, description, every variant and its price, the compare-at price if there is a sale, the SKU, and every image. Then preview the product page in your theme.
If something is wrong — a variant missing, an image swapped, a price in the wrong place — the fix is small, because only two products are affected and the pattern of the error is easy to see in the CSV.
Step 5: Fix issues, then import the rest
Apply whatever the test taught you to the full file. Maybe image order needs adjusting, or a column needs correcting, or titles need shortening. Re-check the edited rows, then run the full import with the remaining products at the same Shopify Admin → Products → Import screen.
After the full import, work through a sample from each collection rather than admiring the total count. Open several products at random, check variants and images, and confirm the products appear in the right collections in your storefront. Counts tell you products arrived; opening them tells you they arrived correctly.
Step 6: Final store checks
Before announcing the move, confirm prices display in the correct currency, sale prices show the compare-at price properly, and hidden products from the source have not accidentally gone live. Keep your reviewed CSV somewhere safe as a backup of exactly what was imported.
Frequently asked questions
Can I import products into Shopify without a CSV?
You can add products one by one by hand in Shopify Admin, which is fine for a handful of items. For a whole catalogue, a CSV import is far faster and more consistent.
What happens if the import shows errors?
Shopify reports which rows failed and why. Fix those rows in your CSV — usually a formatting or missing-value problem — and import just the corrected products again.
Should I keep my old store open during the move?
Yes, keeping the source store live while you test means you can compare listings side by side. Close or redirect the old store only after the Shopify versions are checked and live.
Start with your first collection
Pick one small collection, not your entire catalogue, and work through plan, extract, review, and the two-product test in one sitting. The Shopify Product Extractor will build the CSV for you from a product or collection URL, and once your test import looks right on the live store, bringing over the remaining products becomes a routine you already know works.