How to Create SKU Numbers: A System That Scales With Your Catalog

how to create SKU numbers, one SKU code broken into category, product, and variant segments.

Key takeaways

  • A SKU (stock keeping unit) is the internal code you assign to each sellable product and variant to track it, and you control it, unlike a UPC or an Amazon ASIN, which are external identifiers.
  • A good SKU reads general to specific, from category to product to variant traits like size and color, stays roughly 8 to 16 characters, and uses only letters, numbers, and dashes.
  • Never start a SKU with a zero, and avoid lookalike characters like the letter O against zero and the letter I against one, because leading zeros drop in spreadsheets and lookalikes cause mis-scans and duplicate records.
  • Build SKUs from attributes that never change, and keep price, season, and supplier out of the code, because data that moves goes stale and tempts you into recycling a code.
  • Use one master SKU per product across every channel, and map each channel’s own field, like the Shopify SKU and the Amazon seller SKU, back to it so your systems agree on what a unit is.
  • Your SKU scheme is a finance decision, because SKU-level COGS, inventory valuation, contribution margin by product, and reorder points all key off these codes.

A SKU is the code that ties a product to its stock, its cost, and its margin, so the way you build your SKUs decides how clean those numbers stay as you grow. A disordered scheme reads fine at 40 products and starts to buckle at 400. Here’s the format, the rules, and the worked examples to get it right the first time.

What is a SKU number?

A SKU, or stock keeping unit, is a short internal code your business assigns to each product and variant so you can track its stock, cost, and sales on their own. You create and control your SKUs, which sets them apart from a UPC or barcode, a standardized number that stays the same for that product everywhere it sells.

The distinction matters because three identifiers get muddled all the time. Your SKU is yours: you invent the format, and it means whatever you decide.

A UPC (universal product code) is the barcode number issued through GS1, the global standards body, and it holds constant across every retailer that carries the item.

An ASIN is Amazon’s own product identifier, assigned by Amazon, so it belongs to the listing rather than to you.

You’ll carry all three at times, and keeping them straight is the first step toward books that reconcile. SKUs live on the product record in your ecommerce platform, on your marketplace listings, and in the inventory and accounting systems behind them, which is why a clean scheme pays off across your whole ecommerce accounting stack.

Think of a SKU as the primary key for your inventory and finance data. Every stock count, cost, and margin figure hangs off it, so the codes you choose now decide how clean those numbers stay as you scale.

What a good SKU number looks like

Read a well-built SKU left to right and it moves from general to specific, from the broad category down to the exact variant. That order groups your catalog into families that sort and filter cleanly, so every black tee or every medium lands together in one click.

Keep each attribute in a fixed position and a consistent length, and your systems can parse the code back into its parts on their own.

Take TSH-CRW-BLK-M. The TSH marks the category, a t-shirt; CRW is the style, a crew neck; BLK is the color, black; and M is the size, medium. Four segments, each doing one job, and the same pattern stretches across the rest of the catalog.

SKU Category Product Attributes Reads as
TSH-CRW-BLK-M T-shirt Crew neck Black, Medium Black crew-neck tee, medium
BTL-SS-24 Bottle Stainless 24 oz 24 oz stainless bottle
SUP-BRY-60 Supplement Berry 60 count Berry supplement, 60-count
KIT-START-01 Kit Starter Version 01 Starter bundle, first version

Intelligent vs sequential SKUs, and which to use

Every SKU scheme sits somewhere between two approaches, and choosing the right spot matters more than any single code you write.

  • Intelligent SKUs: These carry readable attributes right in the code, like TSH-CRW-BLK-M, so a person can glance at a pick list or a shelf label and know the item at once. They read fast and work well for catalogs up to a few thousand items.
  • Sequential SKUs: These are running numbers with no meaning, like 100001 and 100002, with the attributes stored in your system rather than the code. They never run out of format, they resist the urge to overload the code, and they scale cleanly into the tens of thousands.
  • A semi-intelligent scheme: This is the middle path we recommend for a growing brand, a short readable prefix followed by a running number, like TSH-100001, which stays human-readable and still scales without a ceiling.

How to create SKU numbers, step by step

Here’s the sequence to build a scheme you won’t outgrow. Do it once, write it down, and every new product slots into place.

  1. List the attributes that matter: Pick the handful that drive your reporting and picking, usually category, product, and variant traits like size and color, and leave the rest out.
  2. Set the order and the widths: Arrange those attributes from general to specific, and lock a fixed length for each segment so the codes stay parseable.
  3. Choose your codes and write a legend: Assign a short code to each attribute value, BLK for black, and record every one in a one-tab key so the scheme is documented and repeatable.
  4. Pick one separator: Use a single dash between segments and apply it the same way on every SKU, with no spaces or slashes.
  5. Assign and check for uniqueness: Generate the SKUs and confirm each points to exactly one sellable unit, with no duplicates hiding in the list.
  6. Write down the rule for new products: Record how the next SKU gets built so the next person, or the next you, extends the scheme instead of inventing a fresh one.

SKU formatting rules that keep your data clean

A short set of formatting rules separates a scheme that stays clean from one that quietly corrupts your data. Each rule exists to stop a specific failure.

  • Keep it 8 to 16 characters: Long enough to describe the item, short enough to read, type, and scan without error.
  • Use only letters, numbers, and dashes: Spaces, slashes, and symbols break spreadsheet exports, URL fields, and barcode software.
  • Uppercase everything: One case across the catalog stops a lowercase copy of a code you already use from slipping in.
  • Never start with a zero: Spreadsheets strip leading zeros, so 0012 becomes 12 and your SKUs stop matching across systems.
  • Avoid lookalike characters: The letter O against zero and the letter I against one cause mis-scans and duplicate records, so leave them out.
  • Keep out data that changes: Price, cost, season, and supplier all move, and a code that carries stale data tempts someone into recycling it.
  • Never reuse a retired SKU: Recycling a code merges two products’ sales, cost, and stock history into one, and the tangle is hard to unwind.
  • Don’t adopt the manufacturer’s part number: You don’t control it, and it can collide across suppliers, so keep your own code as the master.

