SKU Generator

Create consistent SKU codes for your whole catalogue in seconds — bulk variant matrix, prefixes, sequential numbers, CSV/Excel export. 100% free, no signup, everything stays in your browser.

Product attributes

Build your SKU from ordered segments — category, brand, size, colour or anything else.

Enter several values separated by commas to generate every combination at once (bulk mode).

SKU format

0 = unlimited. Amazon allows up to 40 characters.

Live preview

SHOP-T-S-S-BLU-00118 characters12 combinations
Mixes the letter O and the digit 0 — easy to misread on labels

Generated SKUs (12)

T-ShirtSBlueSHOP-T-S-S-BLU-001
T-ShirtSRedSHOP-T-S-S-RED-002
T-ShirtMBlueSHOP-T-S-M-BLU-003
T-ShirtMRedSHOP-T-S-M-RED-004
T-ShirtLBlueSHOP-T-S-L-BLU-005
T-ShirtLRedSHOP-T-S-L-RED-006
HoodieSBlueSHOP-HOO-S-BLU-007
HoodieSRedSHOP-HOO-S-RED-008
HoodieMBlueSHOP-HOO-M-BLU-009
HoodieMRedSHOP-HOO-M-RED-010
HoodieLBlueSHOP-HOO-L-BLU-011
HoodieLRedSHOP-HOO-L-RED-012

Saved schemes

Save your SKU scheme in this browser and reload it at your next restock — nothing is uploaded.

100% free · No signup · Unlimited use · Everything runs in your browser — your product data never leaves your device.

SKU numbers explained: how to build a naming convention that scales

A SKU (Stock Keeping Unit) is an internal alphanumeric code you assign to a product so you — not a manufacturer or a marketplace — can identify, track and reorder it. Print "SKU-8842-BLU-M" on a pick ticket and a warehouse worker in Toronto knows exactly which item, colour and size to pull, without opening a catalogue. A good SKU is a compressed description of the product, readable by a person and a spreadsheet formula at the same time.

This free generator goes well beyond the single-item tools that currently dominate this space (Zoho Inventory, Craftybase, ShipBuddies): build a genuine bulk variant matrix across category, size, colour and any other attribute you define, add prefixes, suffixes and zero-padded sequential numbers, catch duplicate codes automatically, get warned about characters that break marketplace imports, and export the whole set straight to CSV or Excel — including a "générateur de SKU" workflow for bilingual EN/FR catalogues. Nothing you type ever leaves your browser — there is no server, no signup and no limit on how many SKUs you generate.

What is a SKU number, exactly?

A Stock Keeping Unit is the smallest unit of a product that your business tracks separately in inventory. If you sell a hoodie in three sizes and two colours, that's six SKUs, not one — each combination needs its own code because each is ordered, stocked and sold independently. The SKU is entirely internal: unlike a barcode, no external body issues it or checks it for uniqueness. You're free to build whatever format suits your operation, as long as it stays consistent and unique across your own catalogue.

Most Canadian retailers build a SKU from three to five short segments — category, brand or supplier, a size or variant code, a colour code, and sometimes a sequential number — joined by hyphens. The result usually lands between 6 and 15 characters: long enough to be meaningful, short enough to read on a shelf label or packing slip at a glance, whether your product data is managed in English, French, or both.

SKU vs UPC, EAN, GTIN, serial and batch numbers

These terms get mixed up constantly, and the confusion causes real inventory mistakes, so it's worth being precise. A UPC (part of the wider GTIN family) is a globally unique barcode number issued through GS1 Canada. It identifies a product to any retailer and supplier on the planet — Canadian Tire, Amazon and a corner store all read the same UPC as the same item. You can't make one up; GS1 licenses company prefixes and you assign numbers within your own block.

A SKU has none of that infrastructure. You invent it, it only has to be unique inside your own systems, and it can (and often should) encode information the UPC never will — which supplier you bought it from, which season it belongs to, or where it sits in your own category tree. Amazon and eBay call your SKU the "seller SKU" or "custom label" precisely because it's yours to define, layered on top of their own listing ID and any UPC/EAN the product carries.

Serial numbers are different again: they identify one individual unit (useful for electronics, tools and anything under warranty), while a batch or lot number identifies a production run (essential for food, cosmetics and anything with an expiry date or recall risk). A SKU sits above both — one SKU can cover thousands of units across many batches and serial numbers.

