Welcome to AI DO TOOL

Barcode Generator — CODE128, EAN-13 and more

Barcode Generator turns a string of characters into a scannable one-dimensional barcode, with six everyday symbologies built in: CODE128, EAN-13, EAN-8, UPC-A, CODE39 and ITF-14. The input is checked against the chosen symbology's own rules as you type; when the symbology uses a check digit, the missing digit is filled in automatically, and an illegal format is flagged right away. Three controls shape the look independently: bar width sets how many pixels each module occupies, height sets how long the bars run, and scale enlarges everything together — bars, text and quiet zone — so the preview redraws the moment you let go. Both the bars and the background take any colour; dark bars on a light ground are safest, and inverted colours let the same code sit on dark packaging. The human-readable line can be switched off, or restyled with another typeface, a larger size, a position above or below the bars, and adjusted spacing and alignment. The margin is the quiet zone: scanners rely on it to find where the code starts and stops, and the panel tells you whether the current value clears the minimum. The preview reports the real pixel size of the output; the PNG export suits web pages and chat attachments, while the SVG is a vector format that stays sharp when enlarged, handy for print and large-format work. The six symbologies cover the main cases from retail goods and internal tracking to shipping cartons, and picking the right one matters more than fine-tuning the look.

Barcode content

Symbology

12 or 13 digits, e.g. 690123456789

Check digit 2 will be appended automatically.

Size

2px
72px
1×

Colour

#000000
#FFFFFF
Presets

Readable text

Print the content beside the bars

18px

OCR-B is the typeface made for barcodes; if the system has not installed it, the renderer falls back to monospace.

Position
2px
Align

Margin / quiet zone

20px

Quiet zone is wide enough

Aim for at least 20px (10× the bar width); currently 20px

Recently generated

Nothing yet — barcodes you download or copy will show up here

Notes

Which symbology

For retail goods prefer EAN-13 or UPC-A; when the pack is too small for thirteen digits switch to EAN-8; for internal tracking, order numbers and arbitrary characters use CODE128; for industrial, alphanumeric codes that should not depend on a database use CODE39; for shipping cartons use ITF-14. Pick the wrong one and the scanner may refuse to read it at all.

Check digit and quiet zone

The last digit of EAN/UPC/ITF is a check digit worked out by fixed weights and used by the scanner to catch errors. The blank margins on both sides are the quiet zone, which the scanner uses to find the start and stop; a quiet zone too narrow is the most common reason a code will not scan, and the panel tells you whether the current value is enough.

Pixels and print size

Bar width and height are measured in pixels. Set the bar width, height and scale for the size you intend to print before you download; too small and the bars blur together, too large and the file grows with them. SVG is a vector, so it stays sharp and suits printing better.

How to use

  1. Pick a symbology first, then type the content — CODE128 takes any character, while EAN-13, UPC-A and ITF-14 accept digits only and in fixed lengths, and the rule is printed under the input.
  2. Drag the three sliders under Size to shape the look: bar width controls the pixels per module, height controls how long the bars run, and scale enlarges the whole thing including the text and the quiet zone.
  3. In the Text group decide whether the content is printed next to the bars at all, then change the typeface, size, whether it sits above or below, the gap to the bars and the left/centre/right alignment.
  4. The margin is the quiet zone, and the panel works out the recommended value and tells you whether the current one is enough; when it looks right, hit Download PNG or Download SVG — the SVG stays crisp at any size.

Frequently asked questions

How do I choose among the six symbologies?

For retail goods use EAN-13 or UPC-A; when the pack is too small for thirteen digits use EAN-8; for internal tracking, order numbers and arbitrary characters use CODE128; for industrial, alphanumeric codes that should not depend on a database use CODE39; for shipping cartons use ITF-14. Pick the wrong one and the scanner may refuse to read it at all.

What is the check digit, and why is it sometimes filled in automatically?

