CODE128 barcode generator — free online tool
Make a CODE128 barcode from any ASCII text, with CHATCUMENT as the sample. The modulo-103 checksum is added automatically; exported as SVG.

Choose a destination, then fill only the fields it needs.
Keep a dark code on a light background for reliable scans.
Preview updates as you edit. Keep the quiet border for reliable scans.
What to know
CODE128 encodes the full 128-character ASCII set: capital and lowercase letters, digits, punctuation and control characters. It is the usual choice for shipping labels, serial numbers and asset tags, where values like WH-A12-0045 mix letters, digits and dashes. The generator opens with CHATCUMENT as a sample.
The symbol carries its own checksum: a start code, the data symbols weighted by position, and a final modulo-103 check character. For a single letter A in subset B, the start value 104 plus the symbol value 33 (65 minus 32) gives 137, and 137 mod 103 leaves a check value of 34. You never type it, because the encoder adds it automatically.
The barcode library picks the compact subset by itself. A run of digits is packed two per symbol in subset C, so 12 digits take 6 symbols, while mixed text uses subset B. A shorter code can be printed larger, which helps inexpensive scanners.
Length decides width, because each extra character adds one 11-module symbol. At a 0.33 mm module, a 20-character value comes to about 255 modules, or roughly 8.4 cm, so check the label space before you commit to long strings.
Choose a specific task 1
Related tools 2
How to use CODE128 barcode generator — free online tool
- Select CODE128 in Code type.
- Replace CHATCUMENT with your value, for example WH-A12-0045.
- Choose the bar and background colors, keeping at least 4.5:1 contrast.
- Download the SVG and test-scan a printout before labeling a whole batch.
Quick answers
Can CODE128 hold lowercase letters?
Yes. It covers ASCII 0 to 127 including lowercase, which is the main reason to prefer it over uppercase-only symbologies.
Do I need to type the checksum?
No. The modulo-103 check character is computed and appended by the encoder, so the value field holds only your data.
How wide will a 20-character label be?
About 255 modules including start, check and stop symbols. At a 0.33 mm module that is roughly 8.4 cm before the quiet zones.
Does it accept Korean, Japanese or Chinese text?
No. CODE128 cannot represent characters outside ASCII, so use a QR code for non-Latin text.
