Cosmodot / Blog Request a demo

2D Barcode Types: A Manufacturing Selection Guide

2D barcode types: QR, Data Matrix, Aztec and DotCode motifs — a manufacturing selection guide
Key Takeaways
  • Every major 2D symbology encodes data in two dimensions; they differ in structure, capacity, and the standards built on them.
  • A 20 – 40-character serial identifier — not the symbology’s maximum capacity — determines the symbol size on the part.
  • Mark quality is measured against ISO/IEC 15415 (printed symbols) or ISO/IEC 29158 (direct part marks), with contractual minimum grades such as B for MIL-STD-130.
  • For marks that pass through heat treatment, blasting, or coating, the deciding question is which grade survives the process chain.

A 2D barcode encodes data in two dimensions, which multiplies capacity over a linear barcode within a small footprint. Beyond that shared principle, the family divides into distinct symbologies, each designed by a different organization for a different problem: reading speed on an assembly line, printing at conveyor speed, fitting on a small electronic component, or carrying a person’s record on a plastic card. All of the major types are covered by international standards, and a single modern imager typically decodes all of them. This guide describes each type, compares them, and then turns to the question a manufacturing engineer actually has to answer: which symbology, at what size, still verifies to an acceptable grade at the point where the part is identified.

The 2D Code Family at a Glance

Ten real 2D code specimens encoding the same data: QR, Micro QR, rMQR, Data Matrix, Aztec, Han Xin, DotCode, MaxiCode, PDF417 and MicroPDF417

Two structural branches exist. Matrix symbologies (QR, Data Matrix, Aztec, MaxiCode, DotCode) arrange dark and light modules on a grid and are read by an imager regardless of the symbol’s orientation. Multi-row (stacked) symbologies — PDF417 and its Micro variant — pile rows of linear patterns on top of each other. They were designed in the early 1990s, before imaging scanners were widespread, and remain readable by laser-based scanners, which is why they persist in documents and identification cards.

The Major 2D Barcode Types

QR Code

QR Code is a matrix symbology developed in 1994 by Denso Wave in Japan for tracking automotive components, standardized as ISO/IEC 18004. Three corner finder patterns let readers locate and decode the symbol regardless of its orientation (Denso Wave). The often-quoted maximum — 7,089 numeric or 4,296 alphanumeric characters — belongs to Version 40, a 177 × 177-module symbol roughly 6 × 6 cm at a 0.33 mm module. A practical 2 cm QR at a 0.5 mm module is around Version 6 (41 × 41), which carries 322 numeric or 195 alphanumeric characters at the lowest error-correction level. QR’s territory is consumer-facing — payments, marketing, and, through GS1’s program to move retail point-of-sale from the UPC to 2D codes, the product package itself (GS1 US). Variants: Micro QR (one finder pattern, capacity of a few dozen characters, for small electronics) and rMQR (ISO/IEC 23941), a rectangular form for narrow strips, holding up to 361 numeric characters.

Data Matrix

Data Matrix is a matrix symbology standardized as ISO/IEC 16022, using an L-shaped solid finder on two sides and an alternating pattern on the other two. Square sizes run from 10 × 10 to 144 × 144 modules (plus rectangular formats), with a maximum of 3,116 numeric or 2,335 alphanumeric characters; error correction is Reed – Solomon (ECC 200), and the required quiet zone is one module. Contracts and regulations anchor it in industry: MIL-STD-130 specifies Data Matrix for DoD item identification, and healthcare UDI labeling encodes to GS1 Data Matrix. Actual size is module size times module count: at a 0.25 mm cell, a 10 × 10 symbol is 2.5 × 2.5 mm and a 144 × 144 symbol is 36 × 36 mm. Small symbol sizes carry correspondingly small payloads — a 14 × 14 symbol holds 16 numeric or 10 alphanumeric characters.

PDF417

PDF417 is a multi-row (stacked) symbology from 1991, standardized as ISO/IEC 15438, allowing up to 90 rows and about 2,710 digits; in practice symbols stay far smaller, and a driver’s-license barcode carries a few hundred bytes. It was designed before imaging scanners were widespread, so laser-based scanners can read it — one reason governments adopted it and stayed: US driver’s licenses (AAMVA standard) and boarding passes (IATA’s bar-coded boarding pass format).

Aztec

Aztec is a matrix symbology invented in 1995 by Andrew Longacre, Jr. and Robert Hussey at Welch Allyn, standardized as ISO/IEC 24778. Its finder is a bullseye at the symbol’s center, and it requires no quiet zone, so it can sit directly against text and graphics in a dense ticket layout — which is how it became the code of rail ticketing and airline mobile boarding passes. Sizes reach 151 × 151 modules (up to 3,832 digits); a typical ticket symbol is around 2 × 2 cm.

MaxiCode

