The tool you need, ready to use

Barcode Generator

Enter a 12-digit product number and the check digit is worked out for you, so an EAN-13 barcode is drawn at once. For example, 541234567890 is followed by 8, giving 5412345678908. Choose from 8 types, including ITF-14 for cartons and CODE128 for inventory and shipping, then save PNG, SVG or PDF at the GS1 scale and your printer's resolution, in real millimeters, or turn many numbers into one print sheet. Numbers are processed only in your browser and never sent to a server.

Last updated 2026-10-23All math stays in your browser
Barcode type

The strip below splits the barcode into sections. Point at a cell or move with the arrow keys to mark that section's bars on the label and show its pattern here.

Printer resolution (dpi)

Red-light contrast

Actual size (with quiet zones)
—
Bar width
—
Image
—

Check calculation

Last updated 2026-10-23Your inputs are not stored

ROBERIN standardThe tool you need,
ready to use.
  • Clear at a glanceInputs and results sit where you expect them.
  • Result firstThe key number comes first; the working only when you need it.
  • Ask lessNo sign-up and no unnecessary details.

Make retail, shipping and book barcodes from one number, sized for print

A barcode is a number drawn as bars and spaces of different widths. This generator draws the bars as soon as you enter a number, and for numeric types it works out and appends the final check digit. Choose EAN-13 and enter the product number 541234567890: the check digit 8 is added to give 5412345678908, and at the defaults (300 dpi, scale closest to 100%, which is 102.6%) the label comes out 38.27 mm wide including its quiet zones.

The structure strip under the label splits the barcode into sections from the left quiet zone to the right one. Point at a cell and the label marks which bars draw that digit, while the check calculation spells out how each check digit was reached.

When you need to make a barcode yourself

A barcode image is needed in more situations than you might expect, and each one calls for a different type and a different first check.

  • Packaging for a new product: enter the number your GS1 member organization gave you as EAN-13 (or UPC-A for US retail) and hand the printer an SVG or PDF. This tool does not issue the number.
  • Cartons for a warehouse: print a GTIN-14, the single-item number with a packaging level digit in front, as ITF-14. The check digit has to be recalculated whenever the first digit changes.
  • Inventory, location and shipping labels: make internal letter-and-digit codes as CODE128, and use the many-at-once mode to get a print sheet in one go.
  • Self-published books: make the 13-digit ISBN as EAN-13 and put the 5-digit add-on in the add-on field when you need one.
  • Images for web pages and documents: choose 96 dpi and the PNG has bar widths that land exactly on screen pixels.

How to use it

  1. Pick a barcode type from the samples at the top. Each sample is a small real barcode with its main use.
  2. Enter the number or content. For numeric types, leave the check digit off and it is added; if you paste a full number it is checked. Spaces, hyphens and full-width digits are cleaned up for you.
  3. The scale under the label is in real millimeters. Set the scale (or bar width) and bar height, then choose the resolution of the printer you will use.
  4. Save as PNG, SVG or PDF, or copy the image. For several numbers, switch to Many, enter one per line, and download a print-sheet PDF or a ZIP.
  5. Scan the printed barcode once with the scanner or phone app that will actually be used.

Eight barcode types and where each is used

TypeHoldsLengthCheckTypical use
EAN-13Digits13 digitsModulo 10Retail products (GTIN-13), book ISBNs (starting 978 or 979)
UPC-ADigits12 digitsModulo 10US and Canadian retail products (GTIN-12)
EAN-8Digits8 digitsModulo 10Small packages with no room for 13 digits (GTIN-8)
UPC-EDigits8 digitsHidden in the patternA zero-suppressed UPC-A for small US products
ITF-14Digits14 digitsModulo 10Shipping cartons and bundles (GTIN-14)
CODE128Letters, digits, symbols (ASCII)Any (80 in this tool)Modulo 103 (required)Inventory, shipping and internal numbers
CODE39Capitals, digits, - . space $ / + %Any (40 in this tool)Modulo 43 (optional)Asset and location tags, legacy systems
CodabarDigits and - $ : / . +Any (40 in this tool)Not usedExisting systems that already use Codabar

For a new internal numbering scheme, CODE128 holds the same content in the least space, because set C packs two digits into one symbol wherever digits run together. INV-20261023-0042, for example, becomes 17 symbols in this tool, counting start, check and stop.

Product barcode numbers are issued separately

Drawing a barcode and getting a product number are two different things. The 13-digit number on a retail product (GTIN-13) begins with a company prefix licensed by a GS1 member organization, one for each country or region. In the United States that organization is GS1 US, which describes a GS1 Company Prefix as a number unique to each member that identifies you as the owner of the brand. An EAN-13 you invent can collide with a number another company already owns.

  • The first digits are not the country of origin: GS1 says its prefixes do not identify the country of origin. They show which GS1 member organization issued the number (the list gives 001 to 019, 030 to 039 and 060 to 139 to GS1 US, for example), not where the product was made.
  • Books use an ISBN: prefixes 978 and 979 belong to the International ISBN Agency. It states that if you only want the ISBN in bar-coded form, you do not have to become a member of GS1. Ask your national ISBN agency how to get one.
  • Internal numbers: stock and asset numbers used only inside your business do not need a GS1 number. Choose them freely with CODE128 or CODE39.

