A SKU is not a filing convention. It’s the identifier that lets a physical object on a shelf, a row in your records, and a listing on three different marketplaces all refer to the same thing.

Most resellers get by without one for a surprisingly long time, then hit a wall where every operation — finding an item, reconciling counts, figuring out what a payout corresponds to — requires human memory. This guide is about designing an identifier scheme that doesn’t need to be redesigned later, because redesigning it means relabeling everything you own.

What a SKU Has to Do

Four jobs, in priority order:

  1. Uniquely identify one physical object. Not one product — one object. If you have three copies of the same title in different conditions, they need three identifiers.
  2. Be findable on the shelf. You should be able to hold an item and read its identifier without consulting anything.
  3. Be typeable and speakable. You’ll enter it on a phone in a garage and read it aloud from across a room.
  4. Survive channel constraints. Marketplaces have their own rules about SKU length and permitted characters.

Everything else is optional, and most SKU disasters come from trying to make the identifier do a fifth job it shouldn’t.

The Big Mistake: Encoding Meaning

The tempting scheme looks like this:

VNL-ROCK-1978-VG+-B12-045

Media type, genre, year, condition, bin, sequence. It’s readable, it’s self-documenting, and it will break within a year. Here’s why.

Encoded facts change. You regrade the record after play-testing. You move bin 12 to a different shelf. Now the SKU is a lie — and you either relabel (expensive) or accept that your identifiers say untrue things (corrosive).

Categories are never as clean as they look. Is a 1978 reissue of a 1967 album “1978” or “1967”? Is it rock or psych? You will answer differently on different days, which means the same item type gets different SKUs, which defeats the purpose.

Length compounds. Long SKUs are error-prone to type, awkward on labels, and can bump against marketplace field limits.

The underlying error is treating the identifier as a database. Attributes belong in fields, where they can be edited, filtered, and corrected. The identifier’s only job is to be a stable pointer.

What Actually Works

A short prefix plus a sequential number.

A-0417

That’s it. The prefix can carry one genuinely stable dimension — a broad inventory stream, a storage building, a sourcing year — or nothing at all. The number just increments.

Properties that make this work:

  • Nothing encoded can become wrong. A sequence number is never inaccurate.
  • Assignment requires no thought. At intake you take the next number. No categorization decision, no lookup, no hesitation. This matters more than it sounds like it should, because intake friction is what causes people to abandon their own system.
  • It’s short. Easy to write on a sticker, read aloud, and type on a phone.
  • It sorts naturally. Zero-pad to a fixed width and lexical sort equals numeric sort everywhere, including in spreadsheets and marketplace exports.

If you want the identifier to tell you where something is, put location in a location field and let the system answer that question. That’s what fields are for, and unlike the SKU, a location field can be updated when you move the item.

Practical Design Rules

Zero-pad generously. A-0417 not A-417. Pick a width you won’t exceed — four digits gets you to ten thousand items per prefix, which is beyond most operations.

Use uppercase, digits, and a single separator. Avoid characters that get mangled in exports or URLs. Avoid ambiguous glyph pairs if you’re hand-writing labels: the classic offenders are 0/O and 1/I/l. Some sellers drop the letters O and I from their alphabet entirely for this reason.

Never reuse a number. When an item sells, its SKU retires permanently. Reused identifiers destroy your ability to trace a payout back to an item, which is the whole reason for having history.

One physical object, one SKU. Three copies of the same record get three SKUs. This is what makes per-item cost basis and condition tracking possible, and it’s the thing multi-quantity thinking breaks. If you genuinely have identical new-in-box units where condition and cost are the same, a quantity count is fine — but for used goods, assume one-to-one.

Write it on the item. A removable label, a sticker on the poly sleeve, a tag on the garment. The identifier must exist in the physical world, not only in software. This is what lets you migrate systems, recover from a bad export, or hand a box to someone else without a tutorial.

An item detail view showing a single unit's availability, purchase total, and readiness score

Where SKUs Earn Their Keep

Three moments, all of which are painful without them.

Shipping. An order comes in. The SKU tells you exactly which physical object to pull, including which of your three copies. Without it, you’re matching on title and condition and hoping.

Reconciliation. Comparing records to shelves is a mechanical scan when every item is labeled and a memory exercise when it isn’t. This is the difference between a fifteen-minute weekly inventory check and a task you keep postponing.

Money. Marketplace payouts arrive as aggregated deposits. Reconstructing which items produced a given deposit is straightforward when every line carries a SKU that maps to a cost basis, and effectively impossible when it doesn’t. This is the single biggest reason to adopt SKUs before tax season rather than during it.

They also matter the moment you sell in more than one place. The SKU is the key that lets one physical item’s listings in different channels be recognized as the same object — which is what makes a single authoritative quantity possible at all.

Retrofitting an Existing Inventory

If you already have hundreds of unlabeled items, don’t try to label everything in one weekend. You won’t finish, and a half-labeled inventory is worse than an unlabeled one because you can’t trust either state.

Do it in this order:

  1. Assign SKUs to everything in your records now, in bulk, sequentially. This is a fill-down operation and takes minutes.
  2. Label physically as you touch items. Every time you pull something to ship, photograph, or reprice, put a label on it. Within a couple of months most of your active inventory is labeled, because active inventory is what you touch.
  3. Sweep the remainder by location. One bin at a time, whenever you have twenty spare minutes.
  4. Push SKUs to your live listings. Most channels let you bulk-edit a custom label or SKU field. Doing this is what connects your records to your channels, and it’s usually the step people skip — leaving them with clean internal data that still can’t be matched against a marketplace export.

The fill-down step alone gets you most of the benefit for internal purposes. The physical labeling is what makes it survive contact with your actual shelves.

The Test

Pick a random item off a shelf. Can you tell, from the item alone, what you paid for it and where it’s listed — within thirty seconds, without walking anywhere?

If yes, your identifier scheme is doing its job. If you have to describe the item to your own search function and hope, it isn’t yet.

Most sellers who move off manual tracking in a spreadsheet discover the SKU was the actual missing piece all along — not the tool. The tool just made the absence obvious.