Barcode Generator

Runs entirely in your browser
Symbology

The retail barcode used everywhere outside North America. 12 digits plus a check digit.

5901234123457
Encoded: 590123412345795 modulesQuiet zone: 10 modules each side

Print at 100% scale — resizing a barcode in a document is the usual reason a symbol that looked fine on screen will not scan. Keep the white margin: a symbol printed flush to the edge of a label fails more often than a blurry one.

T
ALL TOOLS · THE CATALOG
93 single-purpose utilities · runs local
Browse all →
All tools process files entirely in your browser · Your data never leaves your device

Barcode Generator — EAN, UPC, Code 128, Code 39 & ITF-14

Six symbologies, real encoders, no watermark and no account. Type a GS1 number and the check digit is calculated and appended as you go — or flagged if the one you typed is wrong, which is more useful than silently accepting it. Export vector SVG for a label designer or a 4× PNG for a document. Everything is encoded by JavaScript in this page, so the numbers you are about to print never leave the machine.

Private by design. Barcodes are drawn as SVG in your browser — the numbers you encode are never sent to a server.

FreeNo sign-upRuns in your browserBusinessApplication

How to generate a barcode

  1. Pick the symbology. EAN-13 for retail outside North America, UPC-A inside it, EAN-8 for small packages, Code 128 for shipping and internal codes, Code 39 for legacy scanners, ITF-14 for outer cases.
  2. Type the data. For the GS1 codes, enter the payload without the check digit and it is calculated for you — or paste the full number and it is verified. Code 128 takes any ASCII 32–126; Code 39 takes digits, capitals and a few symbols.
  3. Size the bars. Module width is the width of the narrowest bar and is what actually determines whether a scanner can read the symbol. Bar height only affects how easy it is to aim. The 10-module quiet zone on each side is added automatically.
  4. Export SVG or PNG. SVG for anything that will be scaled — a label template, Illustrator, a print house. PNG is rendered at 4× so it survives being dropped into a document. Print at 100%: resizing a barcode after export is the usual reason a symbol stops scanning.

Frequently Asked Questions

How is the barcode check digit calculated?
Every GS1 symbology here uses the same rule: weight the payload digits 1, 3, 1, 3… from the right, and the check digit is whatever makes the total a multiple of ten. EAN-8, EAN-13, UPC-A and ITF-14 all share it — only the length differs. Type the payload and the tool appends it; type the full number and it verifies it.
What is the difference between EAN-13 and UPC-A?
UPC-A is an EAN-13 with a leading zero. The bar pattern is identical, which is why the two scan interchangeably on modern equipment — a UPC-A printed as an EAN-13 starting 0 is the same physical symbol. Use UPC-A for North American retail and EAN-13 elsewhere.
Which barcode should I use for a shipping label?
Code 128. It takes the whole printable ASCII range and packs digits two per symbol when it sees a run of four or more, so a long numeric code stays narrow. This tool does that switch automatically — the reason a 12-digit Code 128 here is noticeably shorter than one from a generator that does not.
Why is there white space around my barcode?
That is the quiet zone, and it is not decoration. A symbol printed flush to the edge of a label is the most common reason a scanner refuses to read otherwise perfect bars. GS1 asks for at least 10 modules on each side, which is what is added here.
My barcode will not scan. What is wrong?
In order of likelihood: it was resized after export (print at 100% or export a bigger module width), the quiet zone was cropped, the module width is too small for the printer's resolution, or it was printed on a reflective or coloured background. Bar height is almost never the problem.
Can I sell products with a barcode generated here?
The symbol is valid, but the number has to be yours. Retail EAN/UPC numbers are allocated by GS1 to a registered company prefix — generating a plausible-looking number here does not make it yours to use, and it may already belong to somebody else. For internal codes, warehouse labels and asset tags there is no such constraint.

Use Cases

Related tools

More free, in-browser tools from the Developer Tools set — every one runs locally, with no sign-up and no upload.

Browse all free online tools →