Barcode Technology

Barcode History

Barcode Label Paper

Barcode Printer

Barcode Application

Inventory Management

AI Barcode QRCode

Barcode Scanner

Barcode Software

Barcode Software B

Barcode Software C

Barcode Software D

Barcode Software E

New Technology A

New Technology B

Robot Technology

Barcode Types

Barcode Types B

Barcode Types C

Barcode Types D

Barcode Types E

Barcode Types F

Electronic Technology

Psychology at Work

Barcode Technology and Barcode Software Related   <<< Back to Directory <<<

A Comprehensive Technical Guide to Barcodes: From 1D to 2D, RFID, and the Future of Machine Vision (P13)

Chapter 13: Code 128's Technical Innovation

In Brief

This chapter explores the technical innovations that established Code 128 as a pivotal advancement in automatic identification. Its most significant feature, the double-density numeric 'Code C' mode, enables the compact encoding of long digit strings. This capability, combined with the GS1-128 standard that structures data using Application Identifiers, has made Code 128 indispensable in modern supply chains for managing product, lot, and expiration data. While Code 39 laid the groundwork with its simple alphanumeric design, Code 128's superior density and structured data handling have made it the backbone of global logistics and traceability. This chapter examines its features, its impact across multiple industries, and the technical contrasts with its predecessor, Code 39, to demonstrate its transformative role in tracking the world's goods.

13.1 Introduction: The Need for a More Intelligent Barcode

By the late 1970s, the barcode landscape was thriving, but it faced a significant challenge. The workhorse of the era, Code 39, had proven its versatility in industrial and military applications. However, as supply chains grew more complex, the limitations of Code 39 began to surface. Its relatively low data density meant that encoding a simple alphanumeric string of, say, twenty characters required a barcode that was physically long. This became problematic for small items and increasingly complex shipping labels that needed to hold more information---not just a product identifier, but also batch numbers, expiration dates, and weights. The industry needed a barcode that was more compact, more flexible, and capable of encoding a wider range of data more efficiently.

This need led to the development of Code 128 in 1981. Designed to be a high-density, alphanumeric symbology, Code 128 represented a technological leap forward. It could encode the full ASCII character set and, crucially, introduced a feature that would revolutionize logistics: the ability to encode numeric data with double density. This innovation paved the way for the GS1-128 standard, a structured system that uses Code 128 to create powerful, information-rich labels that are the foundation of modern supply chain management.

In this chapter, we will dissect the technical innovations of Code 128, focusing on its three code sets and the pivotal role of Code C. We will explore how these features, particularly through the GS1-128 standard, have been applied across various industries. Furthermore, to fully appreciate the significance of Code 128's advancements, we will provide a detailed comparison with its predecessor, Code 39, examining how the technical characteristics of both symbologies have influenced their adoption in diverse sectors. By the end, it will be clear that Code 128's innovations were not merely incremental improvements, but a fundamental change in how data is encoded, structured, and utilized for global commerce.

13.2 The Technical Architecture of Code 128

Before delving into its applications, it is essential to understand the technical features that make Code 128 so powerful. Its architecture is built for efficiency, flexibility, and error prevention.

13.2.1 The Foundation: High Density and Self-Checking

Code 128 was conceived to address the density shortcomings of Code 39. It achieves this with a more complex encoding scheme. Each Code 128 character is made up of eleven modules, arranged as three bars and three spaces, with each element being either one, two, three, or four modules wide. This allows for a much higher information density than Code 39's simpler wide/narrow pattern. This means that a Code 128 barcode can hold significantly more data---or be printed much smaller---than a Code 39 barcode containing the same information.

Beyond density, Code 128 includes a mandatory check digit, calculated using a modulo 103 algorithm. This built-in error detection mechanism is crucial for high-reliability applications like supply chain tracking. While Code 39 is self-checking (meaning a single misread bar is unlikely to be interpreted as a different valid character), the mandatory check digit in Code 128 provides a robust layer of verification, ensuring the data read by a scanner is almost certainly correct, a vital feature for mission-critical logistics.

13.2.2 The Innovation: Three Code Sets and the Magic of Code C

The defining innovation of Code 128 is its use of three distinct character sets, or 'subsets,' labeled A, B, and C. This is a key reason for its exceptional efficiency. The barcode can automatically switch between these sets within the same symbol to choose the most compact encoding for the data being represented.

Code Set A includes all standard uppercase letters (A-Z), digits (0-9), punctuation, and a range of control characters (such as carriage return and tab). This makes it suitable for data that is a mix of uppercase letters and numbers, often used in legacy systems and industrial settings.

