Barcode Generator

Create genuine, scannable Code 128, Code 39, and EAN-13 barcodes and download them as a PNG.

Copied

Last updated

Copied

About this tool

These three formats cover most everyday 1D barcode needs but serve different purposes. Code 128 packs any printable ASCII text (letters, digits, punctuation) into the narrowest space, so it's the usual choice for shipping labels and internal tracking codes. Code 39 is an older, simpler format restricted to uppercase letters, digits, and a handful of symbols — it needs more space per character but is still common in industrial and legacy systems because it's so easy to decode reliably. EAN-13 is the standard behind the barcode on almost every retail product; it always encodes exactly 13 digits (12 plus a check digit this tool calculates for you) using a fixed structure of left- and right-hand digit patterns.

Every barcode is built and rendered entirely with vanilla JavaScript in your browser — the bar widths come from the real Code 128, Code 39, and EAN-13 symbol tables, not an approximation. Nothing you type here is sent to a server.