Working out the check digit: 541234567890 is followed by 8

The last digit of an EAN, UPC or ITF-14 number is a check digit, which catches a digit that was misread or mistyped. Take the number without its check digit, multiply the digits by 3, 1, 3, 1... alternating from the right end, add everything up, and subtract the total from the next multiple of 10.

5×1 + 4×3 + 1×1 + 2×3 + 3×1 + 4×3 + 5×1 + 6×3 + 7×1 + 8×3 + 9×1 + 0×3 = 102 → 110 − 102 = 8

TypeNumber before the check digitSum of productsCheck digitFull number
EAN-13 product54123456789010285412345678908
EAN-13 book (ISBN)9780306406159379780306406157
ITF-14 carton1541234567890105515412345678905
UPC-A06141411234455061414112345
EAN-8950108659195010861

The ITF-14 row takes the single-item number 5412345678908, drops its check digit 8 and puts packaging level 1 in front. Counting from the right, every original digit keeps its weight, and the new 1 is multiplied by 3, so the sum rises from 102 to 105. The check digit therefore changes from 8 to 5. The ISBN in this row is a sample number.

The first digit of an EAN-13 has no bars of its own. Instead, the left six digits are drawn from two patterns, L (odd) and G (even), and the order in which they are used stands for the first digit. For 5412345678908 the first digit is 5, so the left six digits are drawn in the order L G G L L G and the right six all in R. The check calculation under the barcode shows this order too.

Print size: scale, bar width, height and quiet zones

Barcode size is set by X, the width of the narrowest bar. For EAN and UPC, X of 0.330 mm counts as 100%. At that size an EAN-13 is 37.29 mm wide including quiet zones, with bars 22.85 mm high. When you resize, change width and height by the same proportion.

TypeX range (target)Bar height (at target X)Quiet zones left, right
EAN-13, UPC-A0.264 to 0.660 mm (0.330)22.85 mmEAN-13 11X, 7X; UPC-A 9X, 9X
EAN-80.264 to 0.660 mm (0.330)18.23 mm7X, 7X
UPC-E0.264 to 0.660 mm (0.330)22.85 mm9X, 7X
ITF-140.495 to 1.016 mm (0.495)At least 31.75 mm10X, 10X plus bearer bars
CODE128No GS1 range set (this tool defaults to 0.33)This tool defaults to 15 mm10X, 10X

The EAN and UPC ranges in this table are for products scanned only at the retail checkout (GS1 symbol specification table 1). Products whose barcode is also scanned in general distribution (table 3) use X of at least 0.495 mm (target 0.660 mm, scale 150 to 200%), and an EAN-13 bar height of at least 34.28 mm at that minimum X.

A printer can only place whole dots, so bar width ends up a whole number of dots. This table shows how an EAN-13 at 100% lands at each resolution.

ResolutionOne dotDots per XActual XScaleWidth with quiet zones
96 dpi (screen)0.265 mm10.265 mm80.2%29.90 mm
203 dpi (label printer)0.125 mm30.375 mm113.7%42.42 mm
300 dpi0.085 mm40.339 mm102.6%38.27 mm
600 dpi0.042 mm80.339 mm102.6%38.27 mm

On a 203 dpi label printer, 2 dots (0.250 mm) is thinner than the 0.264 mm minimum, so 3 dots is the smallest size inside the standard. Stretching or shrinking a saved PNG in a document program breaks this fit. Place the PNG at its own size, or use the SVG or PDF, which scale cleanly. The PNG records the dpi you chose, so programs that read dpi open it at its real size in millimeters.

Before you print

  • Quiet zones: the blank space on both sides is part of the barcode. Keep text, lines and borders out of the hatched cells in the structure strip.
  • Color: GS1 measures print quality with red light at a wavelength of 660 nm (quality spec 1.5/06/660). Under red light, red, orange and yellow bars look as bright as the background, so use dark bars such as black, dark blue or dark green on white or a light color. The red-light contrast reading beside the tool puts a number on this.
  • Height: if you shorten only the height of an EAN or UPC for checkout use, scanners struggle to read it at an angle. When space is short, reduce the whole scale instead.
  • Digits: GS1 requires the digits in an EAN or UPC to be printed as human-readable text as well. Turn the digits off only for internal labels.
  • ITF-14 bearer bars: ITF-14 calls for bearer bars, top and bottom or all round. If you print directly on corrugated board with plates, use X of at least 0.635 mm and a full frame (4.83 mm).
  • A real scan: print quality, ink spread and label material all change the result. Scan a few copies with the real scanner before a large run.