Code Set B is similar to Set A but is designed for general-purpose text, including uppercase and lowercase letters, digits, and punctuation. It is the most common set for everyday text data where a mix of cases is required.

Code Set C is the game-changer for numeric data. It is a numeric-only set, but each character code represents a two-digit number from 00 to 99. This means that when encoding a purely numeric string like '1234567890', the barcode can read it as '12', '34', '56', '78', '90' and encode each pair in a single character. This effectively doubles the density for numeric data.

The impact of Code C is profound. For a numeric-only message, Code 128 can achieve densities as high as 20 characters per inch on a laser printer, making it incredibly space-efficient. This feature made it the perfect choice for standards like GS1-128, which encode a significant amount of numeric data, including long Global Trade Item Numbers (GTINs), dates formatted as YYMMDD, and Serial Shipping Container Codes (SSCCs).

13.2.3 FNC1 and Application Identifiers: Structuring Data for the Real World

Code 128's flexibility was further extended by the introduction of a special non-data character called Function Code 1 (FNC1). When FNC1 is used in the first position of a Code 128 symbol, it transforms the barcode into a GS1-128 barcode. This is not just a technical detail; it is the key that unlocks the structured data encoding capabilities that make Code 128 so powerful in commerce.

In a GS1-128 barcode, the FNC1 flag signals to the scanner that the data following it will be structured according to the GS1 system. The data is organized into sections using Application Identifiers (AIs) . An AI is a two-, three-, or four-digit prefix that defines the meaning and format of the data that immediately follows it.

For example, consider the following data encoded in a GS1-128 barcode:

`(01) 12345678901234 (10) AB12345 (17) 260101`

- The `(01)` is the AI for the Global Trade Item Number (GTIN) , and the following 14-digit number is the unique product identifier.

- The `(10)` is the AI for the Batch or Lot Number, followed by an alphanumeric string (AB12345).

- The `(17)` is the AI for the Expiration Date, with the following 6-digit number (260101) representing January 1, 2026.

This structure allows a single scan to capture all this critical information instantly. The scanner, equipped with the GS1 standards, can parse the data, identify each component, and feed it directly into a warehouse management system or point-of-sale system. This is the foundation of modern traceability and efficiency.

13.3 The Code 39 Foundation: The 'Before' Picture

To truly understand why Code 128 was a revolution, one must understand the barcode landscape 'before.' The dominant alphanumeric symbology was Code 39, a robust and flexible system that is still widely used today for less data-intensive applications.

13.3.1 Technical Features of Code 39

Developed in 1974, Code 39 was the first barcode symbology to encode both letters and numbers, a major step forward from the numeric-only UPC codes used in retail. Its technical characteristics are straightforward:

Character Set: Standard Code 39 encodes 43 characters: the digits 0-9, uppercase letters A-Z, and seven special characters: space, hyphen, period, dollar sign, slash, plus sign, and percent. A separate version, Code 39 Extended (or Full ASCII), can encode the full 128-character ASCII set by using two-character combinations (e.g., encoding a lowercase 'a' as '+A'), but this drastically increases the length of the barcode.

Density and Structure: Code 39 has a low data density. It uses a simple pattern of five bars and four spaces, with three of the nine elements being wide. This 'two-out-of-five' pattern is printed in a 'wide/narrow' format. Because it's discrete, the code pattern is separated by an intercharacter gap (a narrow space), which adds to its overall length. This makes it significantly less space-efficient than Code 128.

Self-Checking & No Check Digit: One of its most cited advantages is that it is 'self-checking.' This means that if a printing error turns a narrow bar into a wide bar (or vice versa), it is highly unlikely to turn one valid character into another valid character. It also does not require a mandatory check digit, which simplifies its implementation in older systems but also means it lacks the robust error detection of Code 128.

13.3.2 Code 39 in Action: Industries and Applications

Due to its simplicity and versatility, Code 39 is found in various sectors, especially those that existed before the advent of more advanced symbologies. It remains a viable choice when label space is ample and data needs are simple.

Automotive and Defense: Code 39 became deeply entrenched in these industries due to early adoption. It is used for labeling parts, tracking assets, and identifying vehicles. The US Department of Defense, for instance, mandated its use for a long time, a legacy that persists in some military and aerospace applications.

Manufacturing and Warehousing: For in-house asset tracking, work-in-progress labels, and inventory management, Code 39 is often sufficient. Its ease of printing and scanning with basic equipment made it a go-to choice for many industrial systems.

