Standards/iata-2-of-5
IATA 2 of 5
Overview
IATA 2 of 5 (also Airline 2 of 5, 2 of 5 IATA, Computer Identics 2 of 5) is a numeric-only, discrete, two-width 1D barcode in the "2 of 5" family, named for the International Air Transport Association that adopted it for air-cargo and baggage handling 1, 2, 3. Like Standard 2 of 5, it encodes each digit as five bars, two wide and three narrow, with all data carried in the bars only — the spaces are uniform separators 1, 4.
IATA 2 of 5 is best understood as a minor variant of Standard 2 of 5 (Industrial 2 of 5): the two are "fully similar… except start/stop symbols" 1. The airline industry simply specified its own start and stop patterns so that air-cargo and baggage readers could be tuned to a distinct symbology, while the digit encoding itself is unchanged.
History
IATA 2 of 5 was created in 1974 by Computer Identics Corp. — the same company (with Identicon) behind the 1971 Standard 2 of 5 — which is why it is also known as Computer Identics 2 of 5 1, 3. It was designed for and adopted by the International Air Transport Association for managing air cargo and, later, baggage handling 1, 3.
It sits in the same early-1970s wave of "2 of 5" symbologies as Standard 2 of 5 (1971) and Interleaved 2 of 5 (ITF, 1972, David Allais). Where ITF chased density, IATA's design goal was simply a reliable, scanner-distinguishable numeric code for the airline supply chain — achieved by reusing the proven Standard 2 of 5 encoding under airline-specific start/stop framing.
Technical specification
IATA 2 of 5 is a discrete, numeric-only, variable-length 1D symbology, structurally identical to Standard 2 of 5 apart from its framing characters 1, 2, 4:
| Parameter | Value |
|---|---|
| Symbology family | 1D linear, "2 of 5" family |
| Character set | Digits 0–9 only |
| Length | Variable; airline "license-plate" use is fixed-length |
| Encoding | Data in bars only — 5 bars per digit, 2 wide + 3 narrow; spaces uniform 1, 4 |
| Difference from Standard 2 of 5 | Only the start/stop patterns differ 1 |
| Start pattern | Narrow–narrow–wide 4 |
| Stop pattern | Wide–narrow–narrow 4 |
| Self-checking | No |
| Check digit | Optional; Mod 10 (weighted 3/1) 4, or an enforceable Mod 1010 in some implementations 2 |
| Quiet zone | 10 × narrow-element width each side |
Identical encoding, different framing 1: every IATA 2 of 5 data digit is encoded exactly as in Standard 2 of 5 — five bars, two wide, data in bars only. The only structural difference is the start and stop bar patterns, which the airline industry chose to distinguish the symbology to readers 1, 4.
Airline "license plate" usage 3: in IATA baggage-tag practice the barcode carries a unique ten-digit license plate — a leading digit, the airline's three-digit carrier code, and a six-digit bag ID — that keys into sortation and loading systems. Air-cargo applications similarly carry fixed-length numeric identifiers (commonly cited as a 16-data-digit payload plus one check digit, 17 total) 1.
Use cases
IATA 2 of 5's deployments are almost entirely in aviation logistics 1, 2, 3:
- Air cargo identification — origin, destination, and consignment identifiers to onboard and offload freight 2.
- Baggage handling / luggage tags — the ten-digit license-plate number that drives automated sortation and aircraft loading 3.
- Airline tickets — sequential and identifier numbering (a use shared with the closely related Standard 2 of 5) 1.
Its numeric-only simplicity and tolerance of high-volume, high-speed conveyor scanning made it well suited to airport sortation belts before 2D and license-plate-over-Code-128 systems began to supplement it.
Implementations
IATA 2 of 5 is a legacy checkbox in barcode libraries and is natively supported by aviation-oriented scanner SDKs 2, 5:
- C — zint/zint — ~771★, active 2026. Lists "Code 2 of 5 IATA" among supported symbologies.
- Mobile / SDK — Scandit's barcode-scanning SDK supports IATA 2 of 5 ("Computer Identics 2 of 5"), with an optional enforceable Mod-1010 checksum 2; Scanbot and other luggage-tag scanner SDKs target it for airport operations 3.
- JavaScript —
bwip-js(BWIPP) exposesiata2of5. - Commercial — Accusoft Barcode Xpress ("Airline 2 of 5") and Seagull/BarTender retain it.
Comparison
vs. Standard 2 of 5 (Industrial 2 of 5) — the key relationship: identical digit encoding, data in bars only, differing only in start/stop patterns 1. IATA 2 of 5 is essentially Industrial 2 of 5 re-badged with airline framing characters.
vs. Interleaved 2 of 5 (ITF) — both numeric "2 of 5" codes, but ITF interleaves digit pairs across bars and spaces for ~2× the density, whereas IATA 2 of 5 keeps all data in the bars and is correspondingly lower-density 1. Modern airline systems that need density or alphanumerics increasingly favour Code 128 or 2D codes (Aztec, PDF417 on boarding passes/bag tags).
vs. Matrix 2 of 5 — Matrix 2 of 5 encodes data in both bars and spaces (denser than IATA's bars-only design) but is also a discrete code less dense than Interleaved 2 of 5 3.
Fun facts
The "IATA" in the name is purely an adoption credit: the symbology is mechanically just Standard 2 of 5 with different start/stop bars 1 — a reminder that several "distinct" barcode symbologies in the 2-of-5 family are really the same encoding under different framing.
The ten-digit baggage "license plate" 3 is a tidy design: rather than encoding flight, owner, and routing into the barcode, it encodes only a key (leading digit + 3-digit carrier code + 6-digit bag ID), and every downstream system looks the rest up — an early, deliberately minimal "license-plate" pattern later echoed by modern logistics codes.
Status
Legacy / niche, still in aviation use. IATA 2 of 5 persists in airport baggage and air-cargo systems and is supported by aviation scanner SDKs (Scandit, Scanbot) and general libraries (zint, bwip-js, BarTender) 2, 3, 5. As with the rest of the bars-only 2-of-5 family it is being supplemented and replaced by Code 128 license-plate codes and 2D symbologies for higher density and richer payloads; no new general adoption is occurring outside its established airline niche 1.
Sources
- Industrial 2 of 5 (incl. IATA variant) — Wikipedia
- IATA 2 of 5 — Scandit
- How a mobile luggage-tag scanner streamlines airport operations — Scanbot
- Encoding of IATA 2 of 5 barcode — free-barcode.com
- zint/zint — GitHub
- Airline 2 of 5 Barcodes — Accusoft Barcode Xpress
Deployments
No country reports mention this standard by name.
Regions / aggregations not mapped to a single country
- Universal