Parent SKUs and variants

Any product that comes in sizes, colors, or flavors needs two levels of SKU. The parent, sometimes called a style SKU, identifies the product; each variant adds its distinguishing traits to that parent.

The variant is the unit you stock, cost, and reorder, so the variant SKU is the one that carries through to your inventory counts and your P&L, while the parent exists for grouping and reporting.

Bundles and kits are their own case: a kit gets its own SKU with a bill of materials behind it, so its cost rolls up from the components. For the crew-neck tee, the parent is TSH-CRW, and each sellable variant extends it.

Variant SKU Color Size
TSH-CRW-BLK-M Black Medium
TSH-CRW-BLK-L Black Large
TSH-CRW-WHT-M White Medium
TSH-CRW-WHT-L White Large

SKUs across Shopify, Amazon, and your other channels

Sell on more than one channel and the same physical unit can pick up a different code in each system, which quietly breaks any report that combines them. The fix is a discipline: one master SKU per product that you own, used everywhere, with each channel’s own field pointing back to it.

When the same unit carries one code on your website and another on Amazon, your combined inventory and margin numbers can’t line up without a manual crosswalk, and that crosswalk is where errors creep in. Pick the master once and hold every channel to it.

Where the channels meet in the books, reconciling Amazon settlements against your ledger, the master SKU is what makes the tie-out possible. Keeping the identifiers straight is what makes the discipline stick.

  • Your Shopify SKU: A free-text field on each variant, so you fill it with your master SKU and it travels with the product.
  • Your Amazon seller SKU: Also yours to set, while Amazon separately assigns an ASIN to the listing, which is Amazon’s identifier and never your SKU.
  • A UPC or GTIN: A global barcode number from GS1, required to list in some categories, and separate from the SKU you use internally.

How to fix a SKU system that grew by accident

Plenty of brands never build a scheme on day one. The SKUs accrete product by product, and by a few hundred items the codes are a patchwork of formats. You can fix that without throwing away your sales history, as long as you don’t rename codes in place.

Renaming a live SKU orphans its past orders, stock movements, and cost history, because those records still point at the old code. So treat the cleanup as a migration rather than a rename.

  • Design the new format first: Lock the scheme and its legend before you touch a single product, using the rules above.
  • Build a crosswalk: Map every old SKU to its new one in a two-column sheet, so nothing is lost and you can still translate historical reports.
  • Roll the new format out on new products: Apply it to everything you add from now on, so the mess stops growing while you work through the back catalog.
  • Migrate the back catalog in batches: Move existing products over in groups, updating each channel and your inventory system together, and keep the crosswalk current as you go.
  • Retire old codes and leave them retired: Mark migrated SKUs as closed so no one recycles them later and re-tangles the history you cleaned up.

Why your SKU scheme is also a finance decision

Every number you use to run the business keys off the SKU, and that is what makes the scheme a finance decision at heart. Your cost of goods sold is tracked per code, so the way you calculate COGS per product depends on every unit having one clean SKU.

The inventory costing methods you use, FIFO or weighted average, attach a cost to each SKU.

Your inventory turnover is read per SKU to show what is selling and what is not. And you spot dead stock by watching how long each SKU has been sitting on the shelf.

Recycle a code or let duplicates creep in, and every one of those reports inherits the mess, usually without warning. A messy scheme doesn’t announce itself; it surfaces as a margin report you can’t trust and a reorder that fires on the wrong item.

Get the codes right once and the payoff compounds: clean margins, reorders that land on the right unit, and a catalog you can analyze.

Frequently asked questions

How do I create a SKU number?

Create a SKU number by picking the attributes that matter, category, product, and variant traits like size and color, ordering them from general to specific at a fixed width, using only letters, numbers, and dashes, and recording each code in a legend. Keep it 8 to 16 characters, skip lookalike characters, and never start with a zero.

What is the difference between a SKU and a UPC or barcode?

A SKU is your own internal code that you create and control, while a UPC or barcode is a standardized number issued through GS1 that stays the same for a product everywhere it sells. You use the SKU to run your own stock, cost, and sales; the UPC exists so any retailer can scan the same item.

How many characters should a SKU be?

A SKU should run about 8 to 16 characters, long enough to describe the item and short enough to read, type, and scan without error. Past 16 characters they get hard to handle, and very short codes run out of room as the catalog grows.

Should SKUs use numbers or letters?

SKUs work best with a mix of letters and numbers separated by dashes, kept uppercase and free of lookalike characters like the letter O and zero. Letters make the code readable, numbers keep it compact, and a consistent format keeps it sortable.

Can two products have the same SKU?

No, a SKU has to be unique to a single sellable unit, and even a retired SKU should never be reused, because reusing one merges two products’ sales, cost, and stock history. If two items share a code, your counts and your margins stop meaning anything.

Do I need a SKU generator?

Most catalogs don’t need a SKU generator, because a documented format and a spreadsheet handle the job until you’re assigning codes in real volume. A generator helps once you’re onboarding hundreds of new items at a time and want the format enforced automatically.

Share the Post:

BEST VALUE

The Full Library

All 20 templates. Every category, every model.

The Full Template Library

Every operator-grade workbook in the catalog, priced as one purchase.

20 templates · both platforms · lifetime updates + new releases

Table of Contents