POD SKU Naming Convention: Code Design, Blank, Color, and Size

Build a stable POD SKU system for design, blank, color, and size, with mapping, validation, migration, and rollback controls.

Operating rules

one variant, one identity; fixed field order; controlled dictionaries; master mapping table; never reuse a retired SKU

1. Define the job of a SKU

Define the job of a SKU: field definition and owner

A durable SKU gives one sellable variant one stable identity across catalog, order, asset, supplier, and support records. Keep volatile facts such as price, stock, bestseller status, and campaign state outside the code. Decide whether region or supplier belongs in identity only when it creates a materially different fulfillable object.

  • field definition and owner
  • unique combination check
  • channel compatibility

2. Audit current identifiers and conflicts

Audit current identifiers and conflicts: unique combination check

Export active products, historical orders, supplier identifiers, design assets, and warehouse aliases before writing a new format. Classify duplicate, missing, ambiguous, and unmappable codes. Freeze the creation path that spreads each conflict, then record channel, product family, affected history, owner, and temporary control.

  • field definition and owner
  • unique combination check
  • channel compatibility

3. Fix the field order and separator

Fix the field order and separator: channel compatibility

Use one field sequence such as design, blank, color, and size, but treat the example as a local choice rather than an industry standard. Select one separator and a conservative character set supported by every destination. Never let channels silently truncate or reorder the master identity.

  • field definition and owner
  • unique combination check
  • channel compatibility

4. Create stable design codes

Create stable design codes: old-to-new alias

A design code should point to an approved design identity, not a temporary filename. Keep production-file version, export date, print position, and license evidence in the asset record. A copy or mockup update usually keeps the same identity; a materially different printed work requires review.

  • field definition and owner
  • unique combination check
  • channel compatibility

5. Map blank codes to real supply objects

Map blank codes to real supply objects: field definition and owner

An internal blank master should map the stable blank code to supplier product IDs, material, fit, print compatibility, region, substitutes, and retirement status. A supplier switch may keep the SKU only when samples and specifications prove the buyer-facing object remains equivalent.

  • field definition and owner
  • unique combination check
  • channel compatibility

6. Control color and size vocabularies

Control color and size vocabularies: unique combination check

Build controlled color and size dictionaries. Map supplier display names to internal identities, preserve meaningful physical differences, and link every size to its blank-specific size chart. Buyer-facing names can be localized without changing the underlying identity.

  • field definition and owner
  • unique combination check
  • channel compatibility

7. Keep a master SKU mapping table

Keep a master SKU mapping table: channel compatibility

The mapping table preserves complete meaning: SKU, component IDs, channel variant IDs, supplier IDs, effective dates, retirement date, replacement SKU, owner, and notes. Do not place customer names, addresses, personalization, cost, or changing status inside the SKU.

  • field definition and owner
  • unique combination check
  • channel compatibility

8. Generate, validate, and migrate safely

Generate, validate, and migrate safely: old-to-new alias

Generate codes from approved dictionaries and block save when a field is missing, a combination is not unique, characters or length are invalid, or a channel mapping conflicts. Migrate one low-risk family at a time, preserve old-to-new aliases and historical orders, test refunds and replacements, and keep a rollback export.

  • field definition and owner
  • unique combination check
  • channel compatibility

Decision matrix

new design on existing blankActionEvidenceBlocker
new design on existing blankcreate or retain identityapproved asset or sampleambiguity, missing mapping, or reused code
equivalent supplier replacementcreate or retain identityapproved asset or sampleambiguity, missing mapping, or reused code

FAQ — Frequently asked questions

Must a SKU be readable at a glance?

No. It should follow an explainable field order and resolve in the mapping table, but stability and uniqueness matter more than spelling out every product fact. A durable SKU gives one sellable variant one stable identity across catalog, order, asset, supplier, and support records. Keep volatile facts such as price, stock, bestseller status, and campaign state outside the code. Decide whether region or supplier belongs in identity only when it creates a materially different fulfillable object.

Should supplier codes appear in the SKU?

Only when the supplier difference creates a different sellable or fulfillable object. Usually an internal blank code plus supplier mappings is more durable.

Does a display-name change require a new SKU?

Usually not when only buyer-facing wording or localization changes. Reassess identity when the physical attribute or sizing system changes.

Does personalization need a unique SKU?

Use the stable SKU for the base variant and store names, numbers, or artwork in protected order-line or production fields, never inside the SKU.

Should a messy catalog be rebuilt at once?

Stop new errors first, build aliases and a conflict register, then migrate low-risk product families in batches with tests and rollback points.

Next step

A durable SKU gives one sellable variant one stable identity across catalog, order, asset, supplier, and support records. Keep volatile facts such as price, stock, bestseller status, and campaign state outside the code. Decide whether region or supplier belongs in identity only when it creates a materially different fulfillable object. Generate codes from approved dictionaries and block save when a field is missing, a combination is not unique, characters or length are invalid, or a channel mapping conflicts. Migrate one low-risk family at a time, preserve old-to-new aliases and historical orders, test refunds and replacements, and keep a rollback export. export one product family; mark component identities; generate ten candidates; test orders and refunds; save rollback

Disclaimer: this is general POD catalog-governance guidance, not platform policy or legal, privacy, tax, financial, or fulfillment advice. Verify current system limits, historical data, privacy requirements, and partner capabilities.