UPC-E barcode generator
UPC-E is not a shorter number. It is the same twelve-digit UPC-A written in less space, and it works only because certain UPC-A codes contain a run of zeros that can be squeezed out and put back with no ambiguity. The eight digits printed under the bars — say 00123457 — expand to 001234000057 in the scanner before anything is looked up. That expansion is the whole point, and it is also where most of the trouble starts: people treat the short form as a separate item number, allocate it like one, and then wonder why the till finds nothing.
Appearance
202 × 244 px in the PNG
Specification
- Character set
- digits
- Length
- exactly 8 characters
- Check digit
- calculated automatically by the encoder
Generate UPC-E barcodes in bulk
Got a whole list of values rather than one? Generate UPC-E barcodes in bulk
Where it is used
- Single-serve and pocket-size goods where a full UPC-A will not fit: chewing gum, lip balm, batteries, sachets, cigarette packs
- Narrow cylindrical packs — lipsticks, vials, small cans — where a wide symbol would curve away from the beam before it finished
- Blister cards and small folding cartons whose printable panel is measured in centimetres, not tens of centimetres
- Products sold into the United States and Canada, where UPC remains the retail default and the eight-digit form is well understood at the till
How it compares
The comparison that matters is with EAN-8, because both are eight digits and both go on small packages, and they are not interchangeable. EAN-8 is its own number: a short GS1 prefix issues a code that exists in its own right, and nothing expands. UPC-E is a display form — the item is a UPC-A, and the compressed symbol merely stands in for it. That difference decides which one you can use. If you already licence a company prefix and hold a UPC-A that happens to compress, UPC-E costs you nothing extra. If your prefix does not produce a compressible number, no amount of wanting will make one, and EAN-8 becomes the answer — but EAN-8 numbers are allocated separately and sparingly, precisely because the space is small. Against UPC-A itself the trade is plain: UPC-E is roughly half the width and carries the same item, at the cost of only ever representing codes with the right zero pattern.
Common mistakes
- Treating the eight digits as the item number. They are not. The product in your catalogue is the twelve-digit UPC-A; the eight digits are a printing convenience. Systems that store the short form and never expand it will fail to match the same item scanned from a UPC-A elsewhere in the supply chain, and the two records will drift apart until somebody reconciles them by hand.
- Assuming any UPC-A compresses. Only codes with zeros in the right places do. The rules key on how the manufacturer code ends: a manufacturer code ending in 000, 100 or 200 gives up five digits of item number; one ending in 00 gives up four; one ending in 0 gives up three; anything else compresses only if the item number is a single digit. A number that fits none of these patterns has no UPC-E form at all, and the answer is a smaller UPC-A or an EAN-8, not a workaround.
- Computing the check digit over the eight digits. It is calculated over the expanded twelve-digit code, which is why typing the seven significant digits and letting the generator finish the job is safer than carrying a digit across from a spreadsheet. Get it wrong and the symbol is not merely wrong — it is a valid barcode for a different item, or for none.
- Using the number system digit as if it were free. Only 0 and 1 are valid in the first position of a UPC-E, and 1 is rare. A code beginning with 2 (in-store items), 3 (drugs), 4 (loyalty) or 5 (coupons) has no compressed form, and pretending otherwise produces a symbol that scans as something you did not intend.
- Printing it below the readable minimum because the pack is small. The magnification range runs from 80% to 200% of nominal, and at 80% the module is 0.264 mm. Below that the symbol is not a tight fit — it is a code that reads on the second or third pass at a busy till, which is the kind of failure nobody attributes to artwork.
Frequently asked questions
- Do I need a separate GS1 licence for UPC-E?
- No. The compressed form belongs to a UPC-A you already hold, and it is allocated from the same company prefix. What you cannot do is invent an eight-digit code directly: it has to expand to a twelve-digit number that is genuinely yours, because the scanner expands it before it looks anything up.
- Can I convert any of my UPC-A codes to UPC-E?
- Only those whose zeros fall in the right places. Compression is not a general shortening — it removes a specific run of zeros and records where it was, so the original can be rebuilt exactly. If your manufacturer code and item number do not leave such a run, the code has no compressed form. It is worth checking before the packaging is designed rather than after.
- Will a UPC-E scan everywhere a UPC-A does?
- In the United States and Canada, yes — retail scanners have expanded UPC-E for decades. Elsewhere it is read less consistently, because outside North America EAN-13 and EAN-8 are the everyday symbols and UPC handling is a compatibility feature rather than the norm. For a product sold mainly in Europe, EAN-8 is the safer small-pack choice.
- Why does the generator show eight digits when I typed seven?
- The eighth is the check digit, and it is calculated for you — over the expanded twelve-digit code, not over what you typed. That is the calculation people most often get wrong by hand, because the obvious approach, running the usual weighting over the eight visible digits, gives a different and invalid answer.
- Is UPC-E the same as EAN-8?
- No, and the confusion is expensive. Both are eight digits on small packages, but EAN-8 is a number in its own right, issued to you as such, while UPC-E is a compressed way of writing a UPC-A. They are allocated differently, they expand differently, and a system that treats one as the other will mismatch items.
Prefix registration
This generator draws a valid UPC-E symbol, but the image alone does not grant the right to sell a product under it in retail. The prefix is issued by GS1 — register it there before printing this code on packaging.