Barcode Generator

Type a value, pick Code 128, EAN-13, EAN-8, UPC-A, Code 39 or ITF-14, and the barcode redraws as you type, ready to download as PNG or SVG. The tool is free, needs no sign-up and runs in your browser, so nothing you type is uploaded.

Barcode GeneratorPrivate · runs on your device
Settings
Your barcode

How to use the barcode generator

The barcode appears as soon as the value is valid, and it redraws every time you change a control, so there is no generate button. A message under the preview says whether the barcode is ready or what is wrong with the value.

  1. Open Barcode type and choose the symbol you need. The page starts on Code 128 with the sample value TOOLSWISH-2026. If you switch type while the box still holds the sample, the box fills with a valid sample for the new type.
  2. Type or paste your text or digits in Value. If the value does not fit the type, the barcode disappears and a hint states what that type accepts, such as 12 or 13 digits for EAN-13.
  3. Set Bar width (1 to 6, default 2) and Bar height (30 to 300, default 100). Wider bars are easier to scan and print.
  4. Tick or untick Print the value under the bars, and change Bar color if you need something other than black. The background is always white.
  5. Press Download PNG for a picture or Download SVG for a vector file that stays sharp at any size. The file name includes the type and the value.

Before you print many copies, scan one with a phone camera or a scanner to confirm that it reads back the exact value you typed.

Choosing a barcode type

The six types differ in what they can hold and where they are normally used. Pick the one the scanner, the printer or the other party expects, not the one that looks neatest.

TypeWhat it acceptsTypical use
Code 128Any text: letters, digits and common punctuationInventory, shipping labels, asset tags, event passes
Code 39A-Z, 0-9, - . space $ / + %Simple internal labels and badges
EAN-1312 digits, or 13 with a correct check digitRetail products outside North America
EAN-87 digits, or 8 with a correct check digitRetail products too small for EAN-13
UPC-A11 digits, or 12 with a correct check digitRetail products in the US and Canada
ITF-1413 digits, or 14 with a correct check digitCartons and outer packs

For anything you create yourself, Code 128 is the flexible choice: it takes mixed text and produces a compact symbol. Code 39 is older and longer for the same text, and the tool prints it in capitals even if you typed lowercase. If you want a symbol that carries a web address or a longer message and is read by phones, use the QR code generator instead, because a one-dimensional barcode holds a short value only.

Check digits, with a worked example

EAN-13, EAN-8, UPC-A and ITF-14 end with a check digit, calculated from the digits before it so a scanner can reject a misread. You can type one digit fewer than the full length and the tool adds the check digit. If you type the full number, the check digit must be correct, or the tool refuses it and shows the format hint.

For EAN-13, multiply the first 12 digits by 1 and 3 alternately from the left, add the results, and choose the digit that brings the total up to a multiple of 10. Take 590123412345:

Digit590123412345
Weight131313131313
Product52703294329415

The products add up to 83. The next multiple of 10 is 90, so the check digit is 7 and the full number is 5901234123457. Type the 12 digits and the tool shows that 13-digit number. Change the last digit to 0 and the tool rejects it.

The other three types follow the same idea with their own weights, so let the tool do the arithmetic. Typing 9638507 in EAN-8 gives 96385074, 12345678901 in UPC-A gives 123456789012, and 1540014128876 in ITF-14 gives 15400141288763. The number base converter and the random number generator are handy for building test values.

Retail numbers, printing and scanning

The tool makes a valid barcode symbol, but it does not issue numbers. Barcodes used to sell products in shops must be built on a company prefix issued by GS1 or one of its resellers. A number made up here is not unique worldwide, so do not use it on goods that will be sold. For internal labels, inventory, shipping, tickets and events, Code 128 and Code 39 are fine, and a unique ID from the UUID generator can serve as the value.

A barcode needs empty space on both sides, called the quiet zone. The tool adds a margin of 14 units around the bars, so keep that white space when you place the picture in a document or crop it. To print one that scans:

  • Keep the default Bar width of 2 or more, and make the height generous.
  • Use dark bars on a white background. Pale colors and low contrast are the most common reason a scanner refuses a label.
  • Print at 100 percent. Scaling a picture in a document can blur the bar edges, which is why the SVG download is the safer file for print.
  • Test one printed copy with a phone camera or a scanner before printing a batch.

The PNG download redraws the vector bars three times larger on a white background, so it stays crisp in most layouts. If you need other sizes or formats, the image converter can change the file type.

Quick answers

Frequently asked questions

The questions people ask most, answered in plain words.

Can I use this barcode generator for products I sell in shops?

No, not for retail products. Shops expect EAN or UPC numbers built on a company prefix issued by GS1 or one of its resellers, and this tool does not assign or register numbers. A number typed here makes a valid symbol but is not unique worldwide, so use it for practice, testing or internal labels only.

What is a check digit and does the tool add it?

A check digit is the last digit of an EAN-13, EAN-8, UPC-A or ITF-14 number, calculated from the digits before it so scanners can catch misreads. If you type one digit fewer than the full length, the tool adds it. If you type the full number with a wrong check digit, it rejects the value.

Which barcode type should I use for inventory labels?

Code 128 is the usual choice for inventory, shipping and asset labels because it accepts any letters, digits and common punctuation in a compact symbol. Code 39 also works for simple labels using capitals, digits and a few symbols. Use EAN or UPC only when you hold properly issued retail numbers.

How do I make a barcode that scans reliably?

Use dark bars on a white background, keep the bar width at 2 or more, and leave the white margin around the bars untouched. Print at 100 percent size, preferably from the SVG file, and scan one printed copy with a phone camera or scanner before you print a whole batch.

Are the values I type uploaded anywhere?

No. The bars are drawn in your browser, and the PNG and SVG files are created on your device when you press the download buttons. Nothing you type is sent to a server or stored, and there is no account. Refreshing the page clears the value and returns the sample.