- Character set
- All 128 ASCII characters: 0-9, A-Z, a-z, punctuation, and control characters (code set dependent)
- Data length
- Variable; no fixed minimum or maximum — bounded only by available label width
- Check digit
- Mandatory Mod 103 check character, calculated automatically by the encoder
- Standard
- ISO/IEC 15417; GS1 General Specifications (GS1-128 variant)
- Home
- Barcode Glossary
Barcode Glossary
The complete reference to 55 barcode symbologies — 35 with a free live generator and 20 documented for completeness — across 19 families, plus 30 glossary terms that explain how barcodes are built and read. Each entry gives you the character set, data capacity, check-digit rules, quiet-zone requirements, governing standards, and — for supported formats — an embedded free generator. Start from the comparison table below, jump to a family, or browse the term index.
All Barcode Types at a Glance
One table to compare every supported symbology. Rows are grouped by family; click a symbology name for its full specification page with structure details, history, applications, and FAQ.
| Symbology | Type | Character Set | Data Length | Check Digit | Standard |
|---|---|---|---|---|---|
| Code 128 | |||||
| Code 128 | Linear (1D) | All 128 ASCII characters: 0-9, A-Z, a-z, punctuation, and control characters (code set dependent) | Variable; no fixed minimum or maximum — bounded only by available label width | Mandatory Mod 103 check character, calculated automatically by the encoder | ISO/IEC 15417; GS1 General Specifications (GS1-128 variant) |
| Code 128A | Linear (1D) | Digits 0-9, uppercase A-Z, ASCII control characters (NUL-US), and - . / : + % $ space (ASCII 0-63) | Variable; no fixed minimum or maximum | Mandatory Mod 103 check character, appended automatically | ISO/IEC 15417 |
| Code 128B | Linear (1D) | Full printable ASCII 32-127: digits, upper and lowercase letters, punctuation, and space | Variable; no fixed minimum or maximum | Mandatory Mod 103 check character, appended automatically | ISO/IEC 15417 |
| Code 128C | Linear (1D) | Digit pairs 00-99 only (numeric data) | Variable, but must contain an even number of digits | Mandatory Mod 103 check character, appended automatically | ISO/IEC 15417 |
| GS1-128 | Linear (1D) | Full ASCII via Code 128; AI element strings are largely numeric with defined formats (e.g. YYMMDD dates) | Variable; each AI has its own fixed or predefined-length rule, and symbol size is bounded by label space | Mandatory Mod 103 check character (Code 128) plus AI-embedded check digits such as the GTIN Mod 10 | GS1 General Specifications; symbology basis ISO/IEC 15417 |
| HIBC Code 128 | Linear (1D) | Full ASCII via Code 128; HIBC primary structure uses A-Z, 0-9, - . $ / + % space | Variable; LIC (4 chars) + item (1-13 chars) + optional lot/serial fields, per HIBC rules | Mod 103 (Code 128) plus a mandatory HIBC Mod 43 check character appended to the data | ANSI/HIBC Supplier Labeling Standard (HIBCC); symbology basis ISO/IEC 15417 |
| EAN / UPC | |||||
| EAN-13 | Linear (1D) | Digits 0-9 only | Exactly 13 digits (12 data + 1 check) | Mandatory Mod 10 check digit, computed from the first 12 digits | GS1 General Specifications; symbology basis ISO/IEC 15420 |
| EAN-8 | Linear (1D) | Digits 0-9 only | Exactly 8 digits (7 data + 1 check) | Mandatory Mod 10 check digit | GS1 General Specifications; symbology basis ISO/IEC 15420 |
| EAN-5 | Linear (1D) | Digits 0-9 only | Exactly 5 digits | Hidden Mod 10 check digit encoded in the parity pattern, not printed as text | GS1 General Specifications (add-on supplements) |
| EAN-2 | Linear (1D) | Digits 0-9 only | Exactly 2 digits | Hidden check digit encoded in the parity pattern, not printed as text | GS1 General Specifications (add-on supplements) |
| UPC-A | Linear (1D) | Digits 0-9 only | Exactly 12 digits (11 data + 1 check) | Mandatory Mod 10 check digit | GS1 General Specifications; symbology basis ISO/IEC 15420 |
| UPC-E | Linear (1D) | Digits 0-9 only (the underlying UPC-A must meet zero-suppression rules) | 6 encoded data digits + system digit + check digit; expands to 12 | Mandatory Mod 10 check digit (same as the underlying UPC-A) | GS1 General Specifications; symbology basis ISO/IEC 15420 |
| GS1-14 (GTIN-14) | Linear (1D) | Digits 0-9 only | Exactly 14 digits (indicator + 12 data + 1 check) | Mandatory Mod 10 check digit over the full 14 digits | GS1 General Specifications |
| 2D Barcodes | |||||
| QR Code | 2D Matrix | Four modes: numeric (0-9), alphanumeric (45 chars), byte (ISO-8859-1 / UTF-8), and kanji/kana | Up to 7,089 numeric / 4,296 alphanumeric / 2,953 bytes / 1,817 kanji characters (version 40-L) | No check digit; integrity via Reed-Solomon error correction (levels L/M/Q/H) | ISO/IEC 18004 (originally Denso Wave AIM specification) |
| Data Matrix | 2D Matrix | ASCII by default; extended via ECI (UTF-8 and other code pages) | Up to 3,116 numeric / 2,335 alphanumeric / 1,556 bytes (ECC 200, 144×144) | No check digit; fixed Reed-Solomon ECC 200 correction (up to ~25% damage recoverable on large symbols) | ISO/IEC 16022 (ECC 200); AIM USS Data Matrix |
| PDF417 | Stacked | Text mode (alphanumeric compaction), numeric mode, and byte mode; extended via ECI | Up to 1,850 text / 2,710 numeric / 1,108 bytes per symbol | No check digit; Reed-Solomon error correction, levels 0-8 (selectable) | ISO/IEC 15438; AIM USS PDF417 |
| Aztec Code | 2D Matrix | Numeric, alphanumeric (upper and lower case), byte, and digit-pair compaction modes | Up to 3,832 numeric / 3,067 alphanumeric / 1,914 bytes (full range) | No check digit; Reed-Solomon correction selectable in 23 steps (~5%-95%) | ISO/IEC 24778; AIM USS Aztec Code |
| Code 39 | |||||
| Code 39 | Linear (1D) | 43 characters: 0-9, A-Z, space, and - . $ / + % (full ASCII via Code 39 Extended) | Variable; no fixed minimum or maximum | Optional Mod 43 check character (mandatory in LOGMARS and some industry standards) | ISO/IEC 16388; AIM USS-39; ANSI/AIM BC1 |
| Code 39 Extended | Linear (1D) | Full ASCII 0-127 via two-character shift sequences over the base 43-character set | Variable; non-base characters consume two code positions each | Optional Mod 43 (computed over the transmitted ASCII data, not the shift pairs) | ISO/IEC 16388 (extended interpretation); AIM USS-39 |
| HIBC Code 39 | Linear (1D) | Code 39 base set (0-9, A-Z, space, - . $ / + %); HIBC strings are uppercase alphanumeric plus - . $ / + % | Variable; LIC (4 chars) + item (1-13 chars) + optional lot/serial fields | Mandatory HIBC Mod 43 check character appended to the data | ANSI/HIBC Supplier Labeling Standard (HIBCC); symbology basis ISO/IEC 16388 |
| ITF | |||||
| ITF (Interleaved 2 of 5) | Linear (1D) | Digits 0-9 only | Variable; must be an even number of digits | None mandatory; optional Mod 10 check digit commonly appended | ISO/IEC 16390; AIM USS-I 2 of 5 |
| ITF-14 | Linear (1D) | Digits 0-9 only | Exactly 14 digits (GTIN-14 incl. Mod 10 check digit) | Mandatory Mod 10 check digit (part of the GTIN-14) | GS1 General Specifications; symbology basis ISO/IEC 16390 |
| MSI Plessey | |||||
| MSI Plessey (Mod 10) | Linear (1D) | Digits 0-9 only | Variable; typically 4-12 digits | One Mod 10 (Luhn-style) check digit appended | No ISO standard; AIM MSI specification and vendor conventions |
| MSI Plessey (Mod 11) | Linear (1D) | Digits 0-9 only (check digit may render as X) | Variable; typically 4-12 digits | One Mod 11 weighted check digit (may be X) | No ISO standard; vendor conventions |
| MSI Plessey (Mod 1010) | Linear (1D) | Digits 0-9 only | Variable; typically 4-12 data digits + 2 check digits | Two chained Mod 10 check digits | No ISO standard; vendor conventions |
| MSI Plessey (Mod 1110) | Linear (1D) | Digits 0-9 only | Variable; typically 4-12 data digits + 2 check digits | Mod 11 check digit followed by a Mod 10 check digit over data+Mod11 | No ISO standard; vendor conventions |
| Pharmacode | |||||
| Pharmacode | Linear (1D) | A single integer from 3 to 131070 (no letters or symbols) | One number, 3-131070 | None — the entire sparse encoding acts as the verification mechanism | Laetus proprietary specification |
| Codabar | |||||
| Codabar | Linear (1D) | Digits 0-9, $ - : / . + , plus start/stop characters A-D (or T N * E variants) | Variable; start and stop letters are not transmitted as data | None required; optional Mod 16 and similar schemes exist for critical flows | ANSI/AIM BC3; no current ISO symbology standard |
| GS1 DataBar | |||||
| GS1 DataBar Omnidirectional | Linear (1D) | Digits 0-9 only (GTIN content) | Exactly 14 digits (13 data + Mod 10 check) | Mandatory Mod 10 check digit | GS1 General Specifications |
| GS1 DataBar Limited | Linear (1D) | Digits 0-9 only (indicator restricted to 0 or 1) | Exactly 14 digits (13 data + Mod 10 check) | Mandatory Mod 10 check digit | GS1 General Specifications |
| GS1 DataBar Expanded | Stacked | GS1 AI element strings — numeric AIs with some alphanumeric fields (max 41 alpha / 74 numeric chars) | Variable; up to 74 numeric or 41 alphanumeric characters of AI data | GTIN Mod 10 check digit embedded in the AI (01) element; no separate symbol check digit | GS1 General Specifications |
| GS1 DataBar Stacked | Stacked | Digits 0-9 only (GTIN content) | Exactly 14 digits (13 data + Mod 10 check) | Mandatory Mod 10 check digit | GS1 General Specifications |
| Publishing | |||||
| ISBN | Linear (1D) | Digits 0-9 only (13-digit ISBN/EAN; 5-digit add-on) | ISBN-13: exactly 13 digits; plus optional 5-digit price supplement | Mandatory Mod 10 check digit (same algorithm as EAN-13) | ISO 2108 (numbering); GS1 General Specifications (symbol) |
| ISMN | Linear (1D) | Digits 0-9 only | Exactly 13 digits (979-0 prefix + 8 data digits + Mod 10 check) | Mandatory Mod 10 check digit | ISO 10957 (numbering); GS1 General Specifications (symbol) |
| ISSN | Linear (1D) | Digits 0-9 only | 8-digit ISSN expanded to 13 EAN digits; plus optional 2-digit issue add-on | ISSN uses Mod 11 (X possible); the EAN-13 carrier uses Mod 10 | ISO 3297 (numbering); GS1 General Specifications (symbol) |
| Code 93 | |||||
| Code 93 | Linear (1D) | 0-9, A-Z, minus, period, space, $ / % +; full ASCII via shift characters | Variable; practical limit ~70 characters | Two mandatory check characters (C and K, modulus 47) | ANSI/AIM BC5-1995 (AIM USS-93) |
| Code 11 | |||||
| Code 11 | Linear (1D) | Digits 0-9 and the hyphen (11 characters total) | Variable; typically 10-12 digits in practice | Optional one or two Mod 11 check digits | AIM USS-11 |
| Code 2 of 5 | |||||
| Standard 2 of 5 (Industrial 2 of 5) | Linear (1D) | Digits 0-9 only | Variable; even number of digits preferred | None in the base specification (optional Mod 10 in some systems) | AIM USS-ITF25 ancestor; no current ISO standard |
| IATA 2 of 5 | Linear (1D) | Digits 0-9 only | Variable; fixed segments in baggage applications | None mandatory (application-dependent) | IATA Resolution 740 family |
| Matrix 2 of 5 | Linear (1D) | Digits 0-9 only | Variable | None standard (optional Mod 10) | No active ISO/AIM standard (vendor legacy) |
| Plessey | |||||
| Plessey | Linear (1D) | Hexadecimal: 0-9 and A-F | Variable | Cyclic redundancy check sequence (not a simple check digit) | Plessey Company proprietary (1971); no ISO standard |
| Stacked Linear | |||||
| Code 49 | Stacked | Full ASCII (128 characters) via mode encoding | Up to 49 alphanumeric characters (2-8 rows) | One row check character per row plus a final check character | AIM USS-49 |
| Code 16K | Stacked | Full ASCII via Code 128 code sets A/B | Up to 107 alphanumeric / 154 numeric characters | Row check characters plus one Mod 107 symbol check | AIM USS-16K (ANSI/AIM BC6) |
| Codablock | Stacked | Codablock F: full Code 128 ASCII character set | Up to ~1,000 characters (Codablock F) | Per-row Code 128 check characters plus block check | AIM USS-Codablock F; DIN EN 728/1556 lineage |
| Pharmaceutical IDs | |||||
| Code 32 (Italian Pharmacode) | Linear (1D) | Code 39 subset encoding AIFA license characters (0-9 and selected letters) | Fixed 9-character Italian authorization code | One Mod 4-based check character defined by AIFA rules | AIFA / Italian pharmaceutical labeling rules |
| PZN (Pharma-Zentralnummer) | Linear (1D) | Digits 0-9 (Code 39 carrier) | PZN 8: 7 data digits + 1 Mod 11 check digit | Mod 11 check digit (weight 1-9 cycle), mandatory | IFA PZN standard (Code 39 carrier) |
| Postal & Carrier | |||||
| Identcode | Linear (1D) | Digits 0-9 (ITF carrier) | 12 digits (11 data + 1 Mod 10 check) | Mod 10 check digit, mandatory | Deutsche Post internal standard (ITF carrier) |
| Leitcode | Linear (1D) | Digits 0-9 (ITF carrier) | 14 digits (13 data + 1 Mod 10 check) | Mod 10 check digit, mandatory | Deutsche Post internal standard (ITF carrier) |
| POSTNET | Linear (1D) | Digits 0-9 | 5, 6, 9, or 11 digits + 1 check digit | Mod 10 check digit, mandatory | US Postal Service (retired 2013 in favor of IMb) |
| PLANET | Linear (1D) | Digits 0-9 | 11 or 13 digits + 1 check digit | Mod 10 check digit, mandatory | US Postal Service (retired 2013 in favor of IMb) |
| Royal Mail 4-State Customer Code (RM4SCC) | Linear (1D) | Alphanumeric (A-Z, 0-9) per Royal Mail convention | Postcode + delivery point suffix (application-defined) | Checksum characters defined per Royal Mail rules | Royal Mail Cleanmail specification; UPU 4-state family |
| Telepen | |||||
| Telepen | Linear (1D) | Full ASCII, including control characters | Variable; constant width per character | None mandatory (structure is self-checking by design) | SB Electronic Systems / Telepen Ltd proprietary |
| Compact 2D | |||||
| Micro QR Code | 2D Matrix | Numeric, alphanumeric, Kanji, and byte modes (per version) | Up to 35 digits / 21 alphanumeric (M4) | Reed-Solomon error correction (L/M/Q per version) | ISO/IEC 18004 (Micro QR annex) |
| MicroPDF417 | Stacked | Byte compaction up to 366 bytes; numeric and text modes | Up to 366 bytes | Reed-Solomon error correction per configuration | ISO/IEC 24728 |
| MaxiCode | 2D Matrix | ASCII (Mode 4/5 data); structured carrier formats (Modes 2/3) | Up to ~93 characters per symbol (chainable) | Reed-Solomon error correction (levels 1-2 selection) | ISO/IEC 16023; AIM ISS-MaxiCode |
Code 128
The high-density full-ASCII family that powers modern logistics — including the GS1-128 and HIBC application standards built on top of it.
- Character set
- Digits 0-9, uppercase A-Z, ASCII control characters (NUL-US), and - . / : + % $ space (ASCII 0-63)
- Data length
- Variable; no fixed minimum or maximum
- Check digit
- Mandatory Mod 103 check character, appended automatically
- Standard
- ISO/IEC 15417
- Character set
- Full printable ASCII 32-127: digits, upper and lowercase letters, punctuation, and space
- Data length
- Variable; no fixed minimum or maximum
- Check digit
- Mandatory Mod 103 check character, appended automatically
- Standard
- ISO/IEC 15417
- Character set
- Digit pairs 00-99 only (numeric data)
- Data length
- Variable, but must contain an even number of digits
- Check digit
- Mandatory Mod 103 check character, appended automatically
- Standard
- ISO/IEC 15417
- Character set
- Full ASCII via Code 128; AI element strings are largely numeric with defined formats (e.g. YYMMDD dates)
- Data length
- Variable; each AI has its own fixed or predefined-length rule, and symbol size is bounded by label space
- Check digit
- Mandatory Mod 103 check character (Code 128) plus AI-embedded check digits such as the GTIN Mod 10
- Standard
- GS1 General Specifications; symbology basis ISO/IEC 15417
- Character set
- Full ASCII via Code 128; HIBC primary structure uses A-Z, 0-9, - . $ / + % space
- Data length
- Variable; LIC (4 chars) + item (1-13 chars) + optional lot/serial fields, per HIBC rules
- Check digit
- Mod 103 (Code 128) plus a mandatory HIBC Mod 43 check character appended to the data
- Standard
- ANSI/HIBC Supplier Labeling Standard (HIBCC); symbology basis ISO/IEC 15417
EAN / UPC
The fixed-length retail numbering system scanned at point of sale worldwide: EAN-13, UPC-A, their short forms, and add-on supplements.
- Character set
- Digits 0-9 only
- Data length
- Exactly 13 digits (12 data + 1 check)
- Check digit
- Mandatory Mod 10 check digit, computed from the first 12 digits
- Standard
- GS1 General Specifications; symbology basis ISO/IEC 15420
- Character set
- Digits 0-9 only
- Data length
- Exactly 8 digits (7 data + 1 check)
- Check digit
- Mandatory Mod 10 check digit
- Standard
- GS1 General Specifications; symbology basis ISO/IEC 15420
- Character set
- Digits 0-9 only
- Data length
- Exactly 5 digits
- Check digit
- Hidden Mod 10 check digit encoded in the parity pattern, not printed as text
- Standard
- GS1 General Specifications (add-on supplements)
- Character set
- Digits 0-9 only
- Data length
- Exactly 2 digits
- Check digit
- Hidden check digit encoded in the parity pattern, not printed as text
- Standard
- GS1 General Specifications (add-on supplements)
- Character set
- Digits 0-9 only
- Data length
- Exactly 12 digits (11 data + 1 check)
- Check digit
- Mandatory Mod 10 check digit
- Standard
- GS1 General Specifications; symbology basis ISO/IEC 15420
- Character set
- Digits 0-9 only (the underlying UPC-A must meet zero-suppression rules)
- Data length
- 6 encoded data digits + system digit + check digit; expands to 12
- Check digit
- Mandatory Mod 10 check digit (same as the underlying UPC-A)
- Standard
- GS1 General Specifications; symbology basis ISO/IEC 15420
- Character set
- Digits 0-9 only
- Data length
- Exactly 14 digits (indicator + 12 data + 1 check)
- Check digit
- Mandatory Mod 10 check digit over the full 14 digits
- Standard
- GS1 General Specifications
2D Barcodes
Matrix and stacked symbologies that pack hundreds or thousands of characters into a small footprint and correct damage via Reed-Solomon math.
- Character set
- Four modes: numeric (0-9), alphanumeric (45 chars), byte (ISO-8859-1 / UTF-8), and kanji/kana
- Data length
- Up to 7,089 numeric / 4,296 alphanumeric / 2,953 bytes / 1,817 kanji characters (version 40-L)
- Check digit
- No check digit; integrity via Reed-Solomon error correction (levels L/M/Q/H)
- Standard
- ISO/IEC 18004 (originally Denso Wave AIM specification)
- Character set
- ASCII by default; extended via ECI (UTF-8 and other code pages)
- Data length
- Up to 3,116 numeric / 2,335 alphanumeric / 1,556 bytes (ECC 200, 144×144)
- Check digit
- No check digit; fixed Reed-Solomon ECC 200 correction (up to ~25% damage recoverable on large symbols)
- Standard
- ISO/IEC 16022 (ECC 200); AIM USS Data Matrix
- Character set
- Text mode (alphanumeric compaction), numeric mode, and byte mode; extended via ECI
- Data length
- Up to 1,850 text / 2,710 numeric / 1,108 bytes per symbol
- Check digit
- No check digit; Reed-Solomon error correction, levels 0-8 (selectable)
- Standard
- ISO/IEC 15438; AIM USS PDF417
- Character set
- Numeric, alphanumeric (upper and lower case), byte, and digit-pair compaction modes
- Data length
- Up to 3,832 numeric / 3,067 alphanumeric / 1,914 bytes (full range)
- Check digit
- No check digit; Reed-Solomon correction selectable in 23 steps (~5%-95%)
- Standard
- ISO/IEC 24778; AIM USS Aztec Code
Code 39
The 1974 self-checking alphanumeric classic — simple, forgiving to print, and still mandated by defense and automotive standards.
- Character set
- 43 characters: 0-9, A-Z, space, and - . $ / + % (full ASCII via Code 39 Extended)
- Data length
- Variable; no fixed minimum or maximum
- Check digit
- Optional Mod 43 check character (mandatory in LOGMARS and some industry standards)
- Standard
- ISO/IEC 16388; AIM USS-39; ANSI/AIM BC1
- Character set
- Full ASCII 0-127 via two-character shift sequences over the base 43-character set
- Data length
- Variable; non-base characters consume two code positions each
- Check digit
- Optional Mod 43 (computed over the transmitted ASCII data, not the shift pairs)
- Standard
- ISO/IEC 16388 (extended interpretation); AIM USS-39
- Character set
- Code 39 base set (0-9, A-Z, space, - . $ / + %); HIBC strings are uppercase alphanumeric plus - . $ / + %
- Data length
- Variable; LIC (4 chars) + item (1-13 chars) + optional lot/serial fields
- Check digit
- Mandatory HIBC Mod 43 check character appended to the data
- Standard
- ANSI/HIBC Supplier Labeling Standard (HIBCC); symbology basis ISO/IEC 16388
ITF
Interleaved 2 of 5 and its GS1 carton application: dense numeric-only encoding that survives printing directly on corrugate.
- Character set
- Digits 0-9 only
- Data length
- Variable; must be an even number of digits
- Check digit
- None mandatory; optional Mod 10 check digit commonly appended
- Standard
- ISO/IEC 16390; AIM USS-I 2 of 5
- Character set
- Digits 0-9 only
- Data length
- Exactly 14 digits (GTIN-14 incl. Mod 10 check digit)
- Check digit
- Mandatory Mod 10 check digit (part of the GTIN-14)
- Standard
- GS1 General Specifications; symbology basis ISO/IEC 16390
MSI Plessey
A digits-only inventory symbology with four check-digit schemes, surviving on warehouse and legacy retail installed base.
- Character set
- Digits 0-9 only
- Data length
- Variable; typically 4-12 digits
- Check digit
- One Mod 10 (Luhn-style) check digit appended
- Standard
- No ISO standard; AIM MSI specification and vendor conventions
- Character set
- Digits 0-9 only (check digit may render as X)
- Data length
- Variable; typically 4-12 digits
- Check digit
- One Mod 11 weighted check digit (may be X)
- Standard
- No ISO standard; vendor conventions
- Character set
- Digits 0-9 only
- Data length
- Variable; typically 4-12 data digits + 2 check digits
- Check digit
- Two chained Mod 10 check digits
- Standard
- No ISO standard; vendor conventions
- Character set
- Digits 0-9 only
- Data length
- Variable; typically 4-12 data digits + 2 check digits
- Check digit
- Mod 11 check digit followed by a Mod 10 check digit over data+Mod11
- Standard
- No ISO standard; vendor conventions
Pharmacode
A proprietary integer code from Laetus whose sparse encoding turns the whole symbol into a packaging-line verification check.
- Character set
- A single integer from 3 to 131070 (no letters or symbols)
- Data length
- One number, 3-131070
- Check digit
- None — the entire sparse encoding acts as the verification mechanism
- Standard
- Laetus proprietary specification
Codabar
A self-checking 1972 format with start/stop letters, still running in libraries, blood banks, and legacy photo-finishing systems.
- Character set
- Digits 0-9, $ - : / . + , plus start/stop characters A-D (or T N * E variants)
- Data length
- Variable; start and stop letters are not transmitted as data
- Check digit
- None required; optional Mod 16 and similar schemes exist for critical flows
- Standard
- ANSI/AIM BC3; no current ISO symbology standard
GS1 DataBar
GS1's compact retail family for items too small for EAN/UPC — including stacked and expanded variants carrying weight and lot data.
- Character set
- Digits 0-9 only (GTIN content)
- Data length
- Exactly 14 digits (13 data + Mod 10 check)
- Check digit
- Mandatory Mod 10 check digit
- Standard
- GS1 General Specifications
- Character set
- Digits 0-9 only (indicator restricted to 0 or 1)
- Data length
- Exactly 14 digits (13 data + Mod 10 check)
- Check digit
- Mandatory Mod 10 check digit
- Standard
- GS1 General Specifications
- Character set
- GS1 AI element strings — numeric AIs with some alphanumeric fields (max 41 alpha / 74 numeric chars)
- Data length
- Variable; up to 74 numeric or 41 alphanumeric characters of AI data
- Check digit
- GTIN Mod 10 check digit embedded in the AI (01) element; no separate symbol check digit
- Standard
- GS1 General Specifications
- Character set
- Digits 0-9 only (GTIN content)
- Data length
- Exactly 14 digits (13 data + Mod 10 check)
- Check digit
- Mandatory Mod 10 check digit
- Standard
- GS1 General Specifications
Publishing
The ISO numbering identifiers for books, printed music, and serials, all riding on EAN-13 carriers with price or issue add-ons.
- Character set
- Digits 0-9 only (13-digit ISBN/EAN; 5-digit add-on)
- Data length
- ISBN-13: exactly 13 digits; plus optional 5-digit price supplement
- Check digit
- Mandatory Mod 10 check digit (same algorithm as EAN-13)
- Standard
- ISO 2108 (numbering); GS1 General Specifications (symbol)
- Character set
- Digits 0-9 only
- Data length
- Exactly 13 digits (979-0 prefix + 8 data digits + Mod 10 check)
- Check digit
- Mandatory Mod 10 check digit
- Standard
- ISO 10957 (numbering); GS1 General Specifications (symbol)
- Character set
- Digits 0-9 only
- Data length
- 8-digit ISSN expanded to 13 EAN digits; plus optional 2-digit issue add-on
- Check digit
- ISSN uses Mod 11 (X possible); the EAN-13 carrier uses Mod 10
- Standard
- ISO 3297 (numbering); GS1 General Specifications (symbol)
Code 93
A denser, more secure successor to Code 39 with a wider character set and two check characters — still used in some defense and automotive supply chains.
- Character set
- 0-9, A-Z, minus, period, space, $ / % +; full ASCII via shift characters
- Data length
- Variable; practical limit ~70 characters
- Check digit
- Two mandatory check characters (C and K, modulus 47)
- Standard
- ANSI/AIM BC5-1995 (AIM USS-93)
Code 11
A digits-only symbology with two check digits, designed for telecom equipment labeling where a single misread is costly.
- Character set
- Digits 0-9 and the hyphen (11 characters total)
- Data length
- Variable; typically 10-12 digits in practice
- Check digit
- Optional one or two Mod 11 check digits
- Standard
- AIM USS-11
Code 2 of 5
A family of numeric-only linear codes (Industrial, Interleaved, IATA) prized for simplicity in warehouse and airline applications.
- Character set
- Digits 0-9 only
- Data length
- Variable; even number of digits preferred
- Check digit
- None in the base specification (optional Mod 10 in some systems)
- Standard
- AIM USS-ITF25 ancestor; no current ISO standard
- Character set
- Digits 0-9 only
- Data length
- Variable; fixed segments in baggage applications
- Check digit
- None mandatory (application-dependent)
- Standard
- IATA Resolution 740 family
- Character set
- Digits 0-9 only
- Data length
- Variable
- Check digit
- None standard (optional Mod 10)
- Standard
- No active ISO/AIM standard (vendor legacy)
Plessey
An early numeric symbology surviving mainly in library, retail, and blood-bank legacy systems.
- Character set
- Hexadecimal: 0-9 and A-F
- Data length
- Variable
- Check digit
- Cyclic redundancy check sequence (not a simple check digit)
- Standard
- Plessey Company proprietary (1971); no ISO standard
Stacked Linear
Linear symbologies stacked into rows (PDF417, Code 16K, Code 49) to carry far more data in a narrow footprint.
- Character set
- Full ASCII (128 characters) via mode encoding
- Data length
- Up to 49 alphanumeric characters (2-8 rows)
- Check digit
- One row check character per row plus a final check character
- Standard
- AIM USS-49
- Character set
- Full ASCII via Code 128 code sets A/B
- Data length
- Up to 107 alphanumeric / 154 numeric characters
- Check digit
- Row check characters plus one Mod 107 symbol check
- Standard
- AIM USS-16K (ANSI/AIM BC6)
- Character set
- Codablock F: full Code 128 ASCII character set
- Data length
- Up to ~1,000 characters (Codablock F)
- Check digit
- Per-row Code 128 check characters plus block check
- Standard
- AIM USS-Codablock F; DIN EN 728/1556 lineage
Pharmaceutical IDs
Medical and pharma marking codes (HIBC, PZN, Pharmaceutical Binary) that embed identifiers and unit-of-use data on doses and devices.
- Character set
- Code 39 subset encoding AIFA license characters (0-9 and selected letters)
- Data length
- Fixed 9-character Italian authorization code
- Check digit
- One Mod 4-based check character defined by AIFA rules
- Standard
- AIFA / Italian pharmaceutical labeling rules
- Character set
- Digits 0-9 (Code 39 carrier)
- Data length
- PZN 8: 7 data digits + 1 Mod 11 check digit
- Check digit
- Mod 11 check digit (weight 1-9 cycle), mandatory
- Standard
- IFA PZN standard (Code 39 carrier)
Postal & Carrier
The 4-state and customer codes used by postal authorities and carriers (USPS, Royal Mail, Australia Post) for mail and parcel sortation.
- Character set
- Digits 0-9 (ITF carrier)
- Data length
- 12 digits (11 data + 1 Mod 10 check)
- Check digit
- Mod 10 check digit, mandatory
- Standard
- Deutsche Post internal standard (ITF carrier)
- Character set
- Digits 0-9 (ITF carrier)
- Data length
- 14 digits (13 data + 1 Mod 10 check)
- Check digit
- Mod 10 check digit, mandatory
- Standard
- Deutsche Post internal standard (ITF carrier)
- Character set
- Digits 0-9
- Data length
- 5, 6, 9, or 11 digits + 1 check digit
- Check digit
- Mod 10 check digit, mandatory
- Standard
- US Postal Service (retired 2013 in favor of IMb)
- Character set
- Digits 0-9
- Data length
- 11 or 13 digits + 1 check digit
- Check digit
- Mod 10 check digit, mandatory
- Standard
- US Postal Service (retired 2013 in favor of IMb)
- Character set
- Alphanumeric (A-Z, 0-9) per Royal Mail convention
- Data length
- Postcode + delivery point suffix (application-defined)
- Check digit
- Checksum characters defined per Royal Mail rules
- Standard
- Royal Mail Cleanmail specification; UPU 4-state family
Telepen
A UK-developed numeric and ASCII symbology common in libraries and healthcare, optimized for direct marking on membership and specimen media.
- Character set
- Full ASCII, including control characters
- Data length
- Variable; constant width per character
- Check digit
- None mandatory (structure is self-checking by design)
- Standard
- SB Electronic Systems / Telepen Ltd proprietary
Compact 2D
Space-saving 2D variants (Micro QR, MicroPDF417, Rectangular Micro QR) for tiny tags and curved or limited-print-area surfaces.
- Character set
- Numeric, alphanumeric, Kanji, and byte modes (per version)
- Data length
- Up to 35 digits / 21 alphanumeric (M4)
- Check digit
- Reed-Solomon error correction (L/M/Q per version)
- Standard
- ISO/IEC 18004 (Micro QR annex)
- Character set
- Byte compaction up to 366 bytes; numeric and text modes
- Data length
- Up to 366 bytes
- Check digit
- Reed-Solomon error correction per configuration
- Standard
- ISO/IEC 24728
- Character set
- ASCII (Mode 4/5 data); structured carrier formats (Modes 2/3)
- Data length
- Up to ~93 characters per symbol (chainable)
- Check digit
- Reed-Solomon error correction (levels 1-2 selection)
- Standard
- ISO/IEC 16023; AIM ISS-MaxiCode
Barcode Glossary Terms (A–Z)
Plain-English definitions for the vocabulary that appears across every specification — module, quiet zone, check digit, X-dimension, magnification, verification grades, GS1 Application Identifiers, and more. Click any term for its full explanation and the symbologies it applies to.
Which Barcode Type Should You Use?
Selling at retail?
Use EAN-13 (worldwide) or UPC-A (North America) for consumer units, and ITF-14 / GS1-128 on shipping cartons. Numbers must come from GS1 — the symbology is only the picture that carries them.
Internal tracking or logistics?
Code 128 is the default answer: full ASCII, high density, mandatory check digit. If your partners follow GS1 flows, move to GS1-128 with Application Identifiers.
Encoding more than a number?
Switch to 2D: QR Code for URLs and consumer scanning, Data Matrix for the smallest industrial marks and pharma serialization, PDF417 for document-scale payloads.
