UPC-E Specification

UPC-E is the short form representation of a UPC-A number. It reduces the data length from 12 digits to 6 digits by compressing the extra zeros. It is suited for identifying products in small packages.

A UPC-E number has 6 digits with number system either 0 or 1. The first 5 digits are calculated based on a conversion algorithm described below. The last digit is the check digit of the original UPC-A symbol.

Conversion between UPC-A and UPC-E

Not all UPC-A numbers can be compressed to UPC-E. These codes who have a corresponding UPC-E code must have at least 4 zeros. The rules are:

  1. If the manufacturer code ends with 000, 100, or 200, the UPC-E code consists of the first two characters of the manufacturer code, the last three characters of the product code, followed by the third character of the manufacturer code. Under this case, The product code must be 00000 and 00999.

  2. If the manufacturer code ends with 00 but does not meet the #1 requirement, The UPC-E code consists of the first three characters of the manufacturer code, the last two characters of the product code, followed by digit “3”. The product code can only contain two digits(00000 to 00099).

  3. If the manufacturer code ends in 0 but non of the above qualifies, the UPC-E consists of the first four digits manufacturer code and the last digit of the product code, followed by the digit “4”. The product code in this case can only contain one digit(00000 to 00009).

  4. If the manufacturer code ends with non-zero digit, the UPC-E code consists of the manufacturer code and the last digit of the product code. In this case the product case can only be one from 00005 to 00009 because 0 to 4 has been used for the above four cases.

You can use this web-based free utility to perform conversion.

Check Digit Calculation

The UPC-E check digit is the same check digit of its corresponding UPC-A number. Therefore, to calculate the check digit of a UPC-E number, first convert it to UPC-A, then calculate the check digit using the algorithm described in UPC-A specification.

Encoding

A UPC-E symbol has the following structure:

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

  2. Left halve, five digits calculated from the equivalent UPC number.

  3. Check digit.

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