Glossary

EAN (European Article Number)

An EAN (European Article Number, now formally the International Article Number) is a 13-digit GS1 product identifier encoded in the barcode on retail packaging. It is the same thing as a GTIN-13. EAN-13 is the global default; the 12-digit UPC used in the US and Canada is a subset that becomes an EAN by adding a leading zero. Every EAN ends in a calculated check digit.

What the 13 digits actually contain

An EAN-13 is one number in three functional parts plus a calculated check digit. GS1 issues a company prefix to the brand owner, the brand owner assigns the item reference, and the last digit is arithmetic, never chosen.

Take 5012345678900:

SegmentExample digitsWhat it identifies
GS1 prefix501The GS1 member organisation that issued the license (500–509 = GS1 UK)
Company prefix (includes the GS1 prefix)5012345The brand owner. Length varies from 7 to 12 digits depending on the license tier
Item reference67890The specific trade item, assigned by the brand owner
Check digit0Modulo-10 result that validates the preceding 12 digits

A few things practitioners get wrong here:

  • The prefix names the issuing GS1 organisation, not the factory. A 690 prefix means the prefix came from GS1 China. It says nothing about origin.
  • The item reference carries no meaning. It is not a size code, a colour code, or a sequence you can parse.
  • One EAN per sellable variant. A 3/8-16 Grade 8 hex bolt in a 50-count box and the same bolt in a 100-count box are two trade items with two EANs.
  • EAN-8 (GTIN-8) exists for packaging too small for 13 digits. It has no parseable company prefix structure.

EAN vs UPC: the 13-vs-12 story

UPC-A came first, in the US in the 1970s. EAN-13 was designed afterwards as a deliberate superset so that European numbers could carry a country-level GS1 prefix without breaking American scanners. Since the GS1 "Sunrise 2005" deadline, US and Canadian systems have been expected to accept 13-digit numbers.

UPC-AEAN-13
GS1 nameGTIN-12GTIN-13
Digits1213
Home regionUS, CanadaEverywhere else; also accepted in North America
Issuing bodyGS1 US / GS1 CanadaAny GS1 member organisation
Check digitModulo-10Same modulo-10 algorithm
ConvertPrefix a 0 to get the EAN-13Drop the leading digit only if it is 0

The practical consequence: 012345678905 and 0012345678905 are the same product, and the check digit is identical in both forms because the added zero contributes nothing to the weighted sum.

The conversion is one-way for most of the world. 5012345678900 cannot be squeezed into 12 digits. If a US-built system has a 12-character GTIN field, every European supplier's number fails on arrival, usually silently, by truncation.

Where EANs break in real catalogs

Almost every EAN problem is a storage problem, not a barcode problem. The number was fine when the supplier sent it.

Value in the ean columnWhat it actually isAction
0012345678905Valid GTIN-13 (UPC-A 012345678905)Keep
12345678905Same number with the leading zeros stripped by ExcelLeft-pad back to GTIN-14, re-verify the check digit
5012345678900Valid EAN-13, GS1 UK prefixKeep
2001234567893Restricted-circulation number (prefix 20–29), in-store onlyNever publish it
B-123-YELAn MPN for a UL listed 600V wire connectorMove to the mpn field

The recurring failures:

  • Numeric columns. An integer type destroys any EAN that starts with zero, which is every converted US UPC.
  • Mixed columns. UPCs and EANs in one field with no flag, so deduplication counts one item twice. Left-pad both to GTIN-14 before matching.
  • Unvalidated check digits. A single misread digit always fails mod-10. Transpositions of adjacent digits are the ones that slip through, when the transposed pair differs by 5.
  • Rented barcodes. Numbers bought from a reseller rather than licensed from GS1 fail marketplace and GDSN registry checks even though the arithmetic is valid.

Getting EANs right at catalog scale

The rules above are easy to state and tedious to enforce across tens of thousands of SKUs from hundreds of suppliers, each sending a different spreadsheet.

Your PIM stores the GTIN field. It will happily store a truncated one. Pulling the real number off the supplier document, deciding whether an 11-digit string is a mangled EAN or a mangled UPC, verifying the check digit, left-padding to GTIN-14 for matching, and flagging restricted-circulation numbers before they reach a marketplace: that is the work nobody has staffed.

That is the work Anglera does, alongside Akeneo, Salsify, Syndigo, inriver, or Pimberly. It reads GTINs out of supplier PDFs, packaging images, and spec sheets rather than only the column labelled EAN, reconstructs stripped leading zeros, reconciles the UPC and EAN forms of an item into one identifier, and routes genuinely ambiguous cases to a human reviewer.

A clean, verified EAN on every sellable variant is what lets you publish to GDSN, list in Europe, and trust your own duplicate counts.

Frequently asked questions

What is the difference between an EAN and a UPC?

An EAN-13 has 13 digits and a UPC-A has 12. Both are GTINs issued under GS1 rules and both use the same modulo-10 check digit. Any UPC-A becomes a valid EAN-13 by adding a leading zero: 012345678905 and 0012345678905 identify the same trade item. The reverse only works if the EAN-13 already starts with zero. 5012345678900 has no 12-digit form.

Does the EAN prefix tell me the country of origin?

No. The first two or three digits identify the GS1 member organisation that issued the company prefix, not where the item was made. A 690 prefix means the brand owner licensed its prefix from GS1 China; the goods may be manufactured in Vietnam and sold in Germany. Never build country-of-origin, tariff, or HS code logic on the EAN prefix.

Do I need an EAN to sell on European marketplaces?

Usually yes. Amazon, Zalando, Otto, Bol.com and most European retail buyers require a GTIN, and EAN-13 is the expected form. GDSN publication requires one too, since the GTIN plus the target market is the primary key. Marketplaces validate the check digit and often check the prefix against GS1's registry, so numbers bought from a barcode reseller frequently get rejected.

Why did my EAN lose a digit in the spreadsheet?

Because it was stored as a number. Excel, CSV imports, and integer database columns silently drop leading zeros, so the EAN-13 0012345678905 arrives as 12345678905: eleven digits, check digit still correct. Left-pad it back to GTIN-14 and it validates, because leading zeros contribute nothing to the weighted sum. Store GTINs as text in a varchar(14) field, left-pad to 14 digits for matching, and validate the check digit on every load.

Can one product have both an EAN and a UPC?

It has one GTIN that can be expressed both ways. A US brand with a UPC-A of 012345678905 does not need a separate European number; the EAN-13 0012345678905 is the same identifier. Problems start when a catalog stores the two forms in different columns and then treats them as two SKUs. Left-pad to GTIN-14 before deduplicating.

Related terms

See it on your own SKUs.

A 30-minute walkthrough on your categories and your supplier data.

Book a demo