Barcodes Types: UPC, EAN & Code 128 Guide
You need a barcode for your product, and suddenly there’s a dropdown with six confusing options — UPC-A, EAN-13, Code 128, Code 39. Pick the wrong one and retailers might reject your product listing entirely. Here’s what each type actually means, in plain terms.
The Main Barcode Types
UPC-A — 12 digits. The standard barcode on virtually every retail product in the US and Canada. If you’re selling in a physical store or on Amazon in North America, this is very likely what you need.
EAN-13 — 13 digits. Basically UPC’s international cousin, used across Europe and most of the world outside North America. Functionally very similar to UPC-A, just one extra digit.
Code 128 — Alphanumeric, variable length. Used heavily in shipping, logistics, and inventory management rather than retail checkout. Common on shipping labels and internal warehouse tracking because it can encode letters and numbers, not just digits.
Code 39 — Alphanumeric, older standard. Still used in some inventory and internal tracking systems, particularly in industries like automotive and defense, though it’s being phased out in favor of Code 128 in most new setups.
ISBN (Bookland EAN) — A specialized EAN-13 variant specifically for books, encoding the ISBN number in a retail-scannable format.
Which One Do You Actually Need
- Selling a physical retail product in North America? UPC-A.
- Selling internationally, especially Europe? EAN-13.
- Managing warehouse or shipping labels internally? Code 128.
- Publishing a book? ISBN/Bookland EAN.
- Working with an older existing system that already uses Code 39? Stick with it for consistency, but don’t choose it new unless required.
Practical Tips & Troubleshooting
- Retailer rejected your barcode? Most commonly this means you generated the wrong type for their system — Amazon and major retailers almost always require UPC-A or EAN-13, not Code 128 or Code 39, for product listings.
- Barcode has letters in it but you generated UPC-A? UPC-A is numbers-only. If your product code has letters, you need Code 128 instead, or you’ll need a purely numeric code assigned specifically for retail.
- Confused between UPC and EAN for a global product? EAN-13 can actually scan on most US systems too (it’s a superset of UPC-A), so if you’re selling both domestically and internationally, EAN-13 is often the safer single choice.
- Internal inventory only, never sold at retail checkout? You have more freedom here — Code 128 is generally the most practical modern choice for internal tracking due to its flexibility with letters and numbers.
- Not sure which digits are the actual product code vs. check digit? The last digit in UPC/EAN codes is a check digit, calculated automatically — you don’t choose it, and getting it wrong (if entering manually) means the barcode won’t validate.
Real Use Case
A small business owner launching on Amazon generated a barcode without knowing the difference between UPC and Code 128, picked Code 128 because it was the first option, and had her listing rejected during Amazon’s product verification. Switching to a proper UPC-A (purchased through GS1) fixed it — a mistake that cost her a week of back-and-forth.
Wrap-Up
The barcode type you need depends entirely on where it’s used: UPC-A and EAN-13 for retail, Code 128 for internal logistics, ISBN for books. Getting it wrong means rejected listings or unscannable labels. Generate the right type with the Barcode Generator.