Retail products need UPC-A or EAN-13; shipping labels need Code 128 or GS1-128. The format you choose determines whether a scanner reads your barcode at all — get it wrong and your product won't ring up at checkout, your package won't route correctly, or your supplier's warehouse system will reject the label entirely.
Each use case has a specific format, and substituting one for another isn't a workaround — it's a failure point.
Key Takeaways
- For US retail, UPC-A (12 digits) is the standard; for international retail, EAN-13 (13 digits) is the global equivalent recognized by most modern POS systems.
- According to Tera Digital, most retail stores use UPC and EAN barcodes for checkout — these are global retail standards that POS systems read fast and reliably.
- Code 128 is the most widely used barcode in industrial and logistics settings, according to Toolshu, and virtually every courier company uses it on shipping labels. (source)
- QR codes are not a drop-in replacement for UPC or EAN at retail POS — they serve digital and marketing contexts, not primary product identification.
- You can generate all major barcode formats — UPC-A, EAN-13, Code 128, and more — free in your browser with no signup required.
Quick Answer: Which Barcode Format to Use (Decision Table)
The right barcode format depends entirely on where the barcode will be scanned and by what system. Retail checkout, carrier shipping, internal logistics, and digital marketing each have different format requirements — using the wrong one means the barcode either won't scan or won't be accepted by the receiving system.
| Use Case | Recommended Format | Digits / Capacity | Notes |
|---|---|---|---|
| US retail (grocery, electronics, clothing) | UPC-A | 12 digits | Standard for US/Canada POS |
| International retail | EAN-13 | 13 digits | Global standard; accepted by most modern US scanners |
| Shipping labels (all major carriers) | Code 128 | Up to 128 ASCII chars | Used by FedEx, UPS, USPS |
| Supply chain / pallet tracking | GS1-128 | Variable, structured | Encodes GTIN, lot, expiry, quantity |
| Small consumer goods packaging | EAN-8 | 8 digits | ~40% smaller than EAN-13 |
| Internal inventory / no retail sale | Code 39 | Up to 43 chars | Works without GS1 license |
| Marketing / digital engagement | QR Code | Up to 3KB | Not accepted as primary retail barcode |
| Selling on Amazon or wholesale | UPC-A or EAN-13 with GS1 prefix | 12–13 digits | Requires licensed GS1 barcode |
Best for US retail: UPC-A Best for international retail: EAN-13 Best for shipping: Code 128 / GS1-128 Best for internal logistics: Code 39 or Code 128 Best for small packaging: EAN-8
Which Barcode Formats Do Retail POS Systems Actually Accept?
UPC-A and EAN-13 are the two dominant retail barcode formats worldwide — UPC-A is the 12-digit standard used in the United States and Canada, while EAN-13 is the 13-digit international equivalent. According to Tera Digital, most retail stores use UPC and EAN barcodes for checkout as global retail standards that POS systems read fast and reliably. (source)
UPC-A: The US Retail Standard
UPC-A encodes a single piece of information — the product's GTIN (Global Trade Item Number), according to Boxhero. (source) That 12-digit string identifies the manufacturer and the specific product, nothing else. If you're selling in US brick-and-mortar retail, on Amazon, or through wholesale distributors, you need a GS1-licensed UPC-A.
According to Finale Inventory, a GS1 company prefix license starts around $250 plus an annual renewal fee of approximately $50. (source) Buying individual barcodes from resellers starts at $39 USD per barcode, according to International Barcodes (source) — but those barcodes are not always accepted by major retailers who verify GS1 prefixes.
Pros — UPC-A:
- Universal acceptance at US POS systems
- Required by Amazon, Walmart, and most major US retailers
- Simpler 12-digit structure reduces encoding errors
Cons — UPC-A:
- Requires a paid GS1 license for legitimate retail use
- Not native to international markets — needs EAN-13 conversion
EAN-13: The International Standard
EAN-13 adds one digit to the UPC-A structure — that extra digit encodes a country prefix. According to Dynamsoft, some older scanning systems in the US and Canada can't decode EAN barcodes, so if you're selling only in the US market and your retail partner uses legacy POS hardware, UPC-A is the safer choice. (source) Modern systems handle both.
Pros — EAN-13:
- Recognized globally, including by US modern scanners
- Covers 100+ countries via the country prefix system
Cons — EAN-13:
- According to Barcodestalk, many smaller US retailers use older inventory systems that only accept 12-digit UPC numbers, not 13-digit EAN codes
Does Print Size Affect Retail Scan Reliability?
Print size matters more than most sellers expect. According to IDPRT, the minimum barcode size for retail UPC/EAN codes is usually 80% magnification, but 100% is recommended for reliable POS scanning. (source) Print at 100%. Every time.
What Barcode Format Do Shipping Carriers Require?
Code 128 is the standard barcode format for shipping labels — accepted by every major carrier and capable of encoding the full ASCII character set, including letters, numbers, and special characters. According to Toolshu, Code 128 is the most widely used barcode in industrial and logistics settings, and virtually every courier company uses Code 128 on its shipping labels. (source)
Code 128: The Universal Carrier Format
Code 128 can encode up to 128 ASCII characters — far beyond the numeric-only constraints of UPC or EAN. According to Simplebarcode, it stands out as the most flexible linear barcode format, capable of encoding the complete ASCII character set. (source) That flexibility makes it the format of choice for tracking numbers, which combine letters, numbers, and check digits in variable-length strings.
Pros — Code 128:
- Accepted by all major carriers (FedEx, UPS, USPS, DHL)
- Encodes alphanumeric tracking numbers without truncation
- No GS1 license required for internal or carrier-assigned values
Cons — Code 128:
- Not a retail POS format — checkout scanners won't map it to a product record
- Higher data density means stricter print quality requirements
GS1-128: When Supply Chain Compliance Is Required
GS1-128 is a structured subset of Code 128 that uses Application Identifiers — short numeric prefixes that tell the scanner exactly what each data field means (GTIN, lot number, expiry date, quantity). According to Inflow Inventory, GS1-128 is ideal for supply chain tracking and logistics, while UPC codes work for basic retail point-of-sale scanning. (source) If your retailer or wholesale partner requires ASN (Advance Ship Notice) compliance, they almost certainly require GS1-128 labels on cartons and pallets.
Pros — GS1-128:
- Structured data fields enable automated supply chain processing
- Required by many large retailers for inbound shipments
Cons — GS1-128:
- Requires GS1 membership to use standardized Application Identifiers correctly
- More complex to generate without purpose-built tools
When Should You Use a QR Code vs. a 1D Barcode?
QR codes are not a replacement for UPC or Code 128 in retail and shipping contexts — most retail POS systems and carrier scanning infrastructure are built around 1D linear barcodes, and QR codes are not accepted as primary product identifiers by those systems. Use QR codes when the destination is a URL, a WiFi credential, a contact card, or any content a consumer scans with their phone.
Use 1D barcodes (UPC, EAN, Code 128) when the destination is a checkout terminal, a warehouse scanner, or a carrier label reader. The two formats serve different systems entirely.
According to Scandit, the GS1 Sunrise 2027 initiative aims to have retail POS systems able to scan 2D barcodes — but the goal is not to replace UPC/EAN codes in 2027, it is to add 2D capability alongside existing 1D support. (source) UPC and EAN remain required for retail through at least the next several years.
What Are the Other Barcode Formats and When Do You Need Them?
Several additional barcode formats fill specific niches in inventory, pharmaceuticals, and bulk shipping — each fits a narrow use case and should not be used outside it. Choosing one of these for a context it wasn't designed for causes the same scan failures as choosing the wrong retail or shipping format.
Code 39: Internal Inventory Without a License
According to Scandit, Code 39 can only store a maximum of 43 characters, compared to Code 128's 128 characters. (source) It's commonly used for internal inventory systems and government or military applications because it requires no licensing and is supported by virtually every scanner. If you're not selling at retail and don't need alphanumeric strings longer than 43 characters, Code 39 is the lowest-friction choice for internal labeling.
ITF-14: Corrugated Cartons and Bulk Shipments
ITF-14 is a 14-digit format used on corrugated cartons and outer packaging for bulk shipments. According to Bar-code.com, while UPC and EAN identify individual retail units, bulk shippers often apply a GTIN-14 on cartons or pallets — that 14-digit code builds on the same numbering system. (source) ITF-14 is specifically designed to be printed directly on corrugated surfaces where print quality is variable.
EAN-8: Small Consumer Goods
According to Simplebarcode, this 8-digit format maintains international compatibility while reducing barcode size by approximately 40%, making it ideal for small consumer goods. (source) Use it when your packaging simply doesn't have room for a full EAN-13.
DataMatrix: Pharmaceuticals and Electronics Manufacturing
DataMatrix is a 2D format used primarily in pharmaceuticals and electronics manufacturing, where very small labels need to encode significant data. It is not a retail or shipping format in general commerce.
How Do You Generate the Right Barcode Format Free?
Filator's barcode generator supports 9 barcode formats — Code 128, EAN-13, EAN-8, UPC-A, Code 39, ITF-14, MSI, Pharmacode, and Codabar — directly in your browser, with no signup, no email, and no limits. That covers every format in this guide except GS1-128 structured data, which requires Application Identifier logic beyond a standard generator.
Generating Your Barcode
To generate a barcode: go to the Filator barcode generator, select your format from the dropdown, enter your data string, and download the image. The generator runs client-side — your data never leaves your device.
For retail barcodes, make sure you're entering a valid 12-digit (UPC-A) or 13-digit (EAN-13) string including the check digit, or the barcode will fail verification at POS. One wrong digit invalidates the entire label.
Verifying Print Quality Before You Scale
Before printing at volume, verify your output against baseline scan requirements. According to IDPRT, valid check digits and sufficient contrast are the two baseline requirements every scanner checks first — use a dedicated barcode verification service for retail-grade labels before printing at volume. (source) Don't discover the problem at the shelf.
FAQ
What barcode format is used for retail products?
UPC-A (12 digits) is the standard for US retail products; EAN-13 (13 digits) is the international equivalent. (source) According to Tera Digital, most retail stores use UPC and EAN barcodes for checkout as globally recognized standards. Both formats are required to carry a GS1-licensed product identifier for legitimate retail sale.
What is the difference between UPC and EAN barcodes?
UPC-A has 12 digits and is the US/Canada standard; EAN-13 has 13 digits and adds a country prefix for international use. According to Dynamsoft, some older scanning systems in the US and Canada can't decode EAN barcodes, making UPC-A the safer choice for legacy retail environments. (source) Modern POS systems accept both.
What barcode format do shipping carriers require?
All major carriers — FedEx, UPS, USPS, DHL — use Code 128 on shipping labels. According to Toolshu, virtually every courier company uses Code 128 on its shipping labels. (source) For supply chain compliance with retailers, GS1-128 (a structured variant of Code 128) is often required on cartons and pallets.
Can I use a QR code instead of a UPC barcode for retail?
No — QR codes are not accepted as primary product barcodes by retail POS systems. According to Scandit, the GS1 Sunrise 2027 initiative adds 2D scanning capability to POS systems but does not replace UPC/EAN requirements. (source) A QR code can supplement a UPC label for consumer-facing digital content, but it cannot replace it.
How do I generate a barcode for free online?
Filator's barcode generator creates barcodes in 9 industry-standard formats — including UPC-A, EAN-13, Code 128, and Code 39 — directly in your browser with no signup and no limits. Select your format, enter your data string, and download the image. The tool runs entirely client-side, so your data is never uploaded to a server.