Healthcare: The Health Industry Bar Code (HIBC) standard, for a time, utilized Code 39. It is still used on patient wristbands, lab samples, and medical devices where a simple alphanumeric code is sufficient to identify the item or patient.

13.4 The Revolution: Code 128 and GS1-128 in Practice

The technical advantages of Code 128, especially its double-density Code C and structured data capabilities via GS1-128, have made it the undisputed standard for modern logistics and supply chain management. Its impact is visible in almost every industry that moves goods.

13.4.1 Logistics and Supply Chain: The GS1-128 Backbone

The most profound application of Code 128 is undoubtedly in logistics, where it forms the backbone of GS1-128 labeling. The GS1 system provides a global standard for identifying, capturing, and sharing information about products, locations, and assets. GS1-128 is the vehicle that makes this information physical and scannable.

The Format of a GS1-128 Shipping Label

A standard shipping label, often seen on pallets and cases in warehouses and distribution centers, is a structured document. At its heart are one or more GS1-128 barcodes. These barcodes contain a suite of Application Identifiers that provide a comprehensive snapshot of the item being shipped.

Consider a typical pallet being shipped from a manufacturer to a retailer. The GS1-128 label might include:

SSCC (AI 00): This is the 'license plate' of the pallet. The Serial Shipping Container Code is a unique 18-digit number that identifies that specific logistic unit (the pallet and all its contents) for its entire journey. This is crucial for tracking and tracing a shipment from origin to destination.

GTIN (AI 01): This identifies the product itself, such as 'X Brand Cereal, 12 oz Box'. The GTIN is the global standard product number, allowing all parties in the supply chain to know exactly what is in the box.

Batch/Lot Number (AI 10): This is the key to traceability. The manufacturer can trace the specific production batch of the cereal, linking it to raw materials, production dates, and quality control records.

Expiration Date (AI 17) or Best Before Date (AI 15): This date is critical for inventory management, especially in food and pharmaceuticals. It allows the retailer to manage stock rotation (FIFO - First In, First Out) and ensure that products are sold before they expire.

By scanning this single label at the receiving dock, the retailer's system instantly knows *what* product arrived, *how much*, *which batch* it came from, *when it expires*, and exactly *which pallet* it is (the SSCC). This information updates inventory, validates the shipment against the advance ship notice (EDI 856), and initiates the process of moving the product to the appropriate storage location.

13.4.2 Healthcare and Pharmaceuticals: Traceability and Patient Safety

In an industry where human life is at stake, traceability and error-free identification are paramount. Code 128, through GS1-128, has become a critical tool for ensuring patient safety and regulatory compliance.

Drug Supply Chain Security: Regulations like the Drug Supply Chain Security Act (DSCSA) in the United States mandate the use of barcodes to track and trace prescription drugs at the package level. GS1-128 barcodes on shipping cases containing pharmaceuticals are instrumental in verifying that drugs are authentic and have not been tampered with. The batch/lot number and expiration date encoded in the barcode allow for rapid recalls of defective or contaminated products, potentially saving lives and preventing widespread harm.

Hospital Inventory and Bedside Verification: In hospitals, GS1-128 is used on surgical instruments, medical devices, and implantable products to ensure they are sterile and traceable. When a nurse scans a patient's wristband (often using a Code 39 or Code 128 barcode) and then scans a medication or blood product, the system can verify the 'five rights' of medication administration: the right patient, right drug, right dose, right route, and right time. This reduces deadly medication errors.

Food Safety: In the wake of food safety scares, traceability has become a top priority for the food industry. The Food Safety Modernization Act (FSMA) in the US, for example, emphasizes the need for rapid and effective traceback of contaminated products. GS1-128 labels are used extensively for tracking cases and pallets of food, enabling companies to quickly isolate contaminated lots and protect consumers.

13.4.3 Retail and E-Commerce: Streamlining the Back End

While the UPC barcode on a product at the point of sale remains the most visible barcode to consumers, GS1-128 plays a critical role 'behind the scenes' in retail and e-commerce.

Warehouse Receiving: Major retailers like Walmart and Target, and e-commerce giants like Amazon, require their suppliers to use GS1-128 labels on all shipments. This allows them to process inbound goods with incredible speed and accuracy. A worker can scan a pallet label and instantly know exactly what is on the pallet, and the warehouse management system will direct them where to put it. This is the engine of just-in-time inventory management.

E-Commerce Fulfillment: In the fast-paced world of e-commerce, GS1-128 labels help automate the entire shipping process. When an order is placed, the system generates a pick list. Items are picked, packed, and sent to shipping. A GS1-128 label containing the shipping address, order number, and tracking information is printed and scanned to ensure the correct box goes on the correct truck, driving operational efficiency.

