Barcode generator

Code 128, Code 39, EAN-13, EAN-8 and UPC-A, as PNG or SVG. The check digit is computed and verified before the symbol is drawn, so a barcode that would scan as a different product is refused rather than printed.

Preview

The bar encoder is not loaded until you first preview a barcode — the page asks for nothing else, and nothing you type is sent anywhere. Everything above runs in your browser.

About the check digit

UPC-A, EAN-13 and EAN-8 end in a check digit computed from the digits before it, Code 39 has one computed over its 43-character alphabet, and Code 128 has one computed over its 103 symbols. Give the payload without a check digit and it is appended for you; give a complete symbol and it is verified, with the expected digit named if it is wrong.

These are internal and retail product codes, not QR codes — nothing here links a physical object to a destination. If that is what you need, the main generator does it.

Create a QR code instead