Code
24 mm
1×

One step is one module. Scanners read a wider code from further away; a narrower one fits a smaller label. Choosing a symbology resets both sliders to a size that suits it.

Result

Enter data and press Generate.

SVG stays sharp at any size and is the one to send to a printer. PNG is the one to paste into a document.

A Barcode That Actually Scans

The width of every bar in a retail barcode encodes a specific digit, down to the module. Get one module wrong and the picture still looks like a barcode to a person while being unreadable to a scanner — which is the trap with images produced by drawing tools and by generative models: they draw something barcode-shaped instead of computing the bits.

This page computes them. The library underneath is bwip-js, the JavaScript port of Barcode Writer in Pure PostScript, which is the reference implementation these standards are usually checked against. On top of it sits the part that matters day to day: the check digit is worked out for you, verified when you supply it, and reported in a status line under the image, so you can see that what you are about to print is valid before you print a thousand of them.

It costs nothing and asks for nothing. No email, no account, no watermark stamped across the output, and no cap on how many codes you generate — this is a free online barcode generator in the plain sense of the words. Every part of it runs in your browser, so the data you encode never leaves the machine. If you searched for a free barcode gen, a bar code generator online free, somewhere to create a barcode online free or to make barcode online free, a barcode maker online free, a free code bar generator, or even barcode generator freeware to install — this does the job in a tab, with nothing to download.

The tool goes by many names. A barcode maker, a barcode creator, a barcode builder, a barcode gen, a barcode code generator, a barcode writer, a codebar generator, or a bar code maker online — all the same thing. Whether you want to generate barcode images for a catalog, create barcode labels for a shelf, or generate bar code stickers for a stockroom, the two fields above are the whole interface.

UPC Barcode Generator

UPC-A is the twelve-digit code on almost every product sold in the United States and Canada, and it is the reason most people end up on a page like this one. As a upc barcode generator this tool takes the eleven digits your supplier gave you and works out the twelfth itself — that final digit is a checksum, not data, and expecting a human to know it is the single most common source of confusion.

So a upc code generator, a upc generator, a upc creator, a upc maker, a upc gen, a upc symbol generator, or a universal product code generator — whichever phrase you used, pick UPC-A above and type what you have. If you want to upc code generate in bulk you will need to run one at a time here, but the arithmetic is identical: to generate a upc barcode or to make upc barcode images for a range of products, change the digits and press Generate again. Anyone generating upc barcodes for the first time should check the status line every time; it is there precisely so a wrong digit never reaches a label printer.

For shelf-edge tickets and stock labels, a upc label generator is the same tool with the printing step attached: use the SVG output and place it in your label template at the size the printer expects. To generate upc label sheets or make upc label runs for a shop, generate each code as SVG and lay them out in whatever your label software uses — the vector will stay sharp at any physical size, which a PNG will not.

One Thing a Generator Cannot Give You

Drawing a valid UPC or EAN symbol is not the same as owning the number inside it. Company prefixes are issued by GS1, and a barcode is only a registered GTIN — the sort a retailer will accept — if the number was allocated to you. This page produces a technically correct symbol for whatever digits you enter, which is exactly what you need for internal stock control, for testing a scanner, or for a number you already own. It cannot make an unallocated number legitimate, and no generator can.

Symbologies

Eight standards are available, covering nearly everything a small business or a developer runs into:

As a code 128 barcode generator this handles letters, digits and punctuation in any mix, which is what makes it the right choice for internal references, serial numbers and tracking codes that are not pure digits. The letters have to be Latin: accented and non-Latin characters fall outside the standard, and a scanner returns something else in their place. A code 128 barcode maker or code 128 barcode creator by any other name; searches for a barcode generator 128 land in the same place. Code 39 is the older sibling: as a code 39 barcode generator it accepts uppercase letters and digits, and if you need to create code 39 barcode images for equipment labels, pick it above. A barcode 39 generator is the same thing again.

For the two-dimensional formats, this doubles as a data matrix generator — a data matrix code generator in full — for marking parts too small for a linear code, and as a pdf417 barcode generator for documents. To create pdf417 barcode images, choose it in the list; note that both 2D formats carry their own error correction, so they stay readable even when a corner is scuffed. Both take Latin text, accented letters such as é, ü and ñ included. Cyrillic, Chinese and other scripts are refused: most scanners would read them back as the wrong characters.

Check Digits, in Detail

EAN-13, EAN-8, UPC-A and ITF-14 all end in a modulo-10 checksum. Working from the right, digits are multiplied alternately by three and one, the products are summed, and the check digit is whatever brings that sum up to the next multiple of ten. It catches every single-digit error and most transpositions, which is why it exists.

Two things happen here as a result. Type one digit short and the checksum is calculated and appended — normally you only know the digits your supplier gave you, and that is the digit they left out. Type the full number and it is verified instead; if the last digit does not agree, the page says which digit it should be and offers to correct it. Code 128 and Code 39 have no mandatory check digit, and the 2D formats replace the idea entirely with Reed–Solomon error correction, so the status line reports that instead.

Printing

Download the SVG when the code is going to be printed. It carries no resolution of its own, so it stays crisp whether it ends up 20 mm wide on a bottle or 100 mm on a carton — and the printed size is shown beside the preview, calculated from the module width you chose. Print too small and scanners struggle; print without the quiet zone on either side and they fail outright, which is why the generated image includes that margin already.

PNG is right for a spreadsheet, an email or a slide. Both are one click, and neither carries a watermark.

Batches and Shops

This page makes one code at a time. A true batch barcode generator takes a spreadsheet and returns hundreds of images, which is a different tool with a different interface, and pretending otherwise here would waste your time. For a handful of products, regenerating with new digits is quick; for a catalog, a script driving the same bwip-js library is the honest answer.

A note for shop owners: a shopify barcode generator is usually an app that reads your product list and writes barcodes back into it. If you only need the images — for a label sheet, a stock take, or a supplier form — generating them here and uploading them works, and costs nothing per code.

Questions