Générateur QR & Code-barres
📦
Linear (1D)

Code 128

High-density linear barcode for alphanumeric data, widely used in shipping, packaging, and supply chain management.

Introduced
1981
Developer
Computer Identics Corporation
Data Capacity
Variable length, typically up to 48 characters
Character Set
Full ASCII (128 characters)

What is CODE128?

Code 128 is one of the most versatile and widely-used barcode symbologies in the world. It's a high-density linear barcode capable of encoding all 128 ASCII characters, making it ideal for applications requiring alphanumeric data. From shipping labels to inventory management, Code 128 has become the go-to choice for businesses that need reliable, compact barcodes.

History of CODE128

Code 128 was developed in 1981 by Computer Identics Corporation. It was designed to be a compact, high-density barcode that could encode the full ASCII character set. The format quickly gained popularity due to its efficiency and versatility. In 1989, it became the basis for GS1-128 (formerly EAN-128), which added standardized application identifiers for supply chain use. Today, Code 128 is used in virtually every industry and is supported by all major barcode scanners.

How CODE128 Works

Code 128 uses three different code sets (A, B, and C) to efficiently encode different types of data: • **Code Set A**: Uppercase letters, numbers, control characters, and special characters • **Code Set B**: Uppercase and lowercase letters, numbers, and special characters • **Code Set C**: Numeric pairs (00-99), enabling very compact encoding of numbers The barcode can switch between code sets mid-stream using special shift characters, allowing optimal encoding of mixed data. Each character is represented by 11 modules (bars and spaces), with a mandatory start character, data characters, check digit, and stop character.

Technical Specifications

Symbology TypeLinear (1D)
Character SetFull ASCII (128 characters)
Data CapacityVariable, typically up to 48 characters
Check DigitModulo 103 (mandatory)
Minimum X-Dimension0.19mm (7.5 mil)
Aspect RatioNo fixed ratio, height should be at least 15% of length or 6.35mm
Quiet Zone10x module width on each side
Self-CheckingYes

Common Use Cases

Shipping & Logistics

Used on shipping labels, packing slips, and tracking documents. The GS1-128 variant is standard for supply chain applications.

Inventory Management

Track products, parts, and assets with alphanumeric codes that can include serial numbers and batch information.

Healthcare

Label medications, specimens, and patient wristbands with unique identifiers that include letters and numbers.

Manufacturing

Work-in-progress tracking, component identification, and production line management.

Retail Back-Office

Internal inventory and receiving operations where full alphanumeric encoding is needed.

Industries Using CODE128

Logistics & ShippingHealthcareManufacturingRetailWarehousingGovernmentLibraries

Advantages & Disadvantages

Advantages

  • Encodes full ASCII character set (letters, numbers, symbols)
  • Very high data density - compact barcodes
  • Self-checking with strong error detection
  • Universally supported by all modern scanners
  • Variable length - encode as much or as little as needed
  • Three code sets allow optimal encoding efficiency

Disadvantages

  • Cannot be read by basic laser scanners at very small sizes
  • Requires more space than numeric-only formats for pure numbers
  • More complex to implement than simpler formats like Code 39
  • Print quality is critical - sensitive to ink spread

When to Use CODE128

Best For

  • Shipping labels and logistics
  • Any application needing alphanumeric data
  • Healthcare and pharmaceutical labeling
  • Asset tracking with serial numbers
  • Applications requiring high data density

Not Recommended For

  • Retail point-of-sale (use EAN/UPC instead)
  • Very small labels where 2D codes would be better
  • Consumer-facing applications (most people can't scan Code 128)

Frequently Asked Questions

What's the difference between Code 128 and GS1-128?

GS1-128 (formerly EAN-128) is Code 128 with standardized Application Identifiers (AIs) defined by GS1. It uses the same barcode symbology but adds structure for encoding specific data like GTINs, expiration dates, batch numbers, and serial numbers in a standardized way.

Can Code 128 encode lowercase letters?

Yes! Code 128 can encode all 128 ASCII characters including lowercase letters (using Code Set B), uppercase letters, numbers, and special characters. This makes it much more versatile than Code 39.

What's the maximum length of a Code 128 barcode?

There's no technical maximum length, but practical limits are around 48 characters. Longer barcodes become difficult to print and scan reliably. For very long data, consider using a 2D barcode like Data Matrix or QR Code.

Is Code 128 the same as Code 128A, 128B, or 128C?

Code 128A, 128B, and 128C refer to the three code sets within Code 128. A single barcode can use all three sets, switching between them as needed for optimal encoding. The barcode itself is still "Code 128."

Related Barcode Formats

GS1-128Code 39Code 93

Ready to Create Your CODE128 Barcode?

Generate professional-quality CODE128 barcodes for free. No signup required.

Generate CODE128 Barcode Free
CODE128 Barcode: Complete Guide, Specs & Generator