Code 128 barcode generator
Code 128 encodes the full ASCII set in a compact linear symbol, which is why warehouses and carriers reach for it when a code has to carry letters, digits and punctuation at once.
Appearance
396 × 237 px in the PNG
Size units
Specification
- Character set
- letters and digits
- Length
- from 1 to 80 characters
- Check digit
- not used by this symbology
Generate Code 128 barcodes in bulk
Got a whole list of values rather than one? Generate Code 128 barcodes in bulk
Where it is used
- Warehouse and inventory labels, where a location or item code mixes letters with digits
- Shipping labels for carriers that do not require a GS1 prefix
- Internal asset tracking, where the numbering scheme is yours to define
How it compares
Code 39 is simpler and more forgiving of poor print quality, but stores only uppercase letters and digits, and takes roughly 30% more width for the same data. Choose Code 128 when space matters or lowercase is required.
Common mistakes
- Cutting the quiet zone. Code 128 needs clear margins on both sides; without them the scanner never finds the start of the symbol.
- Printing below the minimum module width. On thermal printers a 2-dot module at 203 dpi is the practical floor.
Frequently asked questions
- Does Code 128 need a check digit?
- The symbology carries its own check character computed by the encoder, so you do not add one to your data. This differs from EAN and UPC, where the check digit is part of the number itself.
- Can Code 128 store lowercase letters?
- Yes. Code 128 covers the full ASCII range, including lowercase, punctuation and control characters. This is its main advantage over Code 39.