Code128 vs EAN-13: Which Barcode Should You Use?
Choosing the wrong barcode format can cause scanning failures at checkout, warehouse systems, or customs. Here's a clear breakdown of Code 128 vs EAN-13 so you can pick the right one for your use case.
We reviewed the workflow distinction between internal identifiers and globally unique retail product identifiers. BarcodeMaker is positioned for internal Code 128 labels, not for issuing GTINs.
What is Code 128?
Code 128 is a high-density linear barcode symbology that can encode all 128 ASCII characters — letters, numbers, special characters, and control codes. It was developed in 1981 and is now one of the most widely used barcode formats in logistics, shipping, warehouse management, library systems, and internal inventory tracking. Code 128 has no fixed length restriction, meaning you can encode short codes like "A01" or long codes like "WAREHOUSE-SHELF-12-BIN-047-ZONE-B" in the same format. It is recognized by virtually all modern barcode scanners.
What is EAN-13?
EAN-13 (European Article Number, also known as International Article Number) is a 13-digit barcode standard used globally to identify retail consumer products. It is the barcode you see on grocery items, books, electronics, and consumer goods in stores worldwide. Every EAN-13 barcode encodes a Global Trade Item Number (GTIN-13) that must be registered through a national GS1 member organization. This registration is how the barcode becomes globally unique — any scanner in any country can identify the exact product.
How GS1 Registration Works for EAN-13
To use EAN-13 on retail products, you register a company prefix with your country's GS1 member organization. GS1 charges an annual fee for this prefix. Once you have a prefix, you can assign item reference numbers within that prefix to create individual GTINs for each product. You are responsible for managing item numbers under your prefix and ensuring no duplicates. The cost and capacity (number of GTINs) varies by country and membership tier.
Key Differences at a Glance
- Code 128 can encode any alphanumeric data of any length; EAN-13 always encodes exactly 13 numeric digits
- Code 128 requires no registration; EAN-13 requires a GS1 company prefix obtained through a national GS1 member
- Code 128 is ideal for internal systems; EAN-13 is the standard for consumer retail product identification
- Creating a Code 128 barcode does not assign a globally unique product identity
- EAN-13 barcodes are expected and required by most point-of-sale systems in physical retail stores
When to Use Code 128
- Internal inventory and warehouse labels where you control the scanning environment
- Shipping and logistics labels (carrier systems typically use Code 128 or similar)
- Library, healthcare, and asset tracking systems
- Packing station and pick-and-pack labels
- Internal transfer labels between facilities you operate
- Any internal workflow where you define the barcode values yourself
When to Use EAN-13
- Products sold in physical retail stores through a point-of-sale system
- Consumer goods listed on Amazon, Walmart, Target, or similar marketplaces that require a GTIN
- Products exported to other countries where retailers expect a registered barcode
- Supermarket and grocery store shelves where checkout systems use EAN/UPC
- Products that will be scanned by third-party systems outside your control
Can You Print EAN-13 with BarcodeMaker?
BarcodeMaker generates Code 128 barcodes, not EAN-13. If you need EAN-13 barcodes for retail, you first need to obtain a GS1 company prefix and assigned GTINs. Once you have the 13-digit numbers, you need a barcode tool that specifically generates the EAN-13 symbology with the correct check digit calculation. Code 128 and EAN-13 are different formats and are not interchangeable at retail point-of-sale systems.
A Practical Decision Guide
If you are labeling products for your own warehouse, stockroom, packing table, or internal tracking system — use Code 128 with BarcodeMaker. If you are planning to sell products in physical stores, grocery chains, or major online marketplaces that require a GTIN — you need an official EAN-13 or UPC barcode from a GS1-registered source. Many small sellers use Code 128 labels for internal use and obtain EAN/UPC barcodes separately only when they need to list on platforms that require them.
Primary references
External references are provided for standards and platform-specific details. BarcodeMaker is not affiliated with GS1, Shopify, Google, or Adobe.
Generate Code 128 barcode labels from Excel — free
Try BarcodeMaker Free →