# EAN-8

> Source: https://docs.barcoder.ai/docs/standards/ean-8
> research date 2026-05-30 · extracted at 2026-10-03
> Publisher: Barcoder — encyclopedia of QR, barcode and payment-code standards

## Overview

**EAN-8** is the 8-digit linear barcode of the EAN/UPC symbology family. It
encodes a **GTIN-8** (Global Trade Item Number) — seven data digits plus one
mod-10 check digit — and is the short-form sibling of [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13). EAN-8 was
introduced for use on **small packages** where a full-size EAN-13 would not fit,
such as cigarettes, pencils, and chewing-gum packets.

EAN-8 is standardised as **ISO/IEC 15420** (jointly with [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13), [UPC-A](https://docs.barcoder.ai/docs/standards/upc-a)
and [UPC-E](https://docs.barcoder.ai/docs/standards/upc-e)) and governed by **GS1**. Because the supply of 8-digit numbers is
far smaller than the 13-digit space, GS1 member organisations issue GTIN-8s
sparingly, typically only when a company can demonstrate that a standard
[EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) cannot physically fit on the product.

## History

EAN-8 was derived from the longer [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) system created by the European
Article Numbering association in the late 1970s. It was added to provide a
compact symbol for items too small to carry a 13-digit code, mirroring the role
that the zero-suppressed [UPC-E](https://docs.barcoder.ai/docs/standards/upc-e) plays in the North American [UPC-A](https://docs.barcoder.ai/docs/standards/upc-a) world.
The numbering organisation, originally EAN International, merged with the Uniform
Code Council and became **GS1** in 2005.

## Technical specification

- **Digits:** 8 (7 data + 1 check digit).
- **Structure:** a 2-3 digit GS1 prefix (numbering authority), an item
  reference, and the check digit. Unlike [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) there is no separate
  manufacturer/product split — the short number is allocated directly by the GS1
  member organisation.
- **Encoding:** each digit uses 7 modules (2 bars + 2 spaces). The four
  left-hand digits use odd-parity **L-codes** and the four right-hand digits use
  the **R-codes**. Unlike [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13), EAN-8 does **not** use even-parity
  left-hand (G) patterns, so there is **no hidden digit** encoded by parity —
  all eight digits are explicit.
- **Guard bars:** start (101), centre (01010), and end (101) guard patterns. The
  full symbol is 67 modules wide: 3 + (4 × 7) + 5 + (4 × 7) + 3.
- **Check digit:** mod-10 — weight the first seven digits by 3 and 1 starting
  from the left (3,1,3,1,3,1,3), sum, and choose the digit that brings the total
  to the next multiple of 10. The weighting starts with 3 because EAN-8 has an
  odd number of data digits before the check digit.
- **Internal/in-store range:** GTIN-8 values in the `00000000`-`00009999` range
  are reserved for internal use such as in-store numbering and are not globally
  unique.

## Use cases

- **Small retail packaging** — the primary use; products too small for an
  [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13), such as cigarettes, pens, confectionery, and cosmetics samples.
- **Point of sale** — read by the same retail scanners as [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) and
  [UPC-A](https://docs.barcoder.ai/docs/standards/upc-a), since all are EAN/UPC family symbologies.
- **GTIN carrier** — the GTIN-8 functions as a normal trade item identifier and
  can be referenced by higher-level GS1 logistics standards such as [GS1-128](https://docs.barcoder.ai/docs/standards/gs1-128).

## Implementations

EAN-8 is supported by essentially every barcode scanner, POS system, and
barcode-generation library in existence, alongside [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) and [UPC-A](https://docs.barcoder.ai/docs/standards/upc-a). It
is a default symbology in open-source decoders such as ZXing and ZBar and is
produced by all major label printers.

## Comparison

| Standard | Digits | Region | Notes |
|----------|--------|--------|-------|
| EAN-8    | 8      | Global | Short form for small packs |
| [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) | 13     | Global | Full-size global retail code |
| [UPC-A](https://docs.barcoder.ai/docs/standards/upc-a)  | 12     | US/Canada | EAN-13 with leading zero |
| [UPC-E](https://docs.barcoder.ai/docs/standards/upc-e)  | 8 (6 shown) | US/Canada | Zero-suppressed UPC-A |
| [GS1 DataBar](https://docs.barcoder.ai/docs/standards/gs1-databar) | varies | Global | Carries GTIN + attributes in less space |

EAN-8 is the global short-form symbol; the North American equivalent for small
packages is the zero-suppressed [UPC-E](https://docs.barcoder.ai/docs/standards/upc-e). Both exist to fit a GTIN onto items
too small for [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) or [UPC-A](https://docs.barcoder.ai/docs/standards/upc-a). For richer data (batch, expiry, weight)
GS1 systems move to [GS1-128](https://docs.barcoder.ai/docs/standards/gs1-128) or [GS1 DataBar](https://docs.barcoder.ai/docs/standards/gs1-databar).

## Fun facts

- Unlike its sibling [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13), EAN-8 encodes every one of its digits
  explicitly — there is no clever parity trick hiding an extra digit, because
  the symbol is short enough not to need one.
- GTIN-8 numbers are treated as a scarce resource: GS1 will generally only issue
  one if you can prove a normal [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13) will not fit on the product.

## Status

EAN-8 is **active** and remains the standard compact retail barcode worldwide.
GS1's "Sunrise 2027" initiative encourages retailers to also accept 2D codes
([GS1 DataBar](https://docs.barcoder.ai/docs/standards/gs1-databar), [GS1 QR Code](https://docs.barcoder.ai/docs/standards/gs1-qr-code)) at POS, but EAN-8 is expected to remain in use
for small packaging for the foreseeable future.

## Sources

- GS1 — EAN/UPC barcodes: https://www.gs1.org/standards/barcodes/ean-upc
- ISO/IEC 15420: https://www.iso.org/standard/46143.html
- GS1 General Specifications: https://www.gs1.org/docs/barcodes/GS1_General_Specifications.pdf
- Wikipedia — EAN-8
- Wikipedia — International Article Number

## Deployments

EAN-8 is deployed at retail point of sale worldwide on small consumer packages
that cannot accommodate a full [EAN-13](https://docs.barcoder.ai/docs/standards/ean-13). It is read by the same scanner
installed base as the rest of the EAN/UPC family and serves as a GTIN-8 carrier
for trade items throughout GS1 systems.

## Deployments

_No country reports mention this standard by name._

## Regions / aggregations not mapped to a single country

- Universal
