EAN-8 Specification

EAN-8 is the short version of EAN-13, the same as UPC-E vs. UPC-A. While they looks very similar, some differences exist. UPC-E does not explicitly encode the first digit(NS) while EAN-8 encodes all 8 digits. That also means that EAN-8 is not compatible with UPC-E from encoding and decoding perspective. Moreover, a UPC-E number can be converted back to UPC-A; however there is no defined method for conversions between EAN-13 to EAN-8.

An EAN-8 number contains 7 digits of message plus 1 check digit. The first two or three digits identify the numbering authority; the remaining 4 or 5 digits identify the product. You must apply the EAN-8 number separately from the numbering agency responsible for your country or region.

Check Digit Calculation

The EAN-8 check digit is calculated using modulo 10 method. Here outlines the steps to calculate EAN-8 check digit:

  1. From the right to left, start with odd position, assign the odd/even position to each digit.

  2. Sum all digits in odd position and multiply the result by 3.

  3. Sum all digits in even position.

  4. Sum the results of step 3 and step 4.

  5. Divide the result of step 4 by 10. The check digit is the number which adds the remainder to 10.

A web-based free utility to calculate UPC-A check digit is available at http://www.morovia.com/education/utility/upc-ean.asp.


The encoding of an EAN-8 symbol uses all three two character set. An EAN-8 symbol has the following structure:

  1. Start guard bars, always with a pattern bar+space+bar.

  2. Two number system characters, encoded with character set A.

  3. The following two characters, encoded with character set A.

  4. Center guard bars, with a pattern space+bar+space+bar+space.

  5. Last three characters, encoded in character set C.

  6. Stop guard bars, always with a pattern bar+space+bar.