MaxiCode is UPS’s sortation symbology, standardized as ISO/IEC 16023: a fixed symbol of 1.11 × 1.054 in (28 × 27 mm) including its quiet zone, built from 33 rows of hexagonal modules around a central bullseye and holding up to 93 alphanumeric or 138 numeric characters. It was developed to sort packages on high-speed conveyor belts and has never left the parcel world.

DotCode

DotCode is a matrix symbology built from disconnected dots, designed by Dr. Andrew Longacre — the same engineer behind Aztec — and published by AIM (the Association for Automatic Identification and Mobility) as an open specification in 2009. Its purpose is marking at speeds where continuous lines cannot be printed accurately: because no dot touches another, high-speed inkjet and laser coders can apply it at production rates other symbols do not tolerate. It stayed obscure until the EU’s tobacco traceability regulation (EU 2018/574) required unit-level codes at more than a thousand packs per minute. AIM ratified revision 4.0 in 2019, and GS1 added GS1 DotCode to its General Specifications that July — a rare mid-year addition (Packaging Digest). DotCode remains an AIM specification and has not been standardized under ISO/IEC. Scanner manufacturers added decoder support through firmware, and current handheld imagers list DotCode among their configurable symbologies (Zebra product reference guide). The symbol’s size grows with its content; there is no fixed maximum.

Regional and Specialized Symbologies

DMRE (Data Matrix Rectangular Extension, ISO/IEC 21471) adds elongated rectangular formats to Data Matrix for narrow parts and edges — the Data Matrix family’s counterpart to rMQR. Han Xin (ISO/IEC 20830) was developed in China and encodes the Chinese character set directly rather than through byte mode, producing smaller symbols for Chinese text; it appears in Chinese government and logistics applications and is rare elsewhere. SQRC and Frame QR are Denso Wave’s QR variants for access-controlled data and design-embedded codes. JAB Code (ISO/IEC 23634) is a polychrome symbology that raises density by adding color — standardized in 2022 and still emerging.

Comparison Table

SymbologyShape / structureMax capacity (largest symbol · approx. size)StandardPrimary applications
QR CodeSquare matrix; three corner finders7,089 num / 4,296 alnum — largest symbol 177 × 177 (≈ 58 mm at 0.33 mm cells)ISO/IEC 18004Consumer, payments, retail 2D migration
Micro QR / rMQRTiny square / rectangle; one finder35 num (17 × 17) / 361 num (17 × 139)ISO/IEC 18004 / 23941Small electronics, narrow strips
Data MatrixSquare or rectangle; L-shaped finder3,116 num / 2,335 alnum — largest symbol 144 × 144 (≈ 36 mm at 0.25 mm cells)ISO/IEC 16022Part marking, DoD IUID, healthcare UDI
DMREElongated rectangles (DM extension)Strip formats beyond 16 × 48ISO/IEC 21471Narrow parts and edges
PDF417Multi-row (stacked)~2,710 num — up to 90 rowsISO/IEC 15438IDs, licenses, boarding documents
AztecSquare matrix; central bullseye; no quiet zone3,832 num — largest symbol 151 × 151 (ticket ≈ 2 × 2 cm)ISO/IEC 24778Rail and mobile ticketing
MaxiCodeHexagonal modules; central bullseye93 alnum / 138 num — fixed 1.11 × 1.05 inISO/IEC 16023Parcel sortation (UPS)
DotCodeDisconnected dotsNo fixed maximum — grows with dataAIM specificationHigh-speed coding; EU tobacco T&T

How 2D Codes Are Graded — and When a Mark Fails

Symbol quality is measured with a calibrated verifier and expressed as a grade from A (4.0) down to F (0.0); whether a particular scanner happens to read the code is not the acceptance criterion. A grade is reported together with its measurement conditions — for example 3.0/05/650 means grade B, measured with an aperture number 05, under 650 nm red light — and the final grade is the lowest of the individual parameter grades. Two grading standards divide the territory:

Application standards then set the pass line:

ApplicationGrading standardMinimum acceptable grade
DoD items (MIL-STD-130)ISO/IEC 15415B (3.0/05/650)
DoD items, DPM route (MIL-STD-130)AIM DPM / ISO/IEC 291582.0
Healthcare UDI (GS1)ISO/IEC 15415C (1.5) in final configuration; B targeted at printing
GS1 general supply chainISO/IEC 15415C

These minimum grades exist because grade correlates with read reliability in the field — that is why GS1 and MIL-STD-130 set them as acceptance criteria. A symbol below the contractual minimum is a rejected symbol. The decoders of every symbology in the table above work cell by cell: each module is read as dark or light, and the grading parameters measure the quality of exactly those cells. Heat treatment, shot blasting, and coating lines degrade contrast, modulation, and cell geometry — the measured parameters themselves — so a mark that verified at B on the marking station can fall below its minimum grade after later process steps, and once the cells are damaged, decoding fails with them.

Choosing a 2D Code for Manufacturing

Where CDOT Fits

A CDOT Code: a harmonic dot structure encoding the identifier in the frequency domain

