About Code 39 Barcodes
Code 39 (also known as Code 3 of 9) is one of the oldest and most widely used alphanumeric 1D barcode symbologies. Developed in 1974, it was the first barcode to encode both letters and numbers. It is called "3 of 9" because each barcode character is represented by nine vertical elements (bars and spaces), three of which are wide and six of which are narrow. It is a self-checking barcode that does not strictly require a checksum digit, making it easy to print and integrate into legacy systems.
How Code 39 Encoding Works
Code 39 encodes 43 characters, including uppercase letters (A-Z), numeric digits (0-9), and seven special characters (-, ., $, /, +, %, and space). Each character is separated by a narrow inter-character space. Code 39 uses the asterisk (*) as a mandatory start and stop character, which must be printed at the beginning and end of the barcode (e.g., *CODE39*). While it is self-checking, an optional modulo-43 check digit can be added for high-security applications in automotive or military environments.
Common Applications and Industries
Code 39 is widely used in non-retail industries, including manufacturing, automotive assembly, military logistics (the US Department of Defense uses it for MIL-STD-129), and inventory management. It is also popular in health care, library systems, and government administrative processes. Because it does not require a complex database mapping to resolve basic serial codes, it is often used for labeling tools, machinery, equipment, and badges.
Advantages & Limitations
The primary advantage of Code 39 is its simplicity and self-checking nature, which means a printing error is unlikely to result in a false scan. It can also be rendered using standard computer fonts (like Libre Barcode 39), allowing users to create barcodes simply by typing. The main limitation is its low data density: Code 39 barcodes are physically very wide compared to Code 128, meaning long strings of text require a large printing surface to remain scan-ready.