The last digit of EAN/UPC/ITF is a check digit computed from the other digits, used by the scanner to catch a slip or a missed bar. When you enter only the data digits (one short), the tool appends the correct check digit before drawing.

Why will my barcode not scan?

The most common cause is a quiet zone (the blank margin on both sides) crushed too narrow, or bar width and resolution too low so the printed bars blur together. Raise the margin above the suggested value, widen the bars a little, and make sure the print is clean.

Should I pick PNG or SVG?

PNG is enough for a web page or a chat attachment; for printing, large-format output, or anything that must stay sharp at any size, choose SVG — it is a vector format and never pixelates when enlarged.

Can I put the generated barcode straight onto a product?

No. A barcode used in real retail needs a legitimate manufacturer prefix obtained from an authority such as GS1; this tool only draws the pattern for the content you type and does not vouch for the code's legitimacy.

What is it

A barcode encodes characters as a run of black and white bars of different widths: bars and spaces follow each symbology's fixed pattern, and a scanner reads the ratio between widths rather than the absolute size, which is why the same content still scans when enlarged or shrunk. A blank quiet zone must sit on both sides, or the scanner cannot tell where the start and stop characters begin — a crushed quiet zone is the most common reason a barcode refuses to scan. Different symbologies solve different problems: CODE128 can hold every ASCII character and suits logistics and internal tracking; EAN-13 and UPC-A are the retail standards with a globally consistent check digit; EAN-8 serves packs too small for thirteen digits; CODE39 is self-checking and needs no database, so it shows up in industry and defence; ITF-14 is the carton and outer-case code. The check digit is not decoration: it is computed from the other digits by fixed weights and lets the scanner catch a slip or a missed bar. Bar width, height and scale are all measured in pixels — print too small and the bars blur together, print too large and the file swells to match. Knowing these differences is what lets you pick the right symbology and actually print a scannable code.

Origin & history

The technical family tree of the barcode runs back to Morse code: both encode information as a sequence of wide and narrow, long and short marks, and both are read back by measuring width or duration. In 1948 Bernard Silver and Norman Joseph Woodland at Drexel Institute of Technology began work on automatic identification; they filed in 1949 and were granted US Patent 2,612,994 in 1952 for a scheme that encoded data in concentric rings of varying width, known as the bullseye barcode. Limited by the phototubes and printing of the day, it never reached commercial use. In the 1960s North American railways tried the KarTrak system, pasting coloured stripes on the sides of freight cars to carry their numbers; wear and a high misread rate retired it, but it proved automatic identification could work at all. The real turning point came from retail. In 1970 several grocery companies formed the Ad Hoc Committee on a Uniform Grocery Product Code; in 1973 IBM's rectangular design was chosen as the UPC standard; and on 26 June 1974 the Marsh supermarket in Troy, Ohio, rang up the first live scan. Symbologies then branched out. In 1974 David Allais at Intermec designed Code 39, a self-checking code over 43 characters that needed no database and put letters directly into the bars, which made it popular in industry and defence. UPC spread through 1976. In 1981 came Code 128, able to encode all 128 ASCII characters, and in the same year the book trade adopted the 978/979 EAN prefix for ISBN barcodes. In the late 1980s ITF-14 became the standard for corrugated shipping cartons. In the 1990s GS1 extended Code 128 into GS1-128, using application identifiers to pack batch numbers, expiry dates and weights into one string. In 1994 Denso Wave in Japan introduced the QR code, moving information from a one-dimensional strip of widths into a two-dimensional area. One-dimensional codes still dominate shelves and shipping labels today, while two-dimensional codes have taken over the jobs that need more information packed in. Looking back, what barcodes truly solved was never "how to encode" but "how to get the whole world to agree on one encoding" — UPC only landed because retailers, printers and equipment makers sat at the same table for three solid years.

Related keywords

barcode generatorbarcode makerCODE128 generatorEAN-13 barcodeEAN-8 barcode
Keep a kind heart, hold integrity as your foundation, and cherish warm love; may the world know peace and humanity live in harmony.