Barcode Types Guide
A quick comparison of the common 1-D barcode formats and where each one fits.
Retail product codes
UPC-A (12 digits) is the North American retail standard; EAN-13 (13 digits) is its global counterpart; EAN-8 (8 digits) is the compact version for small packages. All three carry a check digit and require an official GS1 number for real retail use — generating an image doesn't register a product.
General-purpose codes
Code 128 is dense and flexible, encoding digits, letters and ASCII symbols — the workhorse of shipping and logistics. Code 39 is older and lower-density but very widely supported, popular for IDs, badges and industrial labels.
Shipping and specialty codes
ITF-14 encodes a 14-digit GTIN on shipping cartons, often with heavy bearer bars. Codabar is a self-checking code still used by libraries, blood banks and labs.
Comparison at a glance
| Format | Data | Typical use |
|---|---|---|
| UPC-A | 12 digits | US/Canada retail |
| EAN-13 | 13 digits | Global retail |
| EAN-8 | 8 digits | Small retail packs |
| Code 128 | ASCII text | Shipping, logistics |
| Code 39 | A–Z, 0–9, few symbols | IDs, badges, industry |
| ITF-14 | 14 digits | Shipping cartons |
| Codabar | Digits + few symbols | Libraries, labs |
Which should you choose?
For retail, use the code your market expects (UPC or EAN) with a registered GS1 number. For internal tracking, Code 128 offers the best density; choose Code 39 or Codabar when legacy compatibility matters.