Barcodes have a rich history spanning over five decades, evolving into indispensable tools for data storage. Their journey began with the introduction of UPC and EAN codes on products, revolutionizing the speed of supermarket checkouts. Over time, a diverse range of barcode types has emerged, with approximately 30 significant variants now widely utilized worldwide.
Barcode types are typically classified into one-dimensional (1D) and two-dimensional (2D) categories. One-dimensional barcodes comprise lines and are typically scanned horizontally using laser scanners. On the other hand, two-dimensional codes utilize both horizontal and vertical space and require devices equipped with a camera, such as imager scanners or smartphones, for scanning. In this article, we’ll explore the most prevalent barcode types along with their distinctive features.
One-dimensional (1D) barcodes / linear barcodes
One-dimensional barcodes, also known as linear barcodes, have a limited capacity for storing data, which is encoded by lines of varying widths and the spaces between them. These barcodes are primarily detected by optical laser scanners, which are more economical than imager scanners, making them prevalent across various industries. However, devices capable of scanning two-dimensional codes like QR codes can also scan 1D barcodes. Many smartphones come equipped with this capability in their cameras. In commercial settings, efficient workflows across industries such as retail, logistics, insurance, and healthcare rely on powerful barcode scanning software.
Code 39
Barcode Type: Two-Width Lines
Maximum Character Capacity: Variable
Common Usage: Industrial Applications
ISO/IEC Certification: ISO/IEC 16388
One of the earliest linear barcode formats, Code 39, is limited to encoding digits, uppercase letters, and certain special characters. Due to its space-consuming nature, it’s not ideal for smaller items. However, this issue was addressed with the introduction of Code 128.
Code 93
Barcode Type: Variable Width Lines
Maximum Character Capacity: Variable
Common Usage: Industrial Applications
Code 93 serves as a more condensed iteration of Code 39, capable of encoding the complete ASCII character set while occupying less space. It features variable length and necessitates two checksums for validation.
VIN Barcode
Barcode Type: Variable Width Lines
Maximum Character Capacity: 17
Common Usage: Automotive Industry
ISO/IEC Certification: ISO/IEC 16388 (Code 39)
Vehicle Identification Number (VIN) barcodes employ the Code 39 symbology with specific criteria. They are solely utilized for distinguishing individual motor vehicles and comprise 17 alphanumeric characters. Occasionally, an “I” precedes the sequence, indicating “import”. VINs may or may not be accompanied by corresponding barcodes. However, opting to scan a VIN barcode instead of manually recording the lengthy character series significantly reduces error rates.
GS1–128
The GS1 barcode, a derivative of Code 128, gained widespread industry adoption due to its integration of the GS1 data structure with the Code 128 data carrier. It facilitates the encoding of various information such as order numbers, weights, manufacturing dates, expiration dates, and storage location numbers.
UPC
Barcode Type: Variable Width Lines
Maximum Character Capacity: 12
Common Usage: Retail, Warehousing, Distribution
ISO/IEC Certification: ISO/IEC 15420
UPC, short for Universal Product Code, encodes a sequence of 12 numeric characters, representing a Global Trade Item Number (GTIN). Its counterpart in Europe is the EAN code. Within the retail sector, UPC is utilized in conjunction with databases to link products with their corresponding prices or quantities.
ITF
Barcode Type: Variable Width Lines
Maximum Character Capacity: Variable
Common Usage: Industrial, Distribution
While its length is variable, the number of numeric characters must be even to accommodate the pairing feature.
Standard 2 of 5 (IATA)
Barcode Type: Variable Width Lines
Maximum Character Capacity: Variable
Common Usage: Air Travel
Standard 2 of 5, a subtype of Industrial 2 of 5, is employed by the International Air Transport Association (IATA) to encode data for processing airline cargo. Hence, it is also known as IATA 2 of 5. This barcode format encodes exclusively an even number of digits and incorporates a check digit for accuracy.
4-State Customer Codes
Intelligent Mail barcode (IMb)
Barcode Type: Variable Height Lines
Maximum Character Capacity: 31
Common Usage: Postal Services
Developed by the United States Postal Service as a replacement for the POSTNET and PLANET barcodes, the Intelligent Mail barcode is employed for sorting and tracking letters, cards, and flats. It consists of 65 bars, each in one of four different states, collectively encoding up to 31 digits. Unlike other 1D barcodes, it is not the width but the height of the bars that encodes information.
Australia Post 4-State Customer Code
Barcode Type: Variable Height Lines
Maximum Character Capacity: 14
Common Usage: Postal Services
It incorporates Reed-Solomon error correction for enhanced accuracy and reliability.
Klant Index Barcode (KIX)
Barcode Type: Variable Height Lines
Maximum Character Capacity: 12
Common Usage: Postal Services
A slightly modified version of the RM4SCC is utilized by the Dutch postal service, PostNL. This variant does not include start and stop characters, nor does it incorporate a checksum.
Royal Mail 4-State Customer Code (RM4SCC)
Barcode Type: Variable Height Lines
Maximum Character Capacity: 36
Common Usage: Postal Services
Developed by the Royal Mail in the 1990s, the RM4SCC was the pioneer 4-state customer code symbology implemented to streamline the routing and tracking of mail. Its introduction inspired the adoption of similar barcodes by postal services worldwide.
Japan Post 4-State Customer Code
Barcode Type: Variable Height Lines
Maximum Character Capacity: 24
Common Usage: Postal Services
Also known as the Kasutama Barcode (with “Kasutama” being the Katakana version of the English word “customer”), this barcode was developed for the Japanese postal system to encode addresses on mail, enabling faster automatic processing.