Guide
QR code reference data
The numbers, in full. Byte capacity for every version and error correction level, verified against a reference encoder rather than copied from another website.
- Verified against ISO/IEC 18004
- Free to cite
A QR code has 40 versions, from 21 × 21 modules to 177 × 177. Byte-mode capacity ranges from 17 bytes (version 1, level L) to 2,953 bytes (version 40, level L). Every version adds four modules per side, and each error correction level reduces usable capacity in exchange for damage tolerance.
Byte mode, all 40 versions
Maximum bytes storable in byte mode (8-bit, UTF-8 compatible) at each error correction level. Figures verified by binary search against a reference implementation of ISO/IEC 18004, and consistent with the published standard.
| Version | Modules | L | M | Q | H |
|---|---|---|---|---|---|
| 1 | 21 × 21 | 17 | 14 | 11 | 7 |
| 2 | 25 × 25 | 32 | 26 | 20 | 14 |
| 3 | 29 × 29 | 53 | 42 | 32 | 24 |
| 4 | 33 × 33 | 78 | 62 | 46 | 34 |
| 5 | 37 × 37 | 106 | 84 | 60 | 44 |
| 6 | 41 × 41 | 134 | 106 | 74 | 58 |
| 7 | 45 × 45 | 154 | 122 | 86 | 64 |
| 8 | 49 × 49 | 192 | 152 | 108 | 84 |
| 9 | 53 × 53 | 230 | 180 | 130 | 98 |
| 10 | 57 × 57 | 271 | 213 | 151 | 119 |
| 11 | 61 × 61 | 321 | 251 | 177 | 137 |
| 12 | 65 × 65 | 367 | 287 | 203 | 155 |
| 13 | 69 × 69 | 425 | 331 | 241 | 177 |
| 14 | 73 × 73 | 458 | 362 | 258 | 194 |
| 15 | 77 × 77 | 520 | 412 | 292 | 220 |
| 16 | 81 × 81 | 586 | 450 | 322 | 250 |
| 17 | 85 × 85 | 644 | 504 | 364 | 280 |
| 18 | 89 × 89 | 718 | 560 | 394 | 310 |
| 19 | 93 × 93 | 792 | 624 | 442 | 338 |
| 20 | 97 × 97 | 858 | 666 | 482 | 382 |
| 21 | 101 × 101 | 929 | 711 | 509 | 403 |
| 22 | 105 × 105 | 1,003 | 779 | 565 | 439 |
| 23 | 109 × 109 | 1,091 | 857 | 611 | 461 |
| 24 | 113 × 113 | 1,171 | 911 | 661 | 511 |
| 25 | 117 × 117 | 1,273 | 997 | 715 | 535 |
| 26 | 121 × 121 | 1,367 | 1,059 | 751 | 593 |
| 27 | 125 × 125 | 1,465 | 1,125 | 805 | 625 |
| 28 | 129 × 129 | 1,528 | 1,190 | 868 | 658 |
| 29 | 133 × 133 | 1,628 | 1,264 | 908 | 698 |
| 30 | 137 × 137 | 1,732 | 1,370 | 982 | 742 |
| 31 | 141 × 141 | 1,840 | 1,452 | 1,030 | 790 |
| 32 | 145 × 145 | 1,952 | 1,538 | 1,112 | 842 |
| 33 | 149 × 149 | 2,068 | 1,628 | 1,168 | 898 |
| 34 | 153 × 153 | 2,188 | 1,722 | 1,228 | 958 |
| 35 | 157 × 157 | 2,303 | 1,809 | 1,283 | 983 |
| 36 | 161 × 161 | 2,431 | 1,911 | 1,351 | 1,051 |
| 37 | 165 × 165 | 2,563 | 1,989 | 1,423 | 1,093 |
| 38 | 169 × 169 | 2,699 | 2,099 | 1,499 | 1,139 |
| 39 | 173 × 173 | 2,809 | 2,213 | 1,579 | 1,219 |
| 40 | 177 × 177 | 2,953 | 2,331 | 1,663 | 1,273 |
Byte mode is what almost every real code uses, because URLs, Wi-Fi payloads, vCards and general text all require it. Numeric and alphanumeric modes are more compact but restricted in character set.
Maximum characters by encoding mode
| Mode | Bits per character | Max at v40-L | Character set |
|---|---|---|---|
| Numeric | 3.33 | 7,089 | 0–9 |
| Alphanumeric | 5.5 | 4,296 | 0–9, A–Z, space, $ % * + - . / : |
| Byte (UTF-8) | 8 | 2,953 | Any byte value |
| Kanji | 13 | 1,817 | Shift-JIS double-byte |
Encoders switch mode automatically. A purely numeric payload is stored far more compactly, which is why a 20-digit serial number produces a much smaller code than a 20-character URL.
Converting versions to millimetres
The formulas that connect the table above to a physical print:
modules across = 17 + (4 × version)
total width = modules + 8 (four-module quiet zone each side)
module size (mm) = print width ÷ total width
min print width = total width × 0.4 mm (practical floor)
scan distance ≈ print width × 10| Version | Modules | Min print width | Practical scan distance |
|---|---|---|---|
| 1 | 21 × 21 | 12 mm | 12 cm |
| 3 | 29 × 29 | 15 mm | 15 cm |
| 5 | 37 × 37 | 18 mm | 18 cm |
| 10 | 57 × 57 | 26 mm | 26 cm |
| 15 | 77 × 77 | 34 mm | 34 cm |
| 20 | 97 × 97 | 42 mm | 42 cm |
| 25 | 117 × 117 | 50 mm | 50 cm |
| 30 | 137 × 137 | 58 mm | 58 cm |
| 40 | 177 × 177 | 74 mm | 74 cm |
The minimum widths assume a 0.4 mm module — the practical floor for reliable phone scanning. They are minimums, not targets; add margin for poor lighting, absorbent stock and moving readers.
Numbers worth citing
- 40 versions, from version 1 (21 × 21) to version 40 (177 × 177 modules).
- 4 modules per side added by each version step.
- 3 finder patterns, each 7 × 7 modules, at three corners. They carry no error correction.
- 1:1:3:1:1 — the dark-light band ratio through a finder pattern that lets scanners locate a code at any rotation.
- 4 modules of quiet zone required on all sides.
- 8 mask patterns, evaluated by penalty score; the lowest-scoring one is used.
- 4 error correction levels: L ≈ 7%, M ≈ 15%, Q ≈ 25%, H ≈ 30% recovery.
- Galois Field 256 — the finite field over which Reed–Solomon correction is computed.
- 1994 — invented at Denso Wave by a team led by Masahiro Hara.
- ISO/IEC 18004 — the international standard defining the format.
Why there are no adoption figures here
Pages titled QR code statistics usually list scan volumes and adoption percentages, cited to each other in a loop, with original sources that either do not exist or measured something narrower than the headline suggests.
We are not adding to that. The data above is technical, verifiable and derived from the specification — you can check every number against a reference encoder yourself. If you need market adoption figures, go to a primary source that publishes its methodology, and read the methodology.
Frequently asked
How much data can a QR code hold?
How many versions of QR codes are there?
What is the smallest QR code size?
Where does this data come from?
Last reviewed 24 August 2026 · Written and reviewed by the QR Code Builder team