# ISO/IEC 18004

> ISO/IEC 18004 is the international standard defining QR codes: symbol structure, encoding, error correction, masking and decoding. It is the authoritative reference, and it is why codes from any generator read on any scanner.

Source: https://useqr.app/glossary/iso-18004 · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## What it covers

Symbol sizes (versions 1–40 and Micro QR M1–M4), the four encoding modes, Reed–Solomon
parameters per version and level, the eight mask patterns and their penalty scoring, format
and version information encoding, and the required decoding procedure.

## Revisions

The 2000 edition, the 2006 edition (adding Micro QR), and the 2015 edition, which is the
current base. Rectangular rMQR is defined separately in **ISO/IEC 23941:2022**.

## Why interoperability actually holds

Because the standard specifies the *decoding* procedure, not just the encoding, a conforming
decoder must handle any conforming symbol. That is why a code generated by a Japanese
industrial printer in 2003 still reads on a phone made this year.

The standard is not free to download; national bodies sell it. Implementers generally work
from it plus open-source references such as [ZXing](/glossary/zxing).
