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.