Skip to content

Generate barcodes

Create EAN-13, UPC-A, Code 128, Data Matrix, PDF417 and other barcodes with verified check digits, then download PNG or SVG or print label sheets, all in your browser.

12 digits (the check digit is added) or 13 digits.

Enter a value to draw a EAN-13 barcode
Selling in shops? Get your numbers from GS1
Retail barcodes only scan as your product if the number is registered to your company. GS1, the standards body, issues company prefixes through its national offices; this tool draws the bars and checks the digit, but it can't issue or register numbers.
Runs in your browser · no uploadHow it works

How to use Barcode generator

  1. 1

    Choose the symbology

    Pick EAN-13 or UPC-A for retail products, ITF-14 for cartons, Code 128 or Code 39 for inventory, or Data Matrix and PDF417 for longer text.

  2. 2

    Type or paste the value

    Leave the check digit off and it is calculated for you; type it and a wrong one is caught with the correct digit shown.

  3. 3

    Set the print size

    Adjust bar width, height, colors, quiet zone and the PNG resolution; the preview lists the physical size in millimetres.

  4. 4

    Download or print labels

    Save one PNG or SVG, or switch to Bulk to turn a list or CSV into a ZIP of images or a PDF of label sheets.

Limits and Pro

Single barcodes are unlimited. Bulk exports and label sheets take up to 100 barcodes per ZIP or PDF; CSV imports up to 5 MB.

Pro raises bulk exports and label sheets to 2,000 barcodes per file. See Pro

About Barcode generator

Barcode generator draws ten symbologies: EAN-13, EAN-8, UPC-A, UPC-E, ITF-14, Code 128, Code 39, Codabar, Data Matrix and PDF417. The bars come from bwip-js, an open-source port of the Barcode Writer in Pure PostScript project, running in a background worker on your device. Before anything is drawn, the value is checked: the GS1 mod-10 check digit for EAN, UPC and ITF-14 is computed when you leave it off and verified when you include it, UPC-E is expanded to its UPC-A equivalent for the check, and characters a symbology can't carry are named in the error.

Sizes are set in millimetres. A PNG uses whole pixels per bar at 150, 300 or 600 dpi and stores that resolution in the file, so layout software places it at the intended size; an SVG carries its width and height in millimetres and stays sharp at any scale. Bulk mode accepts pasted lines or a CSV file with an optional label column used for file names and captions, then exports a ZIP or a PDF for common label sheets, including 3 × 7 A4 and 3 × 10 Letter layouts, with an option to skip labels already used.

A barcode is only a picture of a number. For products sold through shops, the number itself must come from GS1, which licenses company prefixes through its national member organizations; retailers look products up by that registered number. The tool cannot register numbers, and it doesn't make QR codes, which have their own generator.

Privacy

Values, CSV files and every image or PDF are processed by a worker in this browser tab; nothing is uploaded or stored on our server. Only your size and color settings are remembered in this browser for next time.

Features

Check digits handled

Computed when missing, verified when present, with the correct digit shown in the error.

Real-world sizing

Bar width and height in millimetres, PNG at 150 to 600 dpi with the resolution saved in the file.

Bulk and label sheets

Lists or CSV files become a ZIP of PNG or SVG files, or a print-ready PDF of labels.

Barcode generator: frequently asked questions

Can I use this generator to get a barcode number for my product?
No. The generator turns a number you already have into bars. For goods sold in stores or on marketplaces such as Amazon, buy a GS1 company prefix or individual GTINs from your country's GS1 office, then enter those numbers here. Numbers bought from unofficial resellers may already belong to another company and can be rejected by retailers.
How is the EAN-13 or UPC check digit calculated?
Starting from the digit next to the check position and moving left, multiply digits alternately by 3 and 1, add the results, and take the amount needed to reach the next multiple of ten. For 590123412345 the sum is 83, so the check digit is 7. Type 12 digits and the tool appends it; type 13 and it verifies the last one.
What size should a printed retail barcode be?
EAN-13 and UPC-A are designed around a 0.33 mm bar module, which gives a symbol about 37 by 26 mm including the digits. Retail specifications allow scaling between roughly 80% and 200% of that size. Keep the quiet zone, avoid shortening the bars, and test a printed sample with a phone scanning app before ordering packaging.
Which barcode type should I use for inventory or asset labels?
Code 128 is the usual choice: it encodes letters, digits and punctuation compactly and most handheld scanners read it by default. Code 39 is older and wider but accepted by many legacy systems. If labels must hold a long serial number or a web address in a small square, Data Matrix fits far more data per square centimetre.
How do I print a whole sheet of barcode labels?
Switch to Bulk & labels, paste your values one per line with an optional label after a comma, and choose a sheet layout. Set copies to repeat each code, or skip labels already used on a partly peeled sheet. Print the PDF at 100% scale, not fit to page, and try a plain paper test with outlines first.