Free tool · no sign-up
Type your option values once. Get a clean, consistent SKU for every combination, with any collision flagged before it reaches your store. Export a plain CSV, or a Shopify product CSV you can import. Everything runs in your browser.
A SKU is your own code for one item. It has one job: the same physical thing carries the same code everywhere. The pattern decides how it reads.
{BASE} the base code ·
{1} {2} {3} the option values ·
{N} a running number
This is the rule that matters most, and the one most stores break. If the same blank tee sits behind forty design listings, every one of those listings should carry the same blank's code. The SKU is what tells you — and any inventory tool — that those forty listings are one shelf. Give each listing its own invented code and that link is gone for good.
Put the stable part first and the variable parts after it, widest to narrowest:
BLANK-TEE-WHT-M. Sorted, your list then groups itself. A code that starts with the
size scatters the same product across the sheet.
Letters, numbers, and hyphens only. A space, a slash, or a leading zero gets mangled by Excel, a barcode scanner, or a CSV import. The generator above strips them for you.
Prices change; the item does not. A SKU with 24 in it for £24 becomes a lie at
the first sale, and you cannot fix it without renaming stock you have already sold.
In a handwritten count or a warehouse shout, O and 0, and
I, l and 1, are the same character. Pick one of each pair
and keep to it.
A SKU (stock keeping unit) is the code you give one sellable item. Shopify does not require it — you can sell with the field empty. It is required by you: it is how a count, a supplier order, a barcode, and a report all point at the same thing.
No. Shopify leaves the field blank and never fills it. That is why a store that has grown by hand usually holds three or four different naming habits. Generating them from one pattern, as above, is the cheapest way back to one habit.
Yes, and sometimes they should — when the listings really are one item. Be clear about what Shopify does with that, though: it keeps a separate inventory count for each listing and never links them. Sharing the SKU records the truth; it does not make Shopify act on it.
Short enough to read aloud, long enough to stay unique: roughly 8 to 20 characters. The generator warns you past 30, because long codes get truncated by scanners, labels, and some marketplace imports.
Shared codes record that two listings are one item. They do not stop the oversell, because Shopify still keeps a separate count for each listing, and a busy minute can sell the last unit twice. OneShelf reads those shared codes and puts one base stock behind them. Each sale deducts from that single number, online and at the register, and the checkout blocks the second order instead of apologising for it later.
Install on Shopify See how it works
OneShelf is on the Shopify App Store. It is free up to 10 linked listings.