# QR code version and module count table

> Every QR version's module count follows one formula: 17 + 4 × version. Version 1 is 21 × 21 modules and version 40 is 177 × 177. This table lists all forty, alongside the number of alignment patterns each carries.

Source: https://useqr.app/docs/reference/qr-code-version-and-module-table · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## The formula

```
modules per side = 17 + 4 × version
```

There are forty versions. "Version" here means **physical size**, not a revision of the
specification — there is no newer version of the QR standard to upgrade to.

## All forty versions

| Version | Modules | Alignment patterns |
|---|---|---|
| 1 | 21 | 0 |
| 2 | 25 | 1 |
| 3 | 29 | 1 |
| 4 | 33 | 1 |
| 5 | 37 | 1 |
| 6 | 41 | 1 |
| 7 | 45 | 6 |
| 8 | 49 | 6 |
| 9 | 53 | 6 |
| 10 | 57 | 6 |
| 11 | 61 | 6 |
| 12 | 65 | 6 |
| 13 | 69 | 6 |
| 14 | 73 | 13 |
| 15 | 77 | 13 |
| 16 | 81 | 13 |
| 17 | 85 | 13 |
| 18 | 89 | 13 |
| 19 | 93 | 13 |
| 20 | 97 | 13 |
| 21 | 101 | 22 |
| 22 | 105 | 22 |
| 23 | 109 | 22 |
| 24 | 113 | 22 |
| 25 | 117 | 22 |
| 26 | 121 | 22 |
| 27 | 125 | 22 |
| 28 | 129 | 33 |
| 29 | 133 | 33 |
| 30 | 137 | 33 |
| 31 | 141 | 33 |
| 32 | 145 | 33 |
| 33 | 149 | 33 |
| 34 | 153 | 33 |
| 35 | 157 | 46 |
| 36 | 161 | 46 |
| 37 | 165 | 46 |
| 38 | 169 | 46 |
| 39 | 173 | 46 |
| 40 | 177 | 46 |

## Alignment pattern counts

[Alignment patterns](/glossary/alignment-pattern) let a decoder correct for perspective and
curvature. Version 1 has none, which is why a very small code on a curved surface is
unreliable while a larger one on the same curve reads fine.

Their *positions* are defined by a table in ISO/IEC 18004 rather than by a formula, which is
why a from-scratch encoder needs the table rather than arithmetic.

## Version information

Codes at version 7 and above carry an explicit 18-bit
[version information](/glossary/version-information) block, stored twice. Below version 7 the
decoder counts modules between the finder patterns instead.

## Using this table

To find the physical module size:

```
module size = printed width ÷ modules per side
```

A version-5 code (37 modules) printed 3 cm wide has 0.81 mm modules — comfortably above the
0.4 mm floor for offset printing. The same code at 1.2 cm has 0.32 mm modules, which is
below it.

Add **four modules of quiet zone on each side** to the overall footprint, so a version-5 code
occupies 45 module widths in total.

## FAQ

### How many modules does a QR code have?
Between 441 (21 × 21, version 1) and 31,329 (177 × 177, version 40). The count per side is 17 + 4 × version.

### Does a higher QR version mean a newer standard?
No. Version means physical size only. All forty versions are defined in the same specification, ISO/IEC 18004.

### Why do larger QR codes have small squares scattered through them?
Those are alignment patterns, which let the decoder correct for perspective and curvature. Version 1 has none; version 40 has 46.

### How do I work out the printed module size?
Divide the printed width by the module count for that version, then check it against the minimum for your printing method — 0.4 mm for offset, 0.5 mm for uncoated stock or 203 dpi thermal.

## Try it

- https://useqr.app/size-calculator
- https://useqr.app/validate
- https://useqr.app/url
