Skip to main content
PulsarKit

Barcode generator

Draw an EAN, UPC, CODE128, CODE39, ITF-14, MSI, pharmacode or codabar barcode, with the check digit worked out for you.

How to Generate barcode

  1. 1

    Choose the barcode format

    Nine formats are supported. Retail products use EAN-13 in most of the world and UPC-A in North America; shipping cartons use ITF-14; anything internal is usually CODE128, which takes letters as well as digits.

  2. 2

    Type the value and set the size

    The preview redraws as you type, and the check digit appears by itself where the format has one. Bar width, height, margin, the caption and both colours are all adjustable.

  3. 3

    Download PNG or SVG

    One code comes down as a single file named after its value. Turn on the list mode to paste up to 500 values and get a ZIP with one file per line, plus a report of any lines that did not fit the format.

Where the check digit comes from

EAN-13, EAN-8, UPC-A and ITF-14 all end in a digit that is not data but arithmetic: every other digit is multiplied by three, the rest by one, the products are summed, and the check digit is whatever brings that sum up to a multiple of ten. It exists so a scanner can tell a misread from a real code. Type twelve digits for an EAN-13 and the thirteenth is added for you; type all thirteen and the one you typed is verified instead, with the correct digit named if it does not match. A single mistyped digit almost always breaks the checksum, which is exactly what it is for.

Which format for which job

EAN-13 and UPC-A are for products sold at a till and both need a registered company prefix from GS1. A barcode you invent yourself will scan, but it will not mean anything in someone else's system. EAN-8 is the short version for small packages. ITF-14 goes on outer cartons. CODE128 is the everyday workhorse for internal labels: it takes the whole ASCII range and any length. CODE39 is older, limited to digits, capitals and a handful of punctuation, and produces wider bars for the same content. MSI turns up on shelf-edge labels, pharmacode in pharmaceutical packaging, and codabar in libraries and blood banks.

Bar width, contrast and whether it actually scans

A linear scanner needs bars wide enough to resolve and a dark-on-light contrast it can threshold. One pixel per module is often too fine for a laser scanner once printed; two or three is safer. Coloured bars are the usual reason a code fails in the field, so any pair of colours below a 3:1 ratio is refused outright and anything below 4.5:1 is flagged. Keep the quiet zone on both sides: a barcode printed hard against the edge of a label is a barcode that does not read.

Values never leave your browser

Every code is drawn in this tab with JavaScript and a canvas. Product codes, batch numbers and internal SKUs are not uploaded, logged or stored anywhere, and the ZIP for a 500-line list is assembled in memory on your own machine.

Frequently asked questions

What is the difference between EAN and UPC?

UPC-A carries twelve digits and is the North American standard; EAN-13 carries thirteen and is used almost everywhere else. An EAN-13 starting with a zero is a UPC-A with a leading zero, and modern tills read both.

Where does the check digit come from?

It is calculated from the digits before it: alternating weights of three and one, summed, then subtracted from the next multiple of ten. Type the value without it and it is added; type it in and it is verified.

Which format should I use for a product in a shop?

EAN-13 in most of the world, UPC-A in the United States and Canada. Both need a company prefix issued by GS1. This tool draws whatever you type, but only a registered number will resolve to your product in a retailer's system.

Can I print these on an ordinary printer?

Yes, and a 600 DPI laser printer handles them comfortably. Print the SVG rather than the PNG for the sharpest bars, use plain white paper or matte labels, and avoid scaling the printout after the fact.

What bar width does a scanner need?

As a rule of thumb, keep the narrow bar at or above 0.25 mm on the finished print. Setting the width to two or three pixels per module and printing at full size gets you there for most label sizes.

How many codes can I make at once?

Up to 500 values in one go. Paste them one per line, and you get a ZIP with a file per value. Lines that do not fit the chosen format are listed in an errors.csv inside the archive rather than stopping the rest.

Why does a coloured barcode fail to scan?

Scanners see contrast, not colour, and many use red light that renders red bars nearly invisible. Black bars on white is the reliable choice; any pair below a 3:1 contrast ratio is refused here for that reason.

Related tools