CodeKit

Free Code 128 barcode generator

Create high-density Code 128 barcodes for SKUs, serial numbers, inventory labels, and shipping cartons in PNG or vector SVG.

The most versatile barcode for inventory, SKUs, and logistics

Code 128 (ISO/IEC 15417) is a high-density linear symbology capable of encoding all 128 ASCII characters, including uppercase and lowercase letters, digits, and punctuation. It automatically switches between character sets (128A, 128B, and 128C double-density numeric compression) and includes an internal Modulo-103 check character for ultra-reliable scanning across warehouses, Amazon FBA labels, and asset tags.

ISO/IEC 15417Full ASCIIAuto 128A/B/CPNG & SVG

Full ASCII Alphanumeric Support

Encode letters (A–Z, a–z), digits (0–9), and symbols unlike numeric-only EAN or UPC formats.

Automatic Code 128C Numeric Compression

Sequences of even digits are compressed automatically to keep barcodes compact.

Built-In Modulo-103 Checksum

Every generated Code 128 symbol includes the mandatory check character before the stop bar.

How to create a Code 128 barcode

  1. 1Enter your SKU, serial number, or text

    Type any standard ASCII characters (letters, digits, hyphens, or symbols) into the Value input.

  2. 2Adjust bar width, height, and text display

    Set bar width (1px–5px), bar height, and whether to print the human-readable text underneath.

  3. 3Download PNG or vector SVG

    Export your Code 128 barcode for Dymo/Zebra label printers, PDF sheets, or packaging.

Frequently asked questions

What is the difference between Code 128 and Code 39?

Code 128 supports both uppercase and lowercase letters (full ASCII) and produces a much more compact barcode than Code 39, making it the modern standard for logistics and inventory.

Is there a character limit for Code 128?

While Code 128 has no strict character limit, keeping values under 25–30 characters ensures the barcode fits comfortably on standard labels and scans easily with handheld readers.