Returns and Recalls: The structured data in GS1-128 makes processing returns and managing recalls much more efficient. When a product is returned, a scan of its barcode can immediately link it to the original order, the customer, and the product batch, simplifying the return process and enabling investigations into product quality issues.

13.4.4 Manufacturing: Parts Identification and Work-in-Progress

In manufacturing environments, Code 128 is used to track components and work-in-progress (WIP) through a production line. Labels on parts, subassemblies, and finished goods are scanned at each stage, providing real-time visibility into the production process. This allows for quality control, inventory management, and the tracking of a product's complete history, known as genealogy.

13.5 Code 128 vs. Code 39: A Symbology Comparison

A direct comparison highlights the technological leap from Code 39 to Code 128, clarifying why each is chosen for different applications.

Feature | Code 39 | Code 128

Introduction Year | 1974 | 1981

Data Density | Low. Requires significant space. | High. Much more compact. Approximately 2x denser than Code 39.

Character Set | 43 characters (A-Z, 0-9, space, and symbols) or full ASCII via Extended version. | Full 128 ASCII natively via Sets A, B, and C.

Encoding Numeric Data | Standard 'one digit per character' encoding. | Double Density 'Code C' for pairs of digits (00-99). This is its key advantage.

Check Digit | Optional. Rarely used. Self-checking. | Mandatory modulo 103 check digit. Robust error detection.

Structured Data | No standardized structure for encoding multiple data types. | GS1-128 standard using Application Identifiers (AIs).

Implementation | Easy to implement. Can be printed with simple barcode fonts. | More complex, requiring software to calculate check digits and manage code sets.

Typical Applications | Asset tags, library books, simple internal tracking, government/military. | GS1-128 shipping labels, logistics, healthcare, compliance labeling.

The Verdict: Code 39's strength lies in its simplicity and ease of use. For applications with limited data and ample label space, it is still a perfectly viable, low-cost solution. Code 128, however, is technically superior in almost every metric relevant to modern, data-intensive commerce. Its density, mandatory check digit, and the powerful structure of the GS1-128 standard have made it the global language of logistics and traceability.

13.6 The Future: The Enduring Legacy of Code 128

Code 128, in its GS1-128 form, remains a cornerstone of global commerce. Its ability to pack structured, critical data into a compact, scannable symbol is unmatched by other linear symbologies. However, the technological landscape continues to evolve.

The current driving force in automatic identification is the rise of 2D barcodes, like GS1 DataMatrix and QR codes. These 2D codes offer vastly greater data capacity and, crucially, include error correction capabilities. This allows them to remain readable even if a significant portion of the symbol is damaged. In healthcare and electronics manufacturing, where small parts require dense data in a tiny footprint, DataMatrix codes are becoming the standard.

Even more advanced is RFID, which doesn't even require a line-of-sight to be read. An RFID tag on a pallet can be read automatically as it passes through a warehouse door, enabling near-total visibility of inventory without manual scanning.

Does this mean Code 128 is obsoleteFar from it. The infrastructure for printing and scanning Code 128 is ubiquitous. Every warehouse scanner and shipping system supports it. The transition to 2D will likely be a long and gradual one, with Code 128 continuing to be the workhorse for logistics for many years to come. Furthermore, the fundamental concepts Code 128 pioneered---efficient numeric encoding and structured data via Application Identifiers---are the very principles that make modern 2D barcodes and RFID systems so powerful. Code 128 didn't just solve a problem; it defined the problem for the entire industry, creating a language for supply chain data that transcends any single symbology.

13.7 Summary

Code 128's introduction marked a turning point in barcode technology. Its technical innovations addressed the critical limitations of its predecessor, Code 39, and laid the foundation for the complex, data-driven supply chains of today. The most significant of these innovations is the double-density Code C mode, which revolutionized the encoding of numeric data by representing two digits in a single character. This efficiency, combined with the mandatory check digit for error prevention, made Code 128 the ideal vehicle for the GS1-128 standard.

By using Application Identifiers (AIs) , GS1-128 transformed a barcode from a simple identifier into a portable data file capable of carrying a wealth of structured information---product numbers (GTIN), batch/lot numbers, expiration dates, and unique shipping container codes (SSCC). This capability has been adopted across virtually every major industry. In logistics, GS1-128 labels on cases and pallets are the basis of modern warehouse and distribution center operations, enabling rapid receiving, accurate inventory management, and automated shipping. In healthcare, it ensures patient safety by linking medications and medical devices to patient records and enabling rapid traceability to prevent dispensing of expired or recalled drugs. In retail and e-commerce, it powers the back-end efficiency that allows for seamless fulfillment and just-in-time inventory management.

