How to manage SKUs
A SKU has exactly one job: somebody sold something, and you have to walk into a room and put your hand on the right object. Every scheme that fails, fails because it was asked to do more than that.
It is a label, not a description
The tempting design is a code that tells you what the thing is.
ELEC-SONY-PS4-GOOD-2409 looks organised. It is a trap, for three reasons.
It is long, so you mistype it. It encodes facts that change - you regrade the item to Fair and the code now lies. And it does not distinguish the two identical controllers sitting next to each other, which is the exact moment you needed it to.
Your inventory already knows the brand, the category and the condition, in fields you can filter and correct. The SKU should not repeat any of it. It only has to be unique, short, and printable.
Two schemes that work
Sequential. A1041, A1042, A1043.
Nothing but the next number. Fast to assign, impossible to get wrong, and it tells you
roughly when something came in, which is a decent proxy for how long it has been
sitting.
Location-based. B-04-12 meaning shelf B, box 4, slot 12.
The code is the address, so finding the item needs no lookup at all. It costs
you a rule: when an item moves, the code has to move with it, or it starts lying.
Sequential is better when things move around. Location-based is better when they do not. Pick one and do not mix them.
Whichever you choose, keep separate what the code identifies and where the thing lives. If your SKU is sequential, store the location as a location. Reselling inventory moves; a code that has to be reprinted every time you tidy a shelf will not survive the month.
Characters that cause trouble
You will read these codes off a sticker in bad light, and sometimes over the phone. Zero and capital O are indistinguishable in most fonts, as are one, capital I and lowercase L. Drop them from your alphabet entirely and you remove a whole class of mistake for free.
Keep it short - four to six characters is plenty for tens of thousands of items - and avoid spaces and slashes, which have a way of breaking things when the code is typed into a marketplace field or a spreadsheet.
The unit, not the product
This is the distinction that decides whether a SKU scheme holds up.
A product is the thing in the abstract: a specific model of headphones. A unit is one physical object in your possession. If you hold five of that model, you have one product and five units, and they are not interchangeable - one has a cracked hinge, one still has the box, one cost you 50 and another cost you 300 because it came out of a different lot.
The SKU belongs to the unit. Give all five the same code and the moment one sells you cannot say which one left, so you cannot say what that sale actually made. Per-unit notes have the same rule: "cracked hinge" is true of one and false of the other four, and it must never be copied when you duplicate an item.
Never reuse a code
When something sells, its SKU retires with it. Reusing A1041 for a new
arrival saves nothing and costs you your own history: a return arrives six weeks later
against a code that now points at a completely different object.
Numbers are free. Keep counting.
Print it and stick it on
A SKU that exists only in your inventory system is half a system. The physical object needs to carry the code, or you are still searching shelves by eye.
A cheap thermal label printer pays for itself quickly, but a roll of masking tape and a marker works and costs nothing. What matters is that the code is on the item, faces outwards, and does not come off in a box.
When the marketplace wants a SKU too
Most selling platforms have a custom SKU field. Put your code in it, unchanged. When a sale notification arrives it carries the SKU, and the whole point of the system is that you can then go straight to the shelf without opening anything else.
If you list the same unit in more than one place, the code stays the same in all of them. It identifies the object, not the listing.
The test
A scheme is working if a sale notification containing a five-character code gets the right item into a box in under a minute, by someone who is not you.
If it takes longer than that, the code is carrying meaning it should not be carrying.
Flippo tracks units, not just products
Every item is its own unit with its own SKU, condition, cost and location - so when one of five sells, you know which one, and what it made.