Key takeaways
- Clean the list before you load it. Five tidy columns (name, price, cost, quantity, category) matter more than any tool.
- Save as CSV, then check a preview of what will be created before anything is saved. Fixing 20 rows on screen is easier than fixing 400 products later.
- Typing 300 products by hand takes hours. A clean import takes minutes, and the cleaning is the part that makes your stock numbers trustworthy.
Why the product list is the hardest part of starting
Most owners who put off moving from a notebook to a system are really putting off one job: getting the product list in. A shop with 300 products can easily have 300 names, 300 prices, 300 costs and 300 stock counts to enter. Typed one at a time, that is a few long evenings.
The good news is that you probably already have most of it written down, in an exercise book, a price list, a supplier invoice or an Excel sheet. The work is not typing. It is cleaning, so the list can be loaded in one go. This guide covers the manual method first, which works with any system, then shows how Shopkeepa handles the loading step.
Step 1: Get everything into one sheet
If your list is on paper, type it into a spreadsheet once. Google Sheets, Excel and the free LibreOffice all work. If it is spread across several files, copy them into one sheet. One product per row, one fact per column.
Do not worry about being perfect yet. Just get one row for every product you sell. Walk the shelves with the sheet if you are unsure whether something is missing.
Step 2: Use five clean columns
Keep only the columns you will actually use. For a small shop these five are enough:
| Column | What to put | Common mistake |
|---|---|---|
| Name | Brand, product and size in one line, written the same way each time | "Coke" in one row, "Coca Cola 500ml" in another |
| Price | Selling price as a plain number, like 2.50 | Currency symbols, "2.5 each", or ranges |
| Cost | What you pay per unit, as a plain number | Left blank, or the price of a whole case |
| Quantity | Whole units on the shelf now | "About 10", "1 box", or half units |
| Category | One word such as Drinks, Snacks, Cleaning | Fifteen near-duplicate categories |
Cost is optional, but fill it in where you can. Without it you cannot see profit later. See how to price products if you are unsure what your cost should include.
Step 3: Clean the data
This is where imports succeed or fail. Work down the sheet with this checklist:
- Remove duplicates. Sort by name and look for the same product twice. Merge the quantities.
- Standardise names. Pick a pattern, for example Brand + Product + Size, and apply it everywhere. Naming and organising products has a full method.
- Strip symbols from numbers. Delete $, commas and words so the price column is only numbers.
- Fix blanks. A blank price will usually need to be filled in or the row will be flagged.
- Round quantities to whole units. Count anything doubtful again.
- Cut the extras. Delete colour-coding, notes columns and merged cells. A plain table loads best.
A quick way to find duplicates in Excel or Sheets: sort the Name column A to Z and scan the neighbours. Another is to add a column with `=COUNTIF(A:A,A2)`. Any number above 1 is a repeat.
Step 4: Save as CSV
CSV stands for comma-separated values. It is a plain text version of your sheet that nearly every system can read. In Excel, choose File, Save As, then CSV (Comma delimited). In Google Sheets, choose File, Download, then Comma-separated values. Keep the original Excel file as a backup.
Open the CSV once to check it looks right. If a product name contains a comma, such as "Rice, 1kg", the sheet software normally wraps it in quotes for you. If names look split across columns, rename those products to remove the comma.
Worked example: 12 messy rows to a clean list
Here is a typical notebook page after typing it in, and what it should become.
| Before | After (name / price / cost / qty / category) |
|---|---|
| coke 500, $2.50, 14 | Coca-Cola 500ml / 2.50 / 1.60 / 14 / Drinks |
| Coca Cola 500ml, 2.5, 6 | Merged into the row above: quantity 20 |
| Rice 5lb $6 (3 bags) | Rice 5lb Bag / 6.00 / 4.40 / 3 / Groceries |
| bread ~ 8 loaves | Sliced Bread Loaf / 3.00 / 2.10 / 8 / Bakery |
| Lime juice 1/2 doz | Fix first: count bottles, enter 6 / Drinks |
Three real problems appeared: a duplicate, an unclear quantity and missing costs. Finding them in the sheet takes seconds. Finding them after 300 products are saved takes much longer, because stock figures built on bad data are wrong from day one.
How Shopkeepa helps
Shopkeepa has a bulk import for CSV and Excel files. You choose your file, match your columns to Shopkeepa's fields (name, price, cost, quantity, category), and see a preview before anything is saved. The preview is where you catch the row with a blank price or the product that looks like a duplicate. Shopkeepa also warns you about possible duplicates, so "Coke 500" and "Coca-Cola 500ml" do not quietly become two products.
Prepare your sheet
Use the five columns above and save it as a CSV or keep it as an Excel file.
Choose the file
Pick it in the import screen and map each column to a Shopkeepa field.
Read the preview
Check the rows, fix anything flagged, and remove rows you do not want.
Confirm
Only then are the products created, with their opening stock recorded.
Anything you miss can be added later with quick add, which needs only a name, price and quantity. After importing, a stock count is a good way to confirm the opening numbers. Learn more about inventory tracking. Shopkeepa is in development, and early access shops will help shape it.
Keep your shop on track with Shopkeepa
Shopkeepa is in development. Join the waitlist for early access and help shape it.
Get early access