UPC-A Barcode Generator
UPC-A is the twelve-digit retail barcode of the United States and Canada — the original checkout symbol, in continuous use since 1974. Enter 11 digits and the tool computes the check digit (and tells you); enter all 12 and it verifies yours. After encoding, the check digit is re-derived independently before the barcode is shown.
UPC-A generator
Generated locally in your browser — nothing you type is transmitted or stored.
A rendered symbol is not a registered number
Before printing this on anything you plan to sell: UPC numbers are licensed, not generated. Retailers and marketplaces increasingly validate GTINs against the GS1 registry, and a number nobody licensed to you will be rejected — or worse, collide with someone else's product. What this tool legitimately does is render numbers you already have the right to use: GTINs from your GS1 prefix, internal codes for a closed store system, or samples for design mockups.
UPC-A is EAN-13 wearing a shorter coat
The two symbologies share one numbering system (GTIN) and one check-digit algorithm. Worked at
build time by this site's engine: data digits 03600029145 require check digit
2, giving the complete UPC-A 036000291452 — and its EAN-13 form
0036000291452 yields the identical check digit
2, because a leading zero adds nothing to the weighted sum. That
equivalence is why an EAN-13 generator will accept your UPC with a zero in front, and why
scanners report either form interchangeably.
The mod-10 check, from the UPC side
In UPC terms: add the digits in the odd positions (first, third, fifth…), triple that sum, add the digits in the even positions, and the check digit is whatever lifts the total to a multiple of ten. It is the same 3-and-1 weighting as EAN-13, just described from the other end — both are anchored at the rightmost data digit, which always carries weight 3.
Print size and quiet zones
GS1 size guidance calls for light margins of at least 9 module widths on each side of a UPC-A symbol (GS1 size guide). The downloads include those quiet zones. Beyond the margins, the advice is qualitative but firm: print dark bars on a light background, do not scale below the sizes your print process can hold cleanly, and test the result with a real scanner — the supermarket laser is the only judge that counts.
UPC-A FAQ
How many digits do I enter?
Eleven or twelve. With 11 digits the tool computes the 12th (the check digit) and says so; with 12 it verifies your last digit against the first eleven and reports any mismatch instead of silently accepting it.
Is UPC-A different from EAN-13?
A UPC-A number is a 12-digit GTIN. Put a zero in front and you have its 13-digit EAN form — same product, same check digit, and EAN-capable scanners worldwide read both. UPC-A remains the conventional symbol on North American packaging.
Where do real UPC numbers come from?
From GS1. Companies license a GS1 company prefix (in the US, via GS1 US) and allocate product numbers under it. A generator can render any mathematically valid 12 digits, but only licensed numbers identify products in retail systems.
Why does my scanner read out 13 digits for a UPC-A?
Many scanners normalize every retail symbol to GTIN-13 form by prefixing a zero. The barcode is unchanged; the scanner is just reporting the same number in its 13-digit form.
Is anything I type sent anywhere?
No. Validation, check-digit math, and rendering run entirely in your browser; nothing is transmitted or stored.
Verify before production: mathematics checked here, optics checked by your scanner — always test the printed symbol. Everything runs locally in your browser; see the methodology page.