A comparison with Code 39 reveals the evolutionary gulf between the two technologies. While Code 39 is simple and versatile, its low density and lack of a mandatory check digit make it unsuitable for the high-volume, high-reliability demands of global commerce. Code 128, with its superior density, robust error checking, and structured data capacity, became the engine of modern supply chain efficiency, proving that the right innovation can not only solve a problem but also define the standard for an entire industry for decades. While new technologies like 2D barcodes and RFID are on the rise, the legacy and influence of Code 128 and the GS1-128 standard are undeniable, ensuring their place in the continuing evolution of machine vision and automatic identification.

 

EasierSoft Barcode Label Design & Bulk Printing Software

---- Use Excel Data to Batch Print Barcodes on Label Sheets or Roll Labels  

---- How to use this barcode software

Download:  Free Barcode Software + Barcode Label Designer

Download Free Barcode Software at Softonic

     Download at CNET

Once you obtain a GS1/UPC/EAN barcode, or other barcode type and QR code, you can use our free software to batch print barcode labels onto Roll label paper using a professional label printer, or to batch print barcodes onto Avery 5160 label sheets using a regular laser or inkjet printer. Our software has free and paid versions.

The free version fully meets your needs for batch printing GS1/UPC/EAN barcodes. The paid version can import data from Excel and databases to batch print barcode labels with different values.

How to Start

Input Data

Import Excel Data

Print Barcode

Barcode Format

Label Designer

All Screen Shot

Export Barcode Image

Save Template

Output Word Excel

How to Use & FAQ:

Export barcode image files

Barcode text font setting

Generate ISBN barcode

Predefined label templates

Printing setup

Save settings

Serial number generator

The supported barcode types

Load Excel data (pro)

Manually copy data from Excel files

Filter some data for printing

Edit imported barcode data

Input data (Pro)

Label Designer

Edit data in Label designer

Label Designer - Add new label

Label Designer - Printing

Set the barcode label format to be printed

Other Barcode Label Format Settings

Barcode types supported by this program

Barcode Label Font Settings

Configuring the Barcode Print Rotation

Text Alignment for Barcode Labels

Automatically Adjusting Barcode Width

Text Beneath the Barcode

Configuring Barcode Size

Auto Calculate the Barcode Size

Export Barcode images

Export Barcode Image Format

File Names for Exported Barcode

Resolution of Exported Barcode Images

Fixed Folder for Exporting Barcode

Default Barcode Image Export Format

Print bulk barcodes quickly

Print barcodes to Avery 5160 label

How to bulk Barcode Printing

Sample - Avery 5162 (2x7) Label Sheet

Example: Print barcodes to 5*3cm roll

Example: Print barcodes to 5161 label

Example: Print barcodes to 5162 label

Example: Print barcodes to 5163 label

Example: Print barcodes to 5164 label

Example: Print portrait orientation 5164

Example: Print barcodes to 5167 label

Example: Print barcodes to 5168 label

Example: Print portrait orientation 5168

Example: Print barcodes to 5169 label

Example: Print barcodes to 5660 label

Example: Print barcodes to 5661 label

Example: Print barcodes to 5662 label

Highlights

Excel integration: Import data directly from Excel to generate and print barcodes in bulk.

Label designer: Create complex labels with multiple barcodes, text, logos, and shapes.

Batch printing: Print thousands of barcodes at once using standard inkjet/laser printers or professional barcode printers.


Flexible editions:

Standard Edition: Simple batch printing with Excel data.

Professional Edition: Adds command-line automation for workflow integration.

Label Designer Edition: Advanced design features for complex labels.


Why Choose Our Barcode Solutions?

Cost-effective: Free online generator and permanent free desktop version available.

Easy to use: No technical expertise required—just input data and print.

Versatile: Supports nearly all 1D and 2D barcode types, including QR codes.

Trusted: Recommended by CNET and widely downloaded by users worldwide.


Suitable Use Cases

Small businesses and startups needing quick barcode labels for products.

Retailers and online sellers managing inventory with batch barcode printing.

Manufacturers requiring sequential or custom barcode labels for packaging.

Educational and testing environments where barcodes are used for tracking.

 

 

CONTACT

cs@easiersoft.com

If you have any question, please feel free to email us.

 

https://free-barcode.com

 

<<< Back to Directory <<<     Barcode Generator     Barcode Freeware     Privacy Policy