UPC-A Generator

Generate UPC-A barcodes in your browser with live preview, validation, and PNG/SVG export.

Advanced options
Enter a value to see a live preview.
Options

These map directly to real generator options; anything not listed here is available under Advanced options above.

What UPC-A is

UPC-A (GTIN-12) is the standard North American retail product barcode, standardized alongside EAN-13 under ISO/IEC 15420.

Generate it now

Type just the first 11 digits now to have the 12th check digit computed for you, or all 12 to have them validated.

Valid input

UPC-A encodes exactly 12 digits including a Modulo-10 check digit; bwip-js computes the check digit if you supply the first 11.

Key options

Supported options include includetext and height.

Output and printing

Export SVG for retail packaging artwork; bwip-js always reserves the required quiet zone on both sides, independent of the guardwhitespace option.

Common uses

UPC-A is the retail product barcode used across North America, carrying a GTIN-12 assigned by GS1.

Example

The seeded example, "012345000058", is a bwip-js-verified valid GTIN-12 -- drop the final digit to see bwip-js compute the same check digit back from the first 11.

Size guidance

UPC-A's mandatory quiet zone is reserved unconditionally by bwip-js, the same requirement as EAN-13.

Troubleshooting

A mismatched check digit is the most common error; let bwip-js compute it from the first 11 digits.

Related formats

Related formats: EAN-13 (UPC-A is a special case of EAN-13 with a leading zero), and UPC-E for small packages.

FAQ

Is UPC-A really just EAN-13 with a zero in front?

Yes, structurally -- a UPC-A code padded with a leading zero decodes identically under EAN-13 rules, which is why many EAN-13 scanners read UPC-A without any special configuration.