CPG Terms Explained, a series by Cyril Ovely

What Are UPC, EAN, and GTIN? How Global Product Numbers Work

UPC, EAN, and GTIN are not three competing standards. They are one global numbering system, managed by GS1, that identifies every trade item on earth. UPC is the 12 digit form used mostly in North America. EAN is the 13 digit form used everywhere else. GTIN is the family name that covers both.

The short answer

Turn any pack around and you will find a string of digits under the barcode. Those digits are a GTIN, a Global Trade Item Number, and they come in four lengths depending on what is being identified:

FormatDigitsCommon nameWhat it identifies
GTIN-88EAN-8Very small packs where a full barcode will not fit
GTIN-1212UPC (UPC-A)Retail units, mostly in the US and Canada
GTIN-1313EAN (also JAN in Japan)Retail units, everywhere else
GTIN-1414Case code, printed as ITF-14Cartons, cases, and outer packaging

One organization, GS1, runs the system worldwide. It licenses number ranges to companies, and those companies assign individual numbers to their products. The result is that a given GTIN identifies exactly one product configuration anywhere in the world, which is what makes scanning, inventory, and syndicated measurement work. If you only need the quick definition, the glossary entry What Is a UPC / GTIN? has it. This article explains the mechanics.

Anatomy of a UPC

A UPC-A number is 12 digits, and each segment has a job:

  • Number system digit (1 digit). Broadly indicates the category of use. Most grocery products start with 0 or 1. Drugs and health items use 3, which aligns with the US National Drug Code.
  • GS1 company prefix (variable length). Assigned to the brand owner by GS1. The prefix and the item reference together fill the middle of the number, so a shorter licensed prefix leaves more digits for item numbers. That is why large manufacturers license shorter prefixes.
  • Item reference (the remaining digits). Assigned by the company itself, one per product configuration. The whole UPC space holds roughly 100 billion possible codes, shared across every company using the system.
  • Check digit (final digit). A computed digit that catches transcription errors. More on how it works below.

For tiny packs that cannot carry a full 12 digit symbol, UPC-E compresses the same number into a 6 visible digit form by suppressing zeros. The underlying GTIN-12 stays the same.

Anatomy of an EAN

An EAN-13 number is 13 digits with the same logic and one important difference at the front:

  • GS1 prefix (first 3 digits). Identifies the GS1 Member Organization where the company registered its number range, for example 590 for GS1 Poland or 890 for GS1 India.
  • GS1 company prefix and item reference. As with UPC, split according to the length of the licensed prefix.
  • Check digit (final digit). Computed with the same method as UPC.

EAN-8 is the shortened 8 digit form for small items, the EAN equivalent of UPC-E.

What the EAN prefix actually means, and what it does not

Here is the most repeated error in articles about barcodes. The first three digits of an EAN are not the country where the product was made. They identify the GS1 Member Organization where the company registered. A company registered with GS1 India gets an 890 prefix on all its numbers, whether the goods are manufactured in India, Vietnam, or Mexico.

If country of origin matters for your labeling or compliance, it belongs in your product data, not in a guess from the barcode prefix.

Some prefixes carry special meanings that are worth knowing:

  • 020 to 029: reserved for restricted in store use, typically weighed items, own brand products, and codes that embed a price or weight. This is the space retailers use for items they identify internally.
  • 978 and 979: books. The ISBN system has lived inside the EAN space since the 1980s, which is why every book barcode starts with 978 or 979.
  • 977: serial publications such as magazines, via the ISSN system.

Japan runs the same system under the name JAN, Japanese Article Number, with the prefixes 49, and 45 added in 1992.

How the check digit works

The final digit of every GTIN is a simple checksum that catches typing and scanning mistakes. The algorithm is the same across all lengths:

  • Starting from the right (excluding the check digit), alternate weights of 3 and 1 are applied to the digits.
  • The weighted digits are summed.
  • The check digit is the number that brings the sum up to the next multiple of 10.

Worked example for the EAN-13 number 5901234123457. Weighting the first 12 digits by 3,1,3,1 from the right gives:

Digit590123412345
Weight131313131313
Weighted52703294329415

The weighted sum is 83. The next multiple of 10 is 90, so the check digit is 7, which matches the last digit of the number. If anyone mistypes a digit, the sum no longer lands on a multiple of 10 and systems reject the number. This scheme catches every single digit error and roughly 90 percent of adjacent digit swaps. The swaps it misses are the ones where the two digits differ by exactly 5, which is why serious systems also validate against the GS1 registry rather than the checksum alone.

UPC and EAN are one system

These are not rival standards that retailers choose between. EAN-13 is a strict superset of UPC-A: add a leading zero to any 12 digit UPC and you have a valid 13 digit EAN, with the same check digit and the same product behind it. Modern retail systems treat both as GTINs, so one number serves a product worldwide. A brand selling in the US and Europe does not buy two identifiers. It assigns one GTIN and prints the symbol that its market expects, or both interpretations of the same number.

