Home › EAN vs UPC
EAN-13 vs UPC-A — Comparison Table, Compatibility, and Conversion
EAN-13 and UPC-A represent the same product identity in different digit counts. The choice between them is almost entirely determined by where you sell. If you sell only in the US and Canada, UPC-A is sufficient. If you sell internationally, on Amazon marketplaces outside the US, or to any European retailer, you need EAN-13. A 12-digit UPC-A becomes a valid EAN-13 by prepending a zero — so you can always convert upward without getting new numbers.
At a Glance
| Property | UPC-A | EAN-13 |
|---|---|---|
| Digit count | 12 | 13 |
| Geographic scope | US, Canada | Worldwide |
| GS1 GTIN name | GTIN-12 | GTIN-13 |
| Barcode width at nominal size | 37.29mm | 37.29mm |
| Accepted at US grocery checkout | Yes | Yes (reads as UPC-A with leading zero) |
| Required for European retail | No | Yes |
| Amazon US listings | Yes | Yes |
| Amazon UK / DE / FR / JP listings | No | Yes |
| Google Merchant Center | Yes (US feeds) | Yes (all feeds) |
| Walmart Marketplace | Yes | Yes |
How UPC-A and EAN-13 Relate Technically
UPC-A was developed in the US in the 1970s. EAN-13 was developed in Europe shortly after as a compatible extension that added one digit to accommodate non-US country prefixes. To maintain scanner compatibility, EAN-13 was designed so that any EAN-13 beginning with a zero could be read as a 12-digit UPC-A by dropping the leading zero.
This means all US retail scanners can read EAN-13 codes. The reverse is also true: any scanner that reads EAN-13 can read UPC-A by treating it as an EAN-13 starting with zero. In practice, you can print an EAN-13 on a product and it will scan fine at US checkout — the POS system normalises the number before looking it up.
Converting Between Formats
UPC-A → EAN-13: prepend a zero. The check digit does not change because the GS1 check digit algorithm produces the same result for the 12-digit UPC and the 13-digit EAN (the leading zero is factored in correctly). So UPC-A 012345678905 becomes EAN-13 0012345678905 with no recalculation needed.
EAN-13 → UPC-A: only possible if the EAN-13 begins with a zero. Remove the leading zero. The result is a valid UPC-A. If the EAN-13 begins with any digit other than zero, it cannot be expressed as a 12-digit UPC-A — it belongs to a non-US company prefix.
Which Should You Register With GS1?
If you are based in the US and sell only domestically, a GS1 US membership gives you GTIN-12 numbers by default. These work as UPC-A barcodes and can be expressed as EAN-13 by prepending a zero. You do not need to register separately in any other country.
If you are based outside the US, register with your local GS1 member organisation. You will receive a company prefix beginning with your country's GS1 prefix (50 for the UK, 30–37 for France, etc.), and your GTINs will be GTIN-13s that encode as EAN-13.
GS1 maintains a global product database called GEPIR. Both UPC-A and EAN-13 numbers registered anywhere in the world are findable through it — this is the database Amazon, Walmart, and Google cross-reference when validating GTINs on seller listings.
Generate UPC or EAN Barcodes