Create barcodes for products, labels and stock

Barcode type

Size and look

Type a number or a code and get a scannable barcode: EAN-13, EAN-8, UPC-A, UPC-E, Code 128, Code 39, ITF-14 and more. Missing check digits are worked out for you and wrong ones are pointed out before you print. Paste a whole list to make hundreds at once, download them as PNG or SVG, or lay them out on a printable label sheet. It all runs in your browser — no upload, no limit, and commercial use is fine.

How to make a barcode

  1. Pick the type. Code 128 for your own stock and labels, EAN-13 or UPC-A for retail products.
  2. Type the code. Missing check digits are worked out for you and wrong ones are flagged.
  3. Open Size and look to change the bar width, height, colours or the label size.
  4. Download a PNG or SVG, a ZIP of the whole list, or a printable label sheet.

Which barcode type do you need?

TypeHoldsUsed for
Code 128Letters, digits and symbolsYour own stock, assets, shipping labels — no registration needed
EAN-1313 digitsRetail products outside North America
UPC-A12 digitsRetail products in the US and Canada
EAN-8 / UPC-E8 / 6–8 digitsSmall packages where a full code will not fit
Code 39Capitals, digits, a few symbolsIndustry, military and ID systems; older but widespread
ITF-1414 digitsOuter cartons and cases in the supply chain
MSI / Codabar / PharmacodeDigitsWarehouses, libraries and blood banks, pharmaceutical packs

If you are labelling your own things — shelves, tools, boxes, equipment — use Code 128. It takes any text, so your own reference (WH-A12-0041) can be the barcode, and nothing has to be registered anywhere.

Check digits, explained once

The last digit of an EAN or UPC is not part of the product number: it is calculated from the other digits, so a scanner can catch a misread. This tool does the arithmetic. Type the first 12 digits of an EAN-13 and it adds the thirteenth and tells you what it added. Paste a full number and it verifies it — and if the last digit is wrong, it says which digit it should be instead of quietly drawing a barcode that fails at the till.

Retail numbers come from GS1, not from a generator

Any tool can draw the bars for a number. What no tool can do is give you a number that is yours. Retail barcodes are built on company prefixes licensed from GS1, and since 2016 Amazon has required UPCs registered with GS1; invented numbers get rejected or collide with someone else's product. So:

  • Selling in shops or on marketplaces? Get your numbers from GS1 first, then draw them here.
  • Labelling your own stock? Use Code 128 with your own references — no registration, no cost.
  • Testing a system? Any number works for testing scanners and software.

Printing barcodes that actually scan

  • The narrow bar decides everything. Keep it at or above about 0.33 mm for retail EAN and UPC codes; the tool shows the printed millimetres as you change the bar width.
  • Leave the quiet zone. The empty margin at both ends is part of the symbol. Cropping it tight is the most common reason a printed code will not scan.
  • Print at 100%. “Fit to page” scales the bars and can push the narrow ones under the readable limit.
  • Dark on light. Black on white is safest; scanners read contrast, not colour, and red bars are invisible to some of them.
  • Use SVG for print. Vector shapes keep bar widths exact at any size; a PNG stretched on a label goes soft.

A whole list at once, and a sheet to print

Switch on list mode and paste a column from your spreadsheet: every line becomes a barcode, and Download all gives you a ZIP with a PNG and an SVG of each, named after the code. There is no limit and no account.

Label sheet PDF arranges them on an A4 or US Letter page as a grid of labels — 38×21, 63×38 or 99×57 mm — with the quiet zone kept clear and the code printed under each one. The bars are drawn as vector shapes inside the PDF, so the sheet prints sharp on any printer. Print it at 100% on plain or sticker paper and cut along the grid.

Need a QR code instead?

QR codes hold links, Wi-Fi details and contact cards, and phones read them without a scanner app — that is a different job from a product barcode. The QR Code Generator makes those, with a scan check before you download. To put barcodes on an invoice or a delivery note, the Invoice Generator builds the document, and JPG to PDF turns a page of printed labels into a PDF.

Your numbers stay with you

Product numbers, customer references and internal codes say a lot about a business. Nothing typed here is uploaded: the barcodes, the ZIP and the label sheet are all built in your browser. No sign-up, no watermark, no cap on how many you make, and commercial use is fine — some free generators restrict exactly that.

Frequently asked questions

Which barcode type should I use?

For retail products sold in shops, EAN-13 outside North America and UPC-A inside it - both hold a 12 or 13 digit product number. For your own stock, assets or internal labels, Code 128 is the usual choice: it takes letters and numbers and is compact. Code 39 is older and used in some industrial and ID systems, ITF-14 goes on outer cartons, and Codabar still turns up in libraries and blood banks.

Can I use these barcodes on products I sell in shops or on Amazon?

Only if the number itself is yours to use. Retail barcodes are built on numbers licensed from GS1, and Amazon has required UPCs registered with GS1 since 2016 - a barcode drawn around a number you invented will fail their checks or clash with someone else's product. This tool draws any number you type, which is exactly what you want for internal stock, labels and testing, but it cannot give you a GS1 number. For your own warehouse, Code 128 avoids the question entirely.

What is a check digit, and do I need to work it out?

The last digit of an EAN or UPC is calculated from the ones before it, so a scanner can tell when a digit is misread. You do not have to compute it: type the first 12 digits of an EAN-13 (or 11 for a UPC-A) and the tool adds the final digit. Paste a full number and it checks it, and if the digit is wrong it tells you which one it should be rather than drawing a barcode that will not scan properly.

How do I make a lot of barcodes at once?

Switch on the list mode and paste one code per line - from a spreadsheet column, for example. Every line becomes its own barcode, they are previewed together, and Download all gives you a ZIP of PNG or SVG files named after each code. There is no limit and no account; a few thousand lines is a matter of seconds.

What is the label sheet for?

It lays your barcodes out on an A4 or US Letter page as a grid of labels, in the millimetre size you choose, with the quiet zone kept clear around each one. Print it on plain or sticker paper at 100% (not 'fit to page'), and cut. The barcodes on the sheet are drawn as vector shapes, so they stay crisp at any printer resolution.

PNG or SVG?

SVG for anything printed: it is made of shapes rather than pixels, so the bars stay sharp and exactly the right width at any size, which is what scanners care about. PNG for screens, spreadsheets and quick sharing. Both are free here - several barcode sites keep SVG for paying users.

How small can a barcode be printed?

The rule that matters is the width of the narrowest bar, not the overall size: keep it at or above about 0.33 mm for retail EAN and UPC codes, which works out at around 3 cm wide for a full EAN-13 with its text. Leave the quiet zone - the empty margin at each end - clear, use dark bars on a light background, and print at 100%. The tool shows the printed width in millimetres as you change the bar width.

Why is my code rejected as invalid?

Each type accepts a particular alphabet and length: EAN-13 needs 12 or 13 digits, EAN-8 needs 7 or 8, UPC-A 11 or 12, ITF-14 13 or 14, and ITF needs an even number of digits. Code 39 takes capital letters, digits and a few symbols, while Code 128 takes almost any character. The message under the field says which rule was broken and what the tool expected.

Is anything uploaded?

No. The barcodes, the ZIP and the label sheet are all made inside your browser, so your product numbers and customer codes never leave the device. There is no sign-up, no watermark and no cap on how many you generate.