qr-code-build

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
Short answer

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.

Capacity table

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.

VersionModulesLMQH
121 × 211714117
225 × 2532262014
329 × 2953423224
433 × 3378624634
537 × 37106846044
641 × 411341067458
745 × 451541228664
849 × 4919215210884
953 × 5323018013098
1057 × 57271213151119
1161 × 61321251177137
1265 × 65367287203155
1369 × 69425331241177
1473 × 73458362258194
1577 × 77520412292220
1681 × 81586450322250
1785 × 85644504364280
1889 × 89718560394310
1993 × 93792624442338
2097 × 97858666482382
21101 × 101929711509403
22105 × 1051,003779565439
23109 × 1091,091857611461
24113 × 1131,171911661511
25117 × 1171,273997715535
26121 × 1211,3671,059751593
27125 × 1251,4651,125805625
28129 × 1291,5281,190868658
29133 × 1331,6281,264908698
30137 × 1371,7321,370982742
31141 × 1411,8401,4521,030790
32145 × 1451,9521,5381,112842
33149 × 1492,0681,6281,168898
34153 × 1532,1881,7221,228958
35157 × 1572,3031,8091,283983
36161 × 1612,4311,9111,3511,051
37165 × 1652,5631,9891,4231,093
38169 × 1692,6992,0991,4991,139
39173 × 1732,8092,2131,5791,219
40177 × 1772,9532,3311,6631,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.

Mode capacity

Maximum characters by encoding mode

ModeBits per characterMax at v40-LCharacter set
Numeric3.337,0890–9
Alphanumeric5.54,2960–9, A–Z, space, $ % * + - . / :
Byte (UTF-8)82,953Any byte value
Kanji131,817Shift-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.

Print arithmetic

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
VersionModulesMin print widthPractical scan distance
121 × 2112 mm12 cm
329 × 2915 mm15 cm
537 × 3718 mm18 cm
1057 × 5726 mm26 cm
1577 × 7734 mm34 cm
2097 × 9742 mm42 cm
25117 × 11750 mm50 cm
30137 × 13758 mm58 cm
40177 × 17774 mm74 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.

Structural facts

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.
A note on market statistics

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.

Questions

Frequently asked

How much data can a QR code hold?
In byte mode, up to 2,953 bytes at version 40 with error correction level L. In numeric mode, up to 7,089 digits.
How many versions of QR codes are there?
Forty. Version 1 is 21 × 21 modules and version 40 is 177 × 177, with each step adding four modules per side.
What is the smallest QR code size?
Version 1 at 21 × 21 modules, holding 17 bytes at level L. With a quiet zone and a 0.4 mm module, that prints at about 12 mm.
Where does this data come from?
The capacity figures were derived by binary search against a reference implementation of ISO/IEC 18004 and cross-checked with the published standard.

Last reviewed 24 August 2026 · Written and reviewed by the QR Code Builder team