Barcode Generator
Make Code 128, EAN-13, UPC-A, EAN-8, ITF-14 and Code 39 barcodes, with check digits worked out, as SVG or PNG.
By Syed Mubashir Ali · Last updated
Which barcode do I need?
The four retail types (EAN-13, UPC-A, EAN-8, ITF-14) carry a number issued by GS1, so the shop's system knows exactly which product it is. Code 128 and Code 39 are free-form: use them for anything that only your own scanner needs to read.
| Type | What it holds | Use it for |
|---|---|---|
| Code 128 | Any letters, digits and symbols | Stock and part numbers, orders, shipping, asset tags, badges |
| EAN-13 | 13 digits, the last a check digit | Products sold in shops outside North America |
| UPC-A | 12 digits, the last a check digit | Products sold in shops in the US and Canada |
| EAN-8 | 8 digits, the last a check digit | Very small packs where an EAN-13 won't fit |
| ITF-14 | 14 digits, the last a check digit | Outer cartons and cases holding a number of a product |
| Code 39 | Capital letters, digits and - . $ / + % space | Older systems, some ID badges and industries that require it |
Printing barcodes that scan
Keep the bars dark and the background light: black on white is safest, and dark blue on white works too. Red bars and light backgrounds in colour often don't scan, because many scanners use red light. Leave the white margin around the bars, which scanners need to find where the barcode starts and ends.
Download SVG for anything printed: it's made of shapes rather than pixels, so it stays crisp from a small label to a large box. The PNG is drawn at three times the preview size for documents and label software that need an image. Retail barcodes have standard sizes set by GS1, so check their guidance if a shop will be scanning yours, and always test a printed sample before a full run.
How to Use Barcode Generator
- 1Pick the barcode type: Code 128 for any text or numbers, EAN-13, UPC-A or EAN-8 for products in shops, ITF-14 for outer cartons, or Code 39 for older systems.
- 2Type the value. For the retail types you can leave off the last digit: the check digit is worked out and added for you. If you type the full number, the last digit is checked.
- 3The barcode draws as you type. Adjust the bar width and height, the colours, and whether the number shows under the bars.
- 4Click Download SVG for print (it stays sharp at any size) or Download PNG for documents and labels, then test it with a scanner or a phone before printing many.
Frequently Asked Questions
Which barcode type should I use?
For your own use (stock, parts, orders, asset tags, library or event badges), Code 128: it holds any text, numbers and symbols and is compact. For a product sold in shops, the type the retailer asks for: EAN-13 in most of the world, UPC-A in the US and Canada, EAN-8 for very small packs. ITF-14 goes on the outer carton of a product. Code 39 is mainly for older systems that ask for it.
Where do I get an EAN or UPC number?
From GS1, the organisation that issues retail numbers, through its office in your country. The number identifies your business and product, so it can't be made up: a random number can belong to another company's product, and shops and marketplaces check. Once you have the number, this tool draws the barcode for it.
What is the check digit?
The last digit of an EAN, UPC or ITF-14 number, worked out from the others so a scanner can tell when a number was misread. Type the number without it and it's added for you; type the full number and it's checked, with the correct digit shown if the one you typed doesn't match.
Can I use these barcodes on products I sell?
Yes. There's no watermark or licence on the barcode itself, so it's yours to print. What matters for retail is the number inside it, which has to be one registered to you. For internal labels with Code 128 or Code 39, any value you choose is fine.
Is anything uploaded?
No. The barcode is drawn in your browser and downloaded from there; the value you type never leaves your device.
About Barcode Generator
The Barcode Generator draws the six barcode types people need most: Code 128, EAN-13, UPC-A, EAN-8, ITF-14 and Code 39. It checks that what you type fits the type you chose, works out the check digit for the retail types, and updates the barcode as you type.
It runs entirely in your browser using JsBarcode, so nothing is uploaded, and downloads come as SVG for print or PNG for documents. For square codes that hold a link, a Wi-Fi network or a contact card, use the QR Code Generator instead.