free tool · code 128 barcode generator · nothing leaves your browser

Code 128 barcode generator

The everyday barcode for labels used inside your company.

Code 128 holds letters, numbers and symbols, packs them tighter than older barcodes, and reads on almost every scanner. Make one Code 128 barcode or a whole run from your Excel list, then download it or print labels. Free, and nothing you type leaves your browser.

code type

Letters, numbers and symbols. The best all-round choice for labels used inside your company.

Printing opens your browser's print window. Choose your label printer, or “Save as PDF” to get a PDF of the labels. Set the scale to 100% (“actual size”), and print one sheet on plain paper first to check it lines up.

loading the generator…

what code 128 is

What a Code 128 barcode holds

Code 128 is a linear barcode: a row of bars and spaces read from side to side. It gets its name from the 128 characters it can carry, which cover everything on an English keyboard.

Characters
All 128 ASCII characters: capital and small letters, digits, spaces and punctuation
Length
No fixed length. Each character adds width, so short values make the best labels
Check character
Always included, calculated for you. Scanners check it, so a misread is rejected instead of typed in
Long numbers
Packed two digits at a time, so a 12-digit number makes a shorter barcode than 12 letters would
Scanners
Every linear (1D) and 2D barcode scanner, and phone apps
Standard
ISO/IEC 15417

where manufacturers use it

Where manufacturers use Code 128

Code 128 suits any label where you choose the numbering yourself:

  • Job cards and work orders. Scan the job number at each station to record where a job is.

  • Bins, racks and stock locations. A short location code, such as A-12-03, scans faster than reading it out.

  • Raw material lots and heat numbers. So you can tell which lot went into which job when a customer asks.

  • Serial numbers on finished goods. Use “Number a run” in the generator, or the bulk barcode generator, to make hundreds in order.

  • Internal part numbers and drawings. Part numbers usually mix letters, digits and dashes, which Code 128 handles.

For products sold in shops or on marketplaces, use an EAN-13 barcode with GS1 numbers instead.

code 128 or code 39

Code 128 or Code 39?

Both are linear barcodes, and most scanners read both. Code 128 is the better choice unless a customer or an older system asks for Code 39.

Code 128Code 39
CharactersAll 128 ASCII characters, including small letters43: capitals, digits, space and - . $ / + %
Width for the same textShorter, and much shorter for long numbersWider
Check characterAlways includedOptional, and rarely used
In Excel with a fontNeeds a formula or add-in to calculate the check characterWorks with a free font and asterisks around the value
Choose it whenYou decide the format: most internal labelsA customer, an older scanner or an older system asks for it

More on the older code on the Code 39 barcode generator.

code 128 and gs1-128

Code 128 and GS1-128

GS1-128 is Code 128 with a special start character and data written in GS1's format: each piece of data sits behind a code in brackets, such as (01) for the product number, (10) for the batch and (17) for the expiry date. Scanners and buyers' systems can then split the label into its fields.

Use plain Code 128 for your own labels. Use GS1-128 when a customer's label specification asks for it, usually on cartons and pallets. It's in the generator's list of code types, and it needs a product number issued to your company by GS1.

labels that scan

Make it scan: size and margins

  • Leave the margins. Code 128 needs a blank margin of at least ten narrow-bar widths on each side. The generator adds it; don't crop it off when you place the code on a label.

  • Shorten the value, not the bars. If the code is too wide for the label, use a shorter value or a wider label. Squeezing the bars below what your printer can print cleanly is the most common reason a Code 128 label won't scan.

  • Keep it tall enough. Short, wide codes are hard to scan by hand. On a small label, give the bars at least a third of the label's height.

  • Print the text under it. So people can still read the value when there's no scanner around.

  • Test it where it lives. Print a few, stick them on the bin or part, and scan them again after a few days.

code 128 in excel

Code 128 barcodes from Excel

Excel can't draw a Code 128 barcode with a font alone. A Code 128 font needs a formula or an add-in that calculates the check character for every cell, or the codes won't scan.

The quicker way: copy the column from Excel, paste it into the generator above under “Many labels”, and print the labels or download all the codes as images. A second column prints above each code as label text. Our guide on how to generate barcodes for your shop floor covers Excel, Word mail merge and printers in more detail.

more free barcode tools

questions — and what the scan connects to

A job number is only a key.

The scan tells you it's job 1142. What's true about job 1142 today, the latest drawing, the customer's change, how far along it is, usually sits somewhere else: an email, a WhatsApp message, someone's Excel sheet.

We build custom systems for small and medium manufacturers that bring it into one place, and your team uses them through Youno, a work chat app as simple as WhatsApp. Then a scan opens everything known about the job.

Book a call
What can a Code 128 barcode hold?

Any of the 128 ASCII characters: capital and small letters, digits, spaces and punctuation such as - / . and #. It can't hold letters outside English, such as Hindi or Gujarati text. For those, use a QR code.

How long can a Code 128 value be?

There's no fixed limit, but every character makes the code wider, and a code that's squeezed to fit a small label stops scanning. As a rough guide, about 10 to 12 letters, or about 20 digits, fit a 50 mm wide label at a size most scanners read. If yours won't fit, use a shorter value, such as a job number instead of a description.

Do I need to add a check digit?

No. Code 128 always carries a check character, and the generator calculates it for you. It isn't printed in the text under the code, and scanners check it and leave it out of what they type.

Can I make Code 128 barcodes in bulk?

Yes. Switch to “Many labels” and paste a column from Excel, upload a CSV or number a run, such as LOT-0001 to LOT-0500. Then print them all, or download every code in one ZIP.

Can I use Code 128 on products sold in shops?

Not on its own. Billing counters and marketplaces expect an EAN-13 barcode with a number issued to your company by GS1 India. Code 128 is for labels used inside your company and for labels your customer specifies.

Code 128 or QR code?

Code 128 if people will scan with a barcode scanner, which every scanner reads. A QR code if they'll scan with a phone, or if the code needs to hold a web link.