Barcodes are the quiet workhorses of shops, warehouses, and libraries. A scanner reads the black bars, the system finds the product, and the price or stock record appears without typing. The two families you meet most are EAN, used across Europe and much of the world, and UPC, used in North America. They look similar, but they carry different digit counts, and a code made for one system will not scan in the other.
This generator draws real EAN-13, EAN-8, and UPC-A barcodes in your browser. Type the digits, pick the format, choose a bar width, and press Generate barcode. If you type one digit short, the tool computes the check digit and adds it for you. The barcode appears on the page with its number printed below the bars, and you can download it as a PNG for printing or as an SVG for design work. Nothing is uploaded anywhere.
Here is a worked example. A small maker selling jam at a market needs an EAN-13 code for a jar label. She types 590123412345, twelve digits, and picks EAN-13. The tool computes the check digit 7 and draws the full thirteen digit code 5901234123457. She downloads the PNG, places it on the label, and prints a test label first. The market scanner reads it, because the bars, the spacing, and the check digit all follow the standard.
The check digit is the part most people skip, and it is the part that catches mistakes. It is computed from the other digits with a weighted sum, so a single mistyped digit almost always makes the check digit wrong, and a scanner rejects the code instead of charging the wrong product. That is a feature, not a nuisance. If your code will not scan, check the digits against your source before blaming the printer: a wrong digit in the middle is the usual cause.
EAN-13 carries thirteen digits and suits most retail products. EAN-8 carries eight digits and suits small packages where a long barcode will not fit, such as a small cosmetic jar or a pencil. UPC-A carries twelve digits and is the standard for North American retail. If you sell in both regions, you may need both an EAN and a UPC version of the same product, because the two systems are not interchangeable even when they describe the same item.
Print quality decides whether a correct code scans. Print at 100 percent scale, never stretched, because stretched bars change the widths the scanner measures. Keep a quiet zone, a blank margin, on both sides of the bars; a barcode crowded by text or a border edge fails more often than people expect. Use dark bars on a white or very light background, and avoid glossy lamination directly over the code, which can reflect the scanner light.
One honest limit: drawing a barcode does not register it. Official product codes are issued by GS1, and a self-invented number may collide with another product or be rejected by a retailer system. For internal use, market stalls, library shelves, and warehouse bins, a self-made code works perfectly. For products going into major retail chains, get a proper GS1 company prefix first, then use this tool to draw the bars for the numbers you were issued.
Before a big print run, test the barcode the way it will actually be used. Print one label, stick it on the real product, and scan it with the cheapest scanner you own, not just the best one. If it reads first time in normal shop light, the print settings are right. If it needs several tries, increase the bar width or the print size before printing hundreds. A five minute test at this stage prevents a box of labels that nobody can scan.
