UPC vs EAN: what's the difference?

UPC and EAN are two versions of the same system. A UPC has 12 digits, an EAN has 13, and scanners worldwide read both. Here's when it matters.

By the BarcodePilot team · Updated

A retail barcode printed on a product carton
A retail barcode printed on a product carton.

The difference in one line

A UPC-A has 12 digits and is issued by GS1 US (and GS1 Canada). An EAN-13 has 13 digits and is issued by GS1 organisations everywhere else. A UPC is an EAN-13 with an invisible leading zero.

UPC-AEAN-13
Digits1213
GS1 number nameGTIN-12GTIN-13
Issued inUSA, CanadaRest of the world
Small versionUPC-E (8 digits)EAN-8
Read by tills worldwideYesYes (US tills since 2005)

Converting a UPC to an EAN

Put a 0 in front: UPC 036000291452 is EAN 0036000291452. The check digit stays the same, because a leading zero doesn't change the calculation. Many marketplaces outside the US ask for a 13-digit EAN; give them this.

The reverse only works if the EAN starts with 0. An EAN like 5901234123457 has no UPC version, and doesn't need one, since US systems read it as it is.

Container cranes at the Port of Southampton
Container cranes at the Port of Southampton.

What it looks like

The bars of a UPC-A and the matching EAN-13 are identical. The difference is in the printed digits: a UPC prints its first and last digits small, outside the bars, while an EAN-13 prints its first digit outside on the left and the rest in two groups of six.

Which one should you get?

  • Based in the US or Canada: GS1 US or GS1 Canada will issue numbers you can print as UPC-A. They work worldwide.
  • Based anywhere else: join your national GS1 and you'll get EAN-13s. They work in the US too, including on Amazon.com and in US shops.
  • Selling in both: one number is enough. Don't get two barcodes for the same product.

Make either with our UPC generator or EAN-13 generator.

Pallet racking in a distribution warehouse
Pallet racking in a distribution warehouse.

Questions

  • Yes. US retailers and Amazon.com accept EAN-13. US tills have read them since 2005.

  • Add a 0 at the front. The check digit doesn't change.

  • An EAN-13 barcode carries a GTIN-13. GTIN is the name of the number; EAN is the barcode.