← Blog · Barcodes · 4 min read
EAN-13 vs UPC-A vs Code 128: Which Barcode You Need
Three symbologies cover almost every job a small business has. The decision is not technical taste — it is where the code will be scanned and who assigned the number inside it.
Selling retail outside North America: EAN-13
Thirteen digits, fixed length, read by every till on earth. The first digits are a country-and-company prefix assigned through GS1; the last is a check digit computed from the other twelve. If your product will sit on someone else’s shelf, this is the one — and the number must come from a GS1 licence, not be invented. The small-shop guide covers when you genuinely need that licence and when you do not.
Selling retail in the US and Canada: UPC-A
Twelve digits and structurally the same family — a UPC-A is an EAN-13 with a leading zero, and modern tills read both interchangeably. Choose it when your distributor or marketplace asks for UPC specifically; otherwise EAN-13 is the safer international default.
Everything internal: Code 128
Shelf labels, asset tags, tote boxes, work orders — anything scanned only by your own equipment. Code 128 encodes letters as well as digits, has no registration authority and no fixed length, which makes it perfect for SKUs like WH-2481-A. The trade: a retail till will beep at it without knowing what to do, because it is not a retail number.
Books: ISBN, which is secretly EAN
An ISBN is a numbering system, not a barcode. On the back cover it is printed as a normal EAN-13 beginning 978 or 979 — the generator here accepts ISBN-10 or ISBN-13 and converts either into the EAN a till actually reads, validating the check digit both ways.
| EAN-13 | UPC-A | Code 128 | |
|---|---|---|---|
| Length | 13 digits, fixed | 12 digits, fixed | variable, letters + digits |
| Number assigned by | GS1 licence | GS1 licence | you |
| Scanned at | any retail till | any retail till | your own scanners |
| Check digit | automatic, position 13 | automatic, position 12 | internal checksum |
The two mistakes that survive this table
First: printing bars in red because it matches the brand. Laser tills read in red light, so red bars vanish — the generator’s safety check will warn you before the printer does not. Second: trimming the quiet zone either side of the bars to fit a label; it is part of the symbol, not white space.
Static code — nothing expires, no account, no sign-up.
Make a barcode →