Barcode Generator
Make a scannable barcode (Code 128, EAN-13, UPC-A, Code 39, ITF-14) for labels, packaging or shipping
To sell in shops or marketplaces, the number must come from GS1 (your company prefix). Numbers made here are fine for internal use, samples and testing.
Prints 3.12 in (7.9 cm) wide at 100% (936 px at 300 dpi).
About Barcode Generator
Generates a real, scannable barcode — Code 128, EAN-13, EAN-8, UPC-A, Code 39, or ITF-14 — from a number or text value, ready to download and use on inventory labels, product packaging, or shipping materials.
Choose a barcode format, enter the value to encode, and optionally describe what the barcode is for — that description is printed above the barcode in the downloaded PNG (the SVG download leaves it out), so anyone looking at the file later (not just the barcode reader) knows what it's for. You can switch the digits under the bars on or off and pick a taller or shorter bar. For many labels at once, choose "A list": paste one value per line and download one ZIP with a file per value; lines that cannot be encoded are listed with the reason and left out.
Each format has its own rules for valid input — EAN-13 needs 12 digits (the check digit is added for you), UPC-A needs 11, Code 128 accepts letters, numbers and symbols but no accents. If generation fails the tool tells you exactly what to change. The PNG downloads at 4× (300 dpi) by default; the 1× option is for screens, and the SVG scales to any print size.
Watch: Barcode Generator in Action
- Why does barcode generation sometimes fail?
- Each format has its own rules for valid input — EAN-13 needs exactly 12-13 digits, UPC-A needs 11-12, Code 128 accepts almost any text. If generation fails, that's almost always why, and the tool tells you what went wrong rather than silently producing something that won't scan.
- Which barcode formats can I choose?
- Six: Code 128 for letters, numbers and symbols without accents; EAN-13 for 13-digit retail; EAN-8 for 8-digit retail; UPC-A for 12-digit retail; Code 39 for letters and digits in factory and warehouse use; and ITF-14 for 14-digit shipping and case labels.
- Why does it complain about the number of digits or the check digit?
- Numeric formats accept either the body without the check digit (12 for EAN-13, 7 for EAN-8, 11 for UPC-A, 13 for ITF-14) or the full number. If you type the full number and the last digit is wrong, the message tells you the correct one.
- Will the caption appear in the SVG file?
- No. The caption is drawn only into the PNG, in a strip above the bars. The SVG download contains the barcode and the human-readable digits underneath it, so add any label text in your layout software.
- Are these real, scannable barcodes?
- Yes. They are encoded with the genuine symbology tables and check-digit rules for each format, not a decorative pattern. Whether a shop's system accepts the number is a separate matter, since retail products need numbers allocated under a GS1 prefix.
- What do the PNG sizes mean?
- The size menu scales the whole image: 1x is the small preview size, 2x doubles it and 4x quadruples it, labeled for print. The picture is redrawn at the larger scale rather than enlarged afterward, so the bars stay sharp.
- Is this barcode valid for Amazon or shops (GS1)?
- The bars are real and scan. Whether a shop or marketplace accepts the number is a separate matter: EAN-13 and UPC-A numbers for products you sell are issued under a GS1 company prefix, and marketplaces such as Amazon generally ask for numbers registered to your company. A number made here is fine for internal use, samples and testing, but it does not make a number yours. There is no way to get a GS1 number from this page.
- Is the check digit added?
- Yes, for EAN-13, EAN-8, UPC-A and ITF-14. Type the digits without the last one (12 for EAN-13, for example) and the check digit is added, so 590123412345 becomes 5901234123457. If you type the full number and the last digit is wrong, you get an error with the correct digit; the number is never silently changed.
- What size should I print?
- Choose PNG size 4x for print: it is saved at 300 dpi, and the page states the printed width at 100% (an EAN-13 comes out about 3.1 inches, 7.9 cm, wide). Do not shrink it much below that, because retail scanners need the bars wide enough. Print one sample and scan it with a phone before printing a full sheet.
- PNG or SVG?
- Use SVG when the barcode goes into a layout or label program, because it scales to any size without soft edges. Use the 4x PNG when you want a ready picture for a document or a label printer. Both come from the same value and the same settings.
- Can I make many barcodes at once?
- Yes. Choose A list (ZIP), paste one value per line and download one ZIP with a PNG or SVG file per value, named by the value, plus an index.csv. Up to 200 are made at a time. A line that cannot be encoded, such as one with a wrong check digit, is listed with the reason and left out of the ZIP.
- Can I hide the numbers under the bars or change the bar height?
- Yes. Untick Show the number under the bars to leave the digits off both the PNG and the SVG, and choose Short, Standard or Tall bars. Both apply to the single barcode and to the ZIP.
How to use Barcode Generator
Pick a Format, then type the Barcode Value; the preview redraws on every keystroke. The box starts with the sample 590123412345 in EAN-13. If the value does not suit the chosen format, a red message in the preview area says exactly what to change, for example how many digits are needed.
For the numeric retail formats you can type the digits without the final check digit and it is added for you, or type the full number and it is verified. The optional field What is this barcode for? prints a line of text above the bars in the PNG. Choose PNG size 1x, 2x or 4x, then press Download PNG, or press Download SVG for a vector file that scales without blur.
For many labels, press A list (ZIP), paste one value per line and choose PNG or SVG files. A line that cannot be encoded is listed with the reason and left out; it is never silently corrected. The ZIP holds one file per value, named by the value, plus an index.csv.
When to use it
Useful when you need a scannable label for your own stock room, a shelf bin, a library book, an asset tag or a shipping carton and a barcode font is not on hand. Code 128 suits internal SKUs and serial numbers, ITF-14 suits outer cartons, and any result can be saved as SVG and placed into a label template.
When not to use it
Do not put an invented EAN-13 or UPC-A on goods you intend to sell through shops or marketplaces. Those numbers are issued under a GS1 company prefix, and a made-up one can collide with another company's product. Keep generated numbers for internal use, or register with GS1 for genuine product numbers. For links, contact details or Wi-Fi sharing, a QR code is the better choice.
Tips for best results
Pick 4x when the barcode goes to a printer, or take the SVG, because a small PNG stretched up gets soft edges that scanners handle poorly. Keep the caption short: it adds a strip across the top of the PNG only, and the SVG contains just the bars and their digits. Test one printed sample with a phone scanner before printing a full sheet.
Limitations
Each format has hard rules. EAN-13 takes 12 or 13 digits, EAN-8 takes 7 or 8, UPC-A takes 11 or 12, ITF-14 takes 13 or 14, Code 39 allows letters, digits, space and - . $ / + % only, and Code 128 allows standard keyboard characters without accents or emoji. The tool draws black bars on white, with no color or bar-width controls. You can switch the digits under the bars off, pick a short, standard or tall bar, and make up to 200 barcodes at once from a pasted list.
Privacy
The barcode is drawn on a canvas in your browser by a JavaScript library bundled with the page. The value and caption you type are not sent anywhere, and the PNG or SVG file is built on your device at the moment you press download. The tool itself keeps nothing once you close the tab.
More from QR Codes & Barcodes: