UPC-E Generator
Zero-compressed 8-digit version of UPC-A for tiny retail packages like chewing gum.
How UPC-E is structured
UPC-E prints a number system digit (0 or 1), six data digits and a check digit in a symbol about half the width of UPC-A. The six data digits are a compressed form: they expand back to a full 12-digit UPC-A by one of a handful of rules keyed to the pattern of trailing zeros in the number. The parity pattern of the printed digits is selected by the check digit, which is how a reader knows which expansion rule to apply.
UPC-E check digit
The check digit is not calculated from the six compressed digits — it is carried over from the expanded UPC-A. Compress the full 12-digit number first, then take its existing check digit into the UPC-E string. Recomputing a check digit on the eight printed digits produces a symbol that scans to a value no database recognises.
UPC-E compared with UPC-A
Against UPC-A, UPC-E trades the full number range for width and exists purely for small packages. Against EAN-8, UPC-E keeps a link to an assigned 12-digit UPC-A, while EAN-8 is an independently issued short number. Compare the UPC-A generator page for the same breakdown of structure, check digit and use cases.
Common UPC-E problems
A check digit was computed on the compressed number
This produces a perfectly scannable symbol containing the wrong item reference. Always start from the assigned 12-digit UPC-A, suppress the zeros, and keep that number's check digit in the printed symbol.
The payload cannot be compressed
UPC-E only represents UPC-A numbers whose manufacturer and item fields end in zeros in one of a few fixed patterns. If the six-digit result will not expand back to the original, the number is not UPC-E eligible and needs a different symbology.
The reader is configured for UPC-A only
Some retail scanners ship with UPC-E disabled, so a valid symbol reads as nothing. Enable UPC-E — ideally with expansion to UPC-A enabled as well — on every scanner that will see the label.
Where UPC-E is used
- Small retail packages such as gum, cigarettes and cosmetics
- Tickets, tags and shrink-wrapped items on a narrow face
- Existing UPC-A numbers that must fit a tight printed panel
Not sure this is the right symbology? The barcode format guide groups every supported 1D and 2D format by industry with its character set and limits.