Common mistakes

  • Leading zeros vanish in a spreadsheet: a number like 0614141... loses its 0 in a number cell. Set the cells to text before pasting into Many mode.
  • You added the check digit yourself and it is one digit off: if a 13-digit entry gives an error, one of the first 12 digits probably differs from the original. Use the fix-last-digit button only when you are sure the original is right.
  • A 13-digit number entered for ITF-14: the tool treats 13 digits as the single-item number and puts the packaging level in front. If you already have a 14-digit trade item number, enter all 14.
  • A 10-digit ISBN: the old 10-digit ISBN cannot be made into a barcode. Put 978 in front to get 13 digits, and the check digit is calculated again.
  • Lowercase in CODE39: the basic CODE39 set has no lowercase, so letters become capitals. Use CODE128 if lowercase has to be kept.
  • Using a screenshot: a screen capture smears bar widths to fit screen pixels. Use the file from the save buttons.

Limits

  • This tool draws barcodes. It does not issue GTINs or ISBNs, and it cannot check whether a number is registered.
  • It does not make 2D codes such as QR or Data Matrix, GS1-128 application identifiers (AI) and FNC1, GS1 DataBar, or postal barcodes. For QR codes, use a QR code generator.
  • CODE128 accepts only the 95 printable ASCII characters. Control characters, extended characters (FNC4) and other scripts cannot be entered.
  • The human-readable digits are drawn in a Helvetica or Arial style font. GS1 recommends OCR-B, but it also allows another font that is easy to read.
  • The print sheet is a fixed layout with 10 mm margins and 4 mm between cells. To match the cells of commercial label stock exactly, use a label printer or label software.
  • Red-light contrast is an estimate computed from screen color values. Real read rates depend on ink, paper and printing method.

Basis: sizes, quiet zones, heights, add-on barcodes and ITF-14 rules follow GS1 General Specifications Release 26.0 (January 2026); prefixes and country of origin follow the GS1 prefix list, and company prefixes follow GS1 US. The International ISBN Agency page on ISBN bar coding was read on October 23, 2026. Bar patterns were compared against JsBarcode 3.12.1, and saved images were read back with an OpenCV decoder.

Sources

Frequently asked questions

Can I put a barcode made with this generator on a product I sell?

Anyone can make the image, but the number on a retail product (GTIN) should be built from a company prefix licensed by a GS1 member organization. In the United States that is GS1 US, which describes a company prefix as a number unique to each member that identifies the brand owner. Retailers and marketplaces often ask for GS1-based barcodes, and a number you invent can collide with another company's product.

Does the number at the start of a barcode tell where a product was made?

No. GS1 states that its prefixes do not identify the country of origin. The first digits show which GS1 member organization issued the number. For example, 001 to 019, 030 to 039 and 060 to 139 are GS1 US prefixes, but a product with such a number can be made anywhere.

How is the check digit calculated?

Take the number without its last digit, multiply the digits by 3, 1, 3, 1... from the right end, add them, and subtract the total from the next multiple of 10. For 541234567890 the sum is 102, so 110 - 102 = 8 and the full number is 5412345678908.

Should I choose EAN-13 or CODE128?

Use EAN-13 for a product number scanned at a store checkout, or UPC-A for products sold in the US and Canada. For stock locations, shipping numbers or internal codes that mix letters and symbols or vary in length, CODE128 is shorter and denser. A carton's GTIN-14 is printed as ITF-14.

Can I make a barcode from text in other languages?

Not with these one-dimensional types. CODE128 holds only ASCII characters, and EAN, UPC and ITF-14 hold only digits. To carry other scripts, sentences or addresses, use a QR code.

How large should I print the barcode?

For EAN-13 the GS1 target X (narrowest bar) is 0.330 mm, which counts as 100%. At that size the width including quiet zones is 37.29 mm and the bar height is 22.85 mm. X may range from 0.264 to 0.660 mm (80% to 200%), with height scaled by the same proportion. Cutting only the height makes angled scans harder. If the same barcode is also scanned in warehouses and distribution centres, GS1 asks for X of at least 0.495 mm (150%).

What is the small 5-digit barcode next to a book's barcode?

It is an add-on barcode. The GS1 specifications provide 2- and 5-digit add-ons for periodicals and books. In this tool, choose EAN-13 and enter the 2 or 5 digits in the add-on field.

Why does the printed size differ slightly on a label printer?

A printer can only place whole dots, so a bar width is a whole number of dots. On a 203 dpi printer, 0.330 mm is about 2.6 dots, so the tool uses 3 dots (0.375 mm, 113.7%) and shows the real size. Stretching a saved image makes bar widths uneven, so pick the printer resolution first and then save.