PRODUCT CODES, SKUS, ASSET TAGS, OR A WHOLE BATCH

Turn a code into a barcode.

Type or paste a product code, SKU, or any text, pick a format, and get a barcode ready to print. Need a lot at once? Switch to the batch barcode generator and turn a whole spreadsheet into a folder of barcodes in one go.

01Type or paste your code
02Pick a format and size
03Download the PNG
FORMAT:

Accepts letters, numbers and most symbols.

SIZE:

That value does not work for this format. See the note above the size options.

Your barcode will appear here.

Generate barcodes from a CSV

Upload a CSV with one row per barcode. Put the code or text in the first column, and an optional name for each file in the second column. Batch mode always uses Code128, since it accepts almost any text or number and does not need an exact digit count. Good for inventory tags, asset labels, or anything with a list.

Drop a CSV file here, or browse

One row per code. Header row is optional.

How this free barcode generator works

Type or paste whatever needs to become a barcode: a product code, a SKU, an asset tag, a serial number, or plain text, into the box above. As you type, a barcode is drawn instantly right in your browser. Pick a format that matches what you are labelling, choose a size, then download it as a PNG to print on labels, packaging, or paperwork.

Everything happens locally on your device. Nothing you type is sent anywhere, so it works just as well for an internal asset tag as it does for a code that will end up printed on a product.

Six formats are supported. Code128 is the safest default, since it accepts letters, numbers and most symbols and never asks for an exact digit count. EAN13 and UPC are the formats used on retail products at checkout, and both need a specific number of digits. Code39 is common on asset tags and in logistics. ITF14 is built for shipping cartons. Codabar shows up in older systems like library cards and some blood bank labels. If a format rejects your input, a note above the size options explains what that format expects.

Generate barcodes in bulk from a spreadsheet

The batch mode turns this into a bulk barcode generator: export a spreadsheet as a CSV, upload it, and get a barcode for every row at once, all using Code128. It is built for the situations where making labels one at a time is painful: tagging a shelf of inventory, printing asset labels for a fleet of equipment, or generating a batch of reference codes for a filing system.

Is this barcode generator free?

Yes. Generating and downloading barcodes here is completely free, with no account and no limit on how many you create.

What barcode formats are supported?

Code128, EAN13, UPC, Code39, ITF14, and Codabar. Code128 is the most flexible, since it accepts almost any text or number.

Which format should I use?

If you are not sure, use Code128. It accepts almost anything and never requires a specific digit count. Only choose EAN13 or UPC if you already have the exact digits assigned to a retail product.

Why did I get an error for EAN13 or UPC?

Those formats need a set number of digits. EAN13 needs 12 digits, and a check digit is added automatically, or the full 13 including a correct check digit. UPC works the same way with 11 or 12 digits. Any letters, symbols, or the wrong digit count will show an error.

Can I generate many barcodes at once?

Yes. Switch to "Batch from CSV," upload a spreadsheet with one row per code, and download every barcode as a single ZIP file. Batch mode always uses Code128.

Will these barcodes actually scan?

Yes, they are drawn with a standard barcode library that any modern scanner or phone camera can read. For handheld retail scanners, printing the code at least an inch tall keeps it reliable.

Are my codes uploaded anywhere?

No. Every barcode is drawn locally in your browser, the same as every other tool on this site. Nothing you type is sent to a server.

Can I use these barcodes commercially?

Yes, the images themselves are yours to use anywhere, including packaging, price tags, and shipping labels. One thing to know: an EAN13 or UPC code that will be scanned at real retail checkouts needs a number officially assigned through GS1 to be globally unique. This tool will happily draw a valid looking barcode for any digits you enter, but it cannot register that number for you.