Create EAN-13 retail barcodes with the GS1 check digit computed automatically. Free, instant PNG download, nothing uploaded. Type → instant barcode · nothing is uploaded
EAN-13 is the symbology scanned at virtually every checkout outside North America (where its compatible twin, UPC-A, is used instead — a UPC-A is simply an EAN-13 with a leading zero). Thirteen digits carry everything: a GS1 prefix identifying the numbering organization, the company prefix, the item reference, and a final check digit that catches misreads and typos. The alternating bar patterns encode each digit as 7 modules, and the guard bars in the middle and at both ends let the scanner orient itself — which is why an EAN can be scanned upside down.
The 13th digit is not data but arithmetic: the GS1 modulo-10 check. This generator computes it from the 12 significant digits and appends it automatically — enter 12 digits, and the full, valid EAN-13 appears in the status line and inside the symbol. If you already have all 13, enter them and the page verifies the check digit before drawing anything, so a transposed digit gets caught before it reaches a printer.
The barcode image is free; the number is not something to invent. Retailers and marketplaces require EANs issued against your own GS1 company prefix, because the number must be globally unique. This tool is for turning a number you legitimately hold into a clean, scannable image — for mockups, internal labels and drafts you can encode any 12 digits you like, but do not put a made-up number on a real product.
GS1 modulo-10: from the rightmost data digit leftward, multiply alternately by 3 and 1, sum everything, and take the distance to the next multiple of 10. Example: 400638133393 has a weighted sum of 89, so the check digit is 1 (89 + 1 = 90) and the full code is 4006381333931. The calculator above always shows the digit it computed.
A UPC-A is an EAN-13 whose first digit is 0. Scanners worldwide read both; if your product sells in North America the same bars work, since the numbering systems merged under GS1.
Yes — the page recomputes the check digit and compares it with your 13th digit before generating. On a mismatch it tells you the correct digit instead of drawing an invalid code.
Three usual causes: the number is not registered against a GS1 prefix the retailer accepts, the symbol was printed too small (below ~80% magnification), or the quiet zones were cropped. This page's PNG keeps the required margins — check the other two.
No. Everything on this page runs inside your browser using JavaScript and WebAssembly. Your file never leaves your device — you can even disconnect from the internet after the page loads and the tool still works.