UPC-A / GTIN-12 retail product barcode labels with check digits

UPC-A configured for: UPC-A / GTIN-12 retail product barcode labels with check digits.

Looking for the general-purpose generator instead? UPC-A Generator

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.

UPC-A for North American retail packaging

Retail packaging is usually designed against a fixed barcode field on the artwork template, so the practical need here is a predictable, known bar height rather than bwip-js's own auto-computed size for a one-off code.

Preconfigured for packaging

This experience sets the bwip-js height option to exactly 20mm ("height": 20) instead of leaving it at the encoder default. It is an editable tool preset, not a universal packaging-compliance dimension.

Example data

The generator is seeded with "11234500005", an 11-digit UPC fragment (distinct from the primary's complete "012345000058") that bwip-js completes with a computed check digit; replace it with your own product's UPC.

Workflow

Enter your 11 or 12-digit UPC, verify the check digit, then export SVG for packaging artwork.

Job-specific settings

Scale the exported SVG uniformly rather than stretching width and height independently; UPC-A's bar-width ratios are as strict as EAN-13's, so disproportionate scaling breaks decode reliability the same way.

Common mistakes

Supplying an EAN-13 GTIN instead of the correct 12-digit UPC-A value is a common source of confusion between the two symbologies.

Standard

UPC-A/GTIN-12 symbol requirements are defined by GS1 and ISO/IEC 15420.

Related

For small packages, see the UPC-E generator; for international retail, see EAN-13.

FAQ

Why fix the height instead of using the auto-computed default?

Packaging artwork is usually built around a fixed barcode field on the template; a known 20mm value lets the rest of the layout be designed first instead of measuring the primary generator's output afterward.