Barcode Generator
Generate scannable CODE128, EAN and UPC barcodes and download them as images for labels, inventory and packaging.
How it works
A compact workflow from input to download.
Enter your data
Type the number or text the barcode should encode.
Choose a format
CODE128 for general use, EAN-13 or UPC for retail products.
Download the image
Save the barcode as an image ready to print onto a label.
Frequently asked questions
Which barcode format should I use?
Can I make my own EAN or UPC for a product?
Why won't my barcode scan?
Does anything leave my browser?
The check digit that catches misreads
The final digit of an EAN or UPC barcode is not part of the product number at all — it is a check digit, calculated from the digits before it by a fixed formula. When a scanner reads the code, it recomputes the check digit from what it read and compares. If they disagree, the read is rejected and the scanner simply refuses to beep. This is why a damaged or partially obscured barcode fails cleanly rather than silently ringing up the wrong item, which would be far worse. It is a beautifully cheap piece of error detection, and the same principle — a redundant digit derived from the others — protects credit card numbers, ISBNs and bank account numbers.
Printing barcodes that actually scan
Most barcode failures are printing failures, not encoding failures. Scanners work by detecting the contrast between bars and spaces, so they need genuine black on genuine white — not grey, not a coloured background, and not a glossy laminate that throws back a specular reflection into the reader. They need the quiet zone, an empty margin on each side, and putting text or a border too close to the bars will break the read. They need physical size: a barcode shrunk to fit a small label may have bars narrower than the scanner can resolve. And they need resolution, because a barcode scaled up from a low-resolution image has soft, blurred bar edges that no amount of contrast will rescue. Print it large, print it sharp, and leave it room.
Related tools
Continue the workflow with adjacent tools.