Step-by-step: designing your own SKU naming convention

Worked example for a small Canadian apparel retailer: category "Hoodie" → HOO, brand "Nova" → NOV, size "Medium" → M, colour "Charcoal" → CHR, giving HOO-NOV-M-CHR. Add a two-digit batch suffix if you restock the same combination from a different supplier later — HOO-NOV-M-CHR-02.

  1. List the attributes that actually help you find stock fast. For most stores that's category, brand or supplier, size, and colour — resist the urge to add more than four or five, or the code becomes unreadable.
  2. Decide an abbreviation rule per attribute. "Hoodie" might become "HOO" (first three letters), "Extra Large" might become "XL" (an initials rule), and a colour list might use a fixed custom mapping so "Charcoal" always shortens to "CHR", never "CHA" one week and "CHR" the next.
  3. Pick one separator and stick to it. A hyphen is the safest universal choice — it survives copy-paste into Excel, Shopify, and most marketplace bulk-upload templates without being reinterpreted as a formula or a date.
  4. Add a sequential number if two products could otherwise collide — e.g. two different suppliers both selling a "blue medium hoodie" under your own abbreviation scheme. Zero-pad it (001, 002…) so the codes sort correctly in a spreadsheet.
  5. Decide on a maximum length before you generate anything. Marketplace fields have hard limits (see below), and a 40-character SKU isn't more informative than a 14-character one — it's just harder to read on a shelf.

Best practices — and the mistakes that come back to bite you

  • Avoid the letter O and the digit 0 together, and the letter I or lowercase l next to the digit 1 — on a printed label or read aloud over a warehouse radio, these are genuinely hard to tell apart. This generator flags both automatically.
  • Never start a SKU with a zero. Excel and Google Sheets silently strip leading zeros when a cell is treated as a number, turning "007-BLU" into "7-BLU" the moment someone re-opens your export. The tool exports SKUs as text specifically to avoid this, but it's still worth avoiding a leading zero in the design itself.
  • Don't encode information that changes — a supplier's cost price, a warehouse bin location, or a promotional price. All three change independently of the product itself, and re-issuing SKUs every time a supplier changes is far more disruptive than the small win of having that detail baked in.
  • Keep the format identical across your whole catalogue, and identical whether the product is listed in English or French — bilingual product names should map to the same underlying SKU abbreviation so a "T-shirt" and a "chandail" for the same item never diverge.
  • Stick to A–Z, 0–9, hyphens, underscores and periods. Accented French characters (é, à, ç) should never appear inside the SKU itself, even on a bilingual product page — reserve them for the display name only.

Marketplace-specific SKU rules for Canadian sellers

Amazon.ca Seller Central: the "Seller SKU" field allows up to 40 characters, but Amazon strongly recommends avoiding characters outside letters, numbers and hyphens — special characters have historically caused listing feed errors, and this applies equally to bilingual EN/FR listings.

Walmart.ca Marketplace: requires a unique SKU per item and, separately, a GTIN/UPC for the product itself — the two are complementary fields in every bulk upload template, and Walmart's item spec rejects listings where the SKU field is blank or duplicated across active items.

eBay Canada: the equivalent field is the "Custom Label", limited to 50 characters, used purely for your own inventory management — it never appears to buyers, making it the ideal place for your full internal SKU even if the public listing title is bilingual.

Whichever platform you sell on, GS1 Canada remains the authority for the UPC/barcode side of your product data — the SKU and the UPC are complementary, not competing, identifiers, and most marketplace listing templates ask for both.

Bulk workflow: from spreadsheet chaos to a clean variant matrix

The single biggest time cost in SKU management is entering size/colour combinations one at a time. If you stock 4 sizes and 5 colours across 3 styles, that's 60 SKUs — manageable in this tool in under a minute, because entering "S, M, L, XL" once against the Size attribute and all five colour names once against Colour generates every combination automatically as a true cartesian matrix, not a queue of single-item forms.

Once generated, sort the results table by any column to spot-check a size run, copy the whole set to your clipboard for a quick paste into an email, or export to CSV or Excel. The Excel export writes every SKU as text, not a number, so codes with leading digits or hyphens import into your inventory system, Shopify, or a marketplace bulk-upload template exactly as generated — nothing gets silently reformatted.

QR code generator