CDOT Code is built on a harmonic dot structure: the identifier is encoded in the frequency domain (U.S. Patent No. 12,242,922) and decoded from the mark’s signal as a whole rather than cell by cell, so its readability is not governed by the cell-quality parameters that ISO/IEC 15415 and 29158 grade. That places it on the other side of the boundary the previous section drew, and readability has been validated through heat treatment up to 860 °C (1,580 °F), shot blasting, KTL (cataphoretic) coating, multi-layer painting, phosphating, zinc and nickel plating, and hot-dip galvanization, with up to 90% physical surface loss (Cosmodot customer case studies).

The infrastructure, however, is shared. CDOT is applied with the marking hardware plants already run — laser engraving and dot peen — and read with standard industrial readers and mobile devices. Footprint follows from the encoding: 3 mm² carries up to 520 alphanumeric characters. A Data Matrix occupying the same 3 mm² is a 12 × 12 symbol at ≈ 0.15 mm cells — capacity six alphanumeric characters — and holding 520 characters conventionally requires a 72 × 72-module symbol: 36 × 36 mm at a 0.5 mm cell, 54 × 54 mm at 0.75 mm (Cosmodot). A CDOT mark that has gone through twice-daily 500 °C (932 °F) heat-treatment cycles for three years — and still reads — will be the subject of an upcoming article on this blog.

Frequently Asked Questions

What is the difference between a 1D and a 2D barcode?
A 1D barcode encodes data in the widths of bars along one axis and typically holds a few dozen characters. A 2D symbology encodes in both dimensions, holds hundreds to thousands of characters in a small footprint, carries error correction, and is read by camera-based imagers.
Is a QR code the same thing as a 2D barcode?
A QR code is one type of 2D barcode. The 2D family also includes Data Matrix, PDF417, Aztec, MaxiCode, DotCode, and others — each standardized separately and used in different applications.
What is the difference between a QR code and a Data Matrix code?
Both are square matrix symbologies read by imagers, but they differ structurally. QR uses three corner finder patterns, requires a four-module quiet zone, and offers selectable error correction from about 7% to 30%; Data Matrix uses an L-shaped finder, requires only a one-module quiet zone, and its ECC 200 Reed–Solomon correction is fixed by symbol size. For the same short identifier, Data Matrix produces the smaller symbol — which is why it took the industrial marking role while QR took consumer-facing applications.
What is a barcode verification grade?
A measured quality score from A (4.0) to F (0.0), produced by a calibrated verifier under defined aperture and lighting conditions, reported in the form grade/aperture/wavelength — for example 3.0/05/650. Printed symbols are graded under ISO/IEC 15415, direct part marks under ISO/IEC 29158, and the final grade is the lowest of the individual parameter grades.
What grade does MIL-STD-130 require?
A minimum of B (3.0/05/650) when grading under ISO/IEC 15415, or 2.0 under the AIM DPM / ISO/IEC 29158 methodology for direct part marks; SAE AS9132 pass/fail criteria are also accepted for applicable marking methods.
Can one scanner read every 2D barcode type?
Modern imaging readers decode all major 2D symbologies; which ones are active is a configuration setting, and reader manufacturers add new symbologies through firmware updates.
Which 2D code should I use for direct part marking?
The symbology is normally set by the applicable specification, and for direct part marks it is verified under ISO/IEC 29158. If the mark must remain readable through heat treatment, shot blasting, shot peening, cold drawing, phosphating, plating, anodizing, KTL (cataphoretic) coating, multi-layer painting (primer and topcoat), or hot-dip galvanization — or, for cast and molded products, where the code may be transferred from the mold directly onto the part — the question becomes which mark still meets its minimum grade after those steps; CDOT was developed for these conditions and is read with standard industrial readers and mobile devices.

About the Author

Mete Kayalar is Co-Founder and Chief Technology Officer of Cosmodot, a computer engineer, and chief developer of the CDOT Code, a marking symbology for durable unique item identification (U.S. Patent No. 12,242,922). Cosmodot develops CDOT and the CTRACE traceability platform for unique item identification in harsh industrial environments and demanding supply chains.

Prove CDOT on Your Parts

Validate CDOT under your own production conditions — your marking hardware, your parts, your processes, and your industrial readers.

Start a Technical Validation › Prefer email? Reach us at info@thecosmodot.com

References

  1. Denso Wave — QR Code (history, versions, capacity): qrcode.com
  2. GS1 US — 2D Barcodes: gs1us.org
  3. Packaging Digest — Revised 2D barcode offers potential (DotCode / GS1 adoption): packagingdigest.com
  4. Zebra DS9308 Product Reference Guide (supported symbologies): zebra.com
  5. DoD Instruction 8320.04: esd.whs.mil
  6. U.S. Patent 12,242,922: patents.google.com
  7. Cosmodot — What Is a Durable Unique Identifier? A Manufacturing Guide: thecosmodot.com
  8. Cosmodot — CDOT Code: thecosmodot.com/cdot