Barcode history
The history of Code 39
Code 39 is the durable alphanumeric barcode format of badges, assets and older industrial systems.
Origin and use
Why this barcode matters
Code 39 is one of the classic linear barcode symbologies for simple alphanumeric labels. It is easy to recognize in industrial and asset-tracking contexts because it can encode uppercase letters, numbers and a small set of symbols.
The name comes from the character structure: ISO describes Code 39 symbol characters as nine elements, with three wide and six narrow elements. It is discrete, bidirectionally decodable and uses start and stop characters.
Instead of relying on uncertain origin claims, Barqode's history page focuses on the documented standards record. ISO/IEC 16388:1999 was later revised by ISO/IEC 16388:2007, which has now been replaced by ISO/IEC 16388:2023.
1999
ISO/IEC 16388 appears
The 1999 ISO record documents Code 39 as an international symbology specification.
2007
Second ISO edition
ISO/IEC 16388:2007 specified Code 39 characteristics, dimensions, tolerances and decoding algorithms.
2023
Current ISO edition
ISO/IEC 16388:2023 replaced the 2007 edition as the current Code 39 specification.
Today
Legacy-friendly labels
Code 39 remains useful where simple uppercase alphanumeric labels and older systems matter.
Alphanumeric by design
ISO lists A-Z, 0-9, space and the symbols $ % + - . / as the core encodable character set.
Simple but wide
Code 39 is straightforward and widely understood, but it is usually less compact than Code 128 for longer values.
Current ISO specification
ISO/IEC 16388:2023 is the current ISO Code 39 symbology specification.
Sources
This page keeps to conservative, source-backed facts. Claims that could not be verified from a reliable source were left out.