Barcode generator / Code 128

Code 128 Barcode Generator

Generate Code 128 barcodes free online. Encode letters, numbers and symbols of any length, then download as PNG or SVG. No signup, no watermark.

Any length. Letters, digits, and common punctuation are all supported.

80px

Preview

No watermark, no signup, unlimited PNG downloads. Rendered in your browser — the value you type never leaves your device. Vector SVG and high-resolution PNG are included with Pro.

What is Code 128 used for?

Code 128 is the workhorse of internal logistics. Unlike retail symbologies it is variable-length and encodes the full ASCII set, so it can carry SKUs, serial numbers, batch codes, location IDs, and mixed alphanumeric strings such as SKU-48812-A. Its high density means it also stays compact even with longer payloads.

Pick Code 128 when the barcode is for your own warehouse, asset tags, shipping labels, or a WMS integration — anywhere you control both the printer and the scanner and do not need a GS1 retail number.

  • Warehouse & inventory labels
  • Shipping and carrier labels
  • Asset tagging and serial numbers

Code 128 specification

Character setFull ASCII 0-127 via subsets A, B and C
LengthVariable — no fixed digit count
Check characterModulo-103, added automatically
DensityHighest of the linear symbologies; subset C packs 2 digits per module pair
Quiet zone10 modules either side, minimum 6.4 mm at typical label sizes
Typical bar height12-32 mm depending on scan distance
Best forInternal SKUs, serials, shipping and asset labels

How to generate a Code 128 barcode

  1. 1

    Type or paste the value to encode — letters, digits and punctuation are all accepted.

  2. 2

    Keep the payload as short as the process allows; every extra character widens the symbol.

  3. 3

    Set a bar height of roughly 15% of the symbol width for reliable handheld scanning.

  4. 4

    Download SVG for label templates, PNG for screens and documents.

  5. 5

    Scan the printed label from the distance and angle your operators actually use.

Troubleshooting scan failures

The barcode is too wide for the label

Shorten the payload, switch to all-digit values so subset C double-density applies, or reduce module width slightly — not below 0.25 mm for handheld scanners.

Scanner returns extra or missing characters

Usually a keyboard-wedge configuration issue rather than the symbol. Check the scanner's suffix settings and character set, then rescan.

Thermal labels stop scanning after a few weeks

Direct thermal fades with heat and light. Use thermal transfer with a resin ribbon for anything that lives longer than a few months.

Spaces in your value cause mismatches downstream

Code 128 encodes spaces faithfully, so the mismatch is in your data. Trim leading and trailing whitespace before generating.

Need hundreds of codes at once?

Upload a CSV and get every barcode or QR code back in one download — plus editable dynamic QR codes with scan analytics, and an API for programmatic generation.

Code 128 questions

Other barcode formats