To generate a barcode, pick a format such as Code128, EAN-13 or UPC-A, type the value, and the preview appears as you type. Adjust the bar size or colors if needed, then select Download PNG, Download SVG or Print. For EAN, UPC and ITF-14 you can leave out the last digit and the check digit is calculated for you.
How to use the barcode generator
- Choose the barcode type. Select Code128 for general labels, EAN-13 or UPC-A for retail products, or ITF-14 for shipping cartons. The hint under the tabs says what each format accepts.
- Enter the value. Type it in Barcode Value. The Validation box tells you straight away if the length or characters are wrong. Add an optional title and subtext to print above the bars.
- Adjust the design. Change Bar Width, Bar Height, Outer Margin, font, colors and PNG Scale. Use the toggles to hide the value, title or subtext.
- Export. Select Download PNG for images, Download SVG for sharp print artwork, or Print to send it to a printer.
Which barcode type should I use?
| Format | Accepts | Typical use |
|---|---|---|
| Code 128 | Letters, numbers and symbols | SKUs, inventory, asset tags, shipping labels |
| EAN-13 | 12 or 13 digits | Retail products outside North America |
| EAN-8 | 7 or 8 digits | Small retail packs |
| UPC-A | 11 or 12 digits | Retail products in the US and Canada |
| UPC-E | 6 to 8 digits | Small packs with a compressed UPC |
| Code 39 | A-Z, 0-9, space and - . $ / + % | Older industrial and internal systems |
| ITF-14 | 13 or 14 digits | Outer cartons and cases |
| MSI / Pharmacode | Digits only (Pharmacode 3 to 131070) | Shelf labels, pharmaceutical packaging |
If you're labeling your own stock and don't need a retail format, use Code 128. It's compact, reads reliably and takes any mix of letters and numbers. Code 39 letters are converted to capitals automatically.
UPC barcode generator: where do the numbers come from?
The generator will draw any valid UPC or EAN number, but it can't give you a number to sell with. Retail product numbers (GTINs) are issued by GS1, the standards body behind UPC and EAN. You license a company prefix, or for a few products a single GTIN, from your country's GS1 office. Major retailers and marketplaces check that the number is licensed to your brand, so a made-up or resold number can get a listing rejected.
Once you have the number, the generator does the rest. Enter 12 digits for EAN-13 (or 11 for UPC-A) and the check digit is added for you. If you enter all 13 and the last digit is wrong, the message under Barcode Value tells you the correct digit instead of drawing a bad barcode. ITF-14 works the same way: enter the first 13 digits of the carton's GTIN-14 and the 14th is added.
How the check digit works, using the EAN-13 sample 590123412345: add the digits in odd positions (5+0+2+4+2+4 = 17), add the digits in even positions and multiply by 3 ((9+1+3+1+3+5) x 3 = 66), then total them: 83. The check digit is the amount needed to reach the next multiple of 10, which is 7. The full code is 5901234123457.
Code 128 barcodes for inventory and shipping
Code 128 can encode all 128 ASCII characters, so values like SKU-2026-ALPHA or SHIP-BOX-2026-001 work as they are. It packs more data into the same width than Code 39, which helps on small labels. For internal labels you don't need anything from GS1: pick a numbering scheme, make sure each value is unique, and print.
To label many items, switch to the Bulk tab, paste one value per line, choose the Bulk Format and select Generate Bulk. Values that don't fit the format are skipped and counted, and Download ZIP saves the rest as PNG files named barcode-1.png, barcode-2.png and so on. For unique IDs you can paste a list from the UUID generator, though short IDs make narrower barcodes.
How to print barcodes that scan
- Keep the quiet zone. Scanners need blank space on both sides. Don't set Outer Margin to 0 unless your label adds its own margin.
- Use dark bars on a light background. Black on white is safest. Many scanners use red light, so red bars can disappear.
- Don't squash it. If a label is too narrow, lower Bar Width rather than resizing the image unevenly, which distorts bar widths.
- Pick the right file. The SVG is real vector art of the bars and value, ideal for print shops. The PNG and Print output include a title and subtext only if you type them, so by default you get just the bars and the number.
Always test a printed sample with the scanner or phone app you'll actually use. For links rather than numbers, a QR code generator is the better choice.
Frequently asked questions
Is this a free barcode generator?
Yes. It's free with no sign-up and no watermark, and you can make as many barcodes as you like, one at a time or in bulk.
Can I use a barcode from here to sell on Amazon or in stores?
Only if the number itself is licensed to you by GS1. The generator draws the barcode correctly, but retailers check the number against GS1's records, not the image.
What is the difference between UPC and EAN-13?
UPC-A has 12 digits and is used mainly in the US and Canada. EAN-13 has 13 digits and is used in most other countries. A UPC-A number can be written as an EAN-13 by adding a leading zero.
Why does the EAN-13 barcode generator reject my number?
The 13th digit is probably the wrong check digit. The message under Barcode Value shows the digit it should be. Enter only the first 12 digits and the generator adds the correct one.
Should I use Code 128 or Code 39?
Use Code 128 unless an older system requires Code 39. Code 128 supports lowercase letters and more symbols, and it makes a shorter barcode for the same text.
Is my barcode data uploaded anywhere?
No. Barcodes are drawn in your browser, and the values you type never leave your device.