How companies get these numbers

GTINs are licensed, not invented. Companies obtain them from their national GS1 organization in one of two ways:

  • Single GTINs. For a small number of products. GS1 US prices a single GTIN at $30, paid once, with no renewal fee.
  • A GS1 Company Prefix. A licensed block of numbers from which the company assigns its own GTINs, plus related identifiers for locations, coupons, cases, and pallets. Prefixes come in capacities based on how many items you need to identify. GS1 US pricing (current as of September 2026) runs from a $250 initial fee plus a $50 annual renewal for up to 10 items, to a $10,500 initial fee plus a $2,100 annual renewal for up to 100,000 items. Check GS1 directly, since pricing is set by license agreement and can change.

One caution: marketplaces and large retailers validate GTINs against the GS1 registry, checking that the number belongs to the company presenting it. Numbers resold by third party barcode sites can fail that check, leaving listings rejected. The cheap path is not always the working path.

The packaging hierarchy: each, case, pallet

GTINs are assigned per packaging level, and this is where the numbering system meets physical distribution:

  • Each: the consumer unit carries a GTIN-12 or GTIN-13, printed as UPC-A or EAN-13. That is what the checkout scanner reads.
  • Case: the carton carries a GTIN-14, usually printed in the ITF-14 symbology, which tolerates the rough print quality of corrugated board. Distributors scan this at receiving and picking.
  • Pallet: pallets carry a serial logistics code, the SSCC, so each pallet is individually traceable, with GS1-128 labels carrying batch, lot, and expiry data where needed.

A brand with one flavor in one size still ends up with at least two GTINs, the unit and the case, and the count multiplies with every variant and every packaging configuration.

For the technically minded: Think of the GS1 system as a hierarchical namespace. The company prefix is the namespace a company owns, item references are the sequence it allocates inside that namespace, and the check digit is an integrity check on the string. GTIN-12, GTIN-13, and GTIN-14 are the same identifier type at different widths, and systems should store them as GTINs with a length attribute rather than as separate UPC and EAN fields. The mapping table between GTIN, internal SKU, and retailer item number is where most integration pain lives, and the packaging hierarchy means one SKU can legitimately map to several GTINs.

Why GTIN discipline matters in distribution

For brands that sell through trade, GTINs are a compliance surface as much as an identifier:

  • Retailer onboarding runs on GTINs. Listing data, price files, and logistics specifications all key off the number, so errors discovered after printing are expensive to fix.
  • Marketplace validation checks each GTIN against the GS1 registry. Mismatches suppress listings.
  • Case codes drive wholesale orders. Distributors order and receive by GTIN-14. A missing or wrong case code shows up as a receiving discrepancy, not a data problem.
  • Collisions corrupt data. If two variants share a GTIN, or a delisted GTIN gets reused for a new product, sales history, inventory, and syndicated measurement attach to the wrong item, and the damage is discovered months later.

The unglamorous rule that prevents all of it: one GTIN per product configuration, assigned once, never reused, kept in a registry someone owns.

Common mistakes

Treating UPC and EAN as separate systems. They are one numbering family. Planning two code strategies for two regions creates duplicate work and duplicate data.

Reading the EAN prefix as country of origin. It is the registration country of the company, and saying otherwise in packaging or content misleads customers.

Assigning GTINs only at unit level. Cases need their own GTIN-14. Brands that skip this discover it at their first distributor receiving dock.

Buying numbers from resellers. The GS1 registry links each prefix to the licensed company, and platforms that validate this link will reject numbers whose registered owner does not match the seller.

Reusing retired numbers. Historical sales data belongs to the old product. Reuse quietly corrupts measurement for both products.

The takeaway

GTIN is the family, UPC is the 12 digit North American member, EAN is the 13 digit global member, and every digit in the number has a job, from the registration prefix to the check digit. The system is licensed through GS1, runs at every packaging level, and rewards the brands that treat it as master data rather than a label detail.

Global numbers identify products everywhere, but every company that handles a product also needs its own internal name for it. That is the SKU, and unlike GTINs, SKUs follow no standard at all, which is exactly what makes them interesting. That is the next article in this series. Meanwhile, the glossary entry What Is a SKU? gives you the short version.

Sources and further reading


Lighthouse for CPG

See how Lighthouse turns these terms into retail execution

Lighthouse connects distribution, execution, trade, and supply into one system your commercial teams act on at the store and SKU level.

Request a demo
Cyril Ovely
Co-Founder and CTO, Vxceed

Cyril is the Co-Founder and CTO at Vxceed. With over two decades of experience in engineering and entrepreneurship, he focuses on building scalable SaaS solutions that transform demand chain execution and help businesses operate with greater agility in evolving markets.