Barcode Generator

Create a Code 128, EAN-13, UPC-A, Code 39 or ITF-14 barcode in your browser and download it as PNG or SVG. You can also paste a list or a CSV for a bulk ZIP. Nothing is uploaded. This tool draws a barcode for a number you already have; it does not issue GS1 product numbers.

FreeNo sign-upRuns in your browser

This tool draws a barcode for a number you already have. It does not issue, sell or register EAN, UPC or ITF-14 numbers. Retail numbers come from a GS1 prefix you own.

Values and CSV files stay on your device. Barcodes are drawn in this browser tab and nothing is uploaded or saved.

Preview

No barcode yet.

SVG stays sharp at any size, so it is the best choice for print. Always scan-test a printed label before you print a batch.

Bulk: many barcodes as a ZIP

Uses the barcode type and settings above. Up to 500 rows per batch.

Column 1 = value, column 2 (optional) = file name. A header row such as “sku” or “code” is skipped.

Quick answer. Pick the barcode type, type the value and download a PNG or SVG. For EAN-13, UPC-A and ITF-14 we add or check the last digit for you. For a list, paste one value per line (or choose a CSV) and download a ZIP. Nothing is uploaded.

How to generate a barcode

  1. Pick the type. Code 128 for SKUs, EAN-13 or UPC-A for a retail number you already have, Code 39 for older systems, ITF-14 for cartons.
  2. Type the value. The preview updates as you type. If the value cannot be encoded, you see why (wrong length, a character the type does not allow, or a wrong check digit) and nothing is drawn.
  3. Download. PNG for documents and label apps, SVG for print. Turn the number under the bars on or off, and set the bar height, width and colours.
  4. Many codes? Use the bulk box: paste a list or choose a CSV and download a ZIP with one file per code.

Which format should I use?

TypeBest forWhat it accepts
Code 128Internal SKUs, bins, parcels, shipping labelsLetters, digits, spaces and punctuation (printable ASCII)
EAN-13Retail products outside North America12 digits + check digit, from your GS1 prefix
UPC-ARetail products in the US and Canada11 digits + check digit, from your GS1 prefix
Code 39Older scanners and systems that ask for itA-Z, 0-9, space and - . $ / + %
ITF-14Outer cartons and cases13 digits + check digit (a GTIN-14)

Retail numbers are not made up. An EAN-13 or UPC-A that goes on a product sold in shops must start with a GS1 company prefix that belongs to you or to your brand. GS1 (or your supplier) issues those numbers; this page does not. A random number may already belong to another company’s product. For your own stock, use Code 128 with your own SKU instead.

Check digits

EAN-13, UPC-A and ITF-14 end with a check digit that scanners use to catch typos. It is worked out with the standard GS1 method: starting from the digit next to the check digit and moving left, multiply the digits by 3, 1, 3, 1…, add them up, and the check digit is whatever brings the total up to the next multiple of 10.

Example: for 590123412345 the weighted total is 93, so the check digit is 7 and the full EAN-13 is 5901234123457. If you type all 13 digits and the last one is wrong, the tool says so instead of drawing it, so a typo never ends up on a pack of labels.

Privacy

SKUs, product numbers and CSV files stay in this browser tab. Barcodes are drawn by JsBarcode, an open-source library hosted on this site. Nothing is saved in your browser or put in the address bar, and Microsoft Clarity session recording is switched off on this page.

Need a code for a web address, Wi-Fi details or a longer message? Use the QR Code Generator. To size label artwork, try the Image Resizer.

Frequently asked questions

Is this barcode generator free?

Yes. No account, no watermark on the file and no limit on single barcodes. A bulk batch is limited to 500 rows only so your browser stays stable.

Is my list uploaded?

No. Barcodes are drawn in this browser tab. Values and CSV files are not sent anywhere, not saved and not put in the address bar.

Do you calculate the EAN-13 or UPC check digit?

Yes. Enter 12 digits for EAN-13 (11 for UPC-A, 13 for ITF-14) and we add the check digit. Enter the full number and we check it; a wrong last digit is shown as an error and nothing is drawn.

Can I generate barcodes in bulk from a CSV?

Yes. Paste one code per line or choose a CSV file with the code in the first column and an optional file name in the second, then download a ZIP of PNG or SVG files. Bad rows are listed with the reason and skipped, never drawn.

Can I use these barcodes on products sold in shops?

The symbol will scan if the number is valid, but retail EAN and UPC numbers must come from a GS1 company prefix you (or your supplier) already have. We do not issue or sell numbers, and you should not make one up: it may belong to another company.

What is the difference between a barcode and a QR code?

Barcodes here are linear codes for SKUs and product numbers that a normal laser scanner reads. For a web address or a longer piece of text, use the QR Code Generator.

Which format should I pick for a shop SKU?

Code 128 is usually the best choice for internal stock, bin and parcel labels, because it takes letters and digits and stays compact. Use EAN-13 or UPC-A only when you already have that retail number.