# QR alignment pattern position table: versions 2 to 40

> Alignment pattern centres sit at fixed coordinates per version, tabulated in Annex E of ISO/IEC 18004. The first centre is always at module 6, the last always seven modules from the far edge, and a version with n coordinate values carries n² − 3 patterns, from one at version 2 to 46 at version 40.

Source: https://useqr.app/docs/reference/alignment-pattern-position-table · Last reviewed 2026-08-21 · UseQR is free forever, no signup.

---

## How the coordinates work

Each version lists a set of row/column values. [Alignment patterns](/glossary/alignment-pattern)
(5 × 5 concentric squares) are placed at every (row, column) combination of those values,
**except** the three combinations that would collide with the corner
[finder patterns](/glossary/finder-pattern). So *n* coordinate values give **n² − 3**
patterns. Version 1 has no alignment patterns at all.

Coordinates are the *centre* module, counted from 0 at the top-left. This table is verified
against the pattern-geometry module in UseQR's own renderer, which carries the ISO/IEC 18004
Annex E values.

## The table

| Version | Modules | Centre coordinates | Patterns |
|---|---|---|---|
| 2 | 25 | 6, 18 | 1 |
| 3 | 29 | 6, 22 | 1 |
| 4 | 33 | 6, 26 | 1 |
| 5 | 37 | 6, 30 | 1 |
| 6 | 41 | 6, 34 | 1 |
| 7 | 45 | 6, 22, 38 | 6 |
| 8 | 49 | 6, 24, 42 | 6 |
| 9 | 53 | 6, 26, 46 | 6 |
| 10 | 57 | 6, 28, 50 | 6 |
| 11 | 61 | 6, 30, 54 | 6 |
| 12 | 65 | 6, 32, 58 | 6 |
| 13 | 69 | 6, 34, 62 | 6 |
| 14 | 73 | 6, 26, 46, 66 | 13 |
| 15 | 77 | 6, 26, 48, 70 | 13 |
| 16 | 81 | 6, 26, 50, 74 | 13 |
| 17 | 85 | 6, 30, 54, 78 | 13 |
| 18 | 89 | 6, 30, 56, 82 | 13 |
| 19 | 93 | 6, 30, 58, 86 | 13 |
| 20 | 97 | 6, 34, 62, 90 | 13 |
| 21 | 101 | 6, 28, 50, 72, 94 | 22 |
| 22 | 105 | 6, 26, 50, 74, 98 | 22 |
| 23 | 109 | 6, 30, 54, 78, 102 | 22 |
| 24 | 113 | 6, 28, 54, 80, 106 | 22 |
| 25 | 117 | 6, 32, 58, 84, 110 | 22 |
| 26 | 121 | 6, 30, 58, 86, 114 | 22 |
| 27 | 125 | 6, 34, 62, 90, 118 | 22 |
| 28 | 129 | 6, 26, 50, 74, 98, 122 | 33 |
| 29 | 133 | 6, 30, 54, 78, 102, 126 | 33 |
| 30 | 137 | 6, 26, 52, 78, 104, 130 | 33 |
| 31 | 141 | 6, 30, 56, 82, 108, 134 | 33 |
| 32 | 145 | 6, 34, 60, 86, 112, 138 | 33 |
| 33 | 149 | 6, 30, 58, 86, 114, 142 | 33 |
| 34 | 153 | 6, 34, 62, 90, 118, 146 | 33 |
| 35 | 157 | 6, 30, 54, 78, 102, 126, 150 | 46 |
| 36 | 161 | 6, 24, 50, 76, 102, 128, 154 | 46 |
| 37 | 165 | 6, 28, 54, 80, 106, 132, 158 | 46 |
| 38 | 169 | 6, 32, 58, 84, 110, 136, 162 | 46 |
| 39 | 173 | 6, 26, 54, 82, 110, 138, 166 | 46 |
| 40 | 177 | 6, 30, 58, 86, 114, 142, 170 | 46 |

## The pattern behind the table

Three regularities hold for every version:

- The **first** coordinate is always **6**, centred in the timing-pattern row/column.
- The **last** is always **modules − 7**, seven from the far edge.
- Every gap is an **even** number, which keeps alignment pattern centres on the same
  black/white phase as the [timing patterns](/glossary/timing-pattern).

The gaps after the first are always equal; the first gap absorbs the remainder, and not in a
way any single obvious rounding rule reproduces. Compare **version 32** (gaps 28, 26, 26, 26,
26, first gap larger) with **version 36** (gaps 18, 26, 26, 26, 26, first gap smaller).
Because no clean formula regenerates all forty rows, every serious implementation embeds the
table verbatim, including the one this page was checked against.

## Why the count jumps where it does

New coordinate values arrive at versions 7, 14, 21, 28 and 35 (every seventh version), so the
pattern count steps 1 → 6 → 13 → 22 → 33 → 46. A [version](/glossary/version) 6 code (41
modules) has a single central pattern; version 7 (45 modules) suddenly has six. This is why
codes on curved surfaces get noticeably more reliable once the payload pushes the symbol past
those thresholds: more anchors for the decoder to fit the grid to. Module counts per version
are in the [version and module table](/docs/reference/qr-code-version-and-module-table).

## FAQ

### How many alignment patterns does a QR code have?
None at version 1, one at versions 2–6, then 6, 13, 22, 33 and finally 46 at versions 35–40. The count is n² − 3 where n is the number of coordinate values for that version.

### Where is the alignment pattern in a small QR code?
Versions 2–6 have exactly one, centred at (18, 18) to (34, 34) depending on version, always at coordinate modules − 7 in both axes, tucked toward the bottom-right.

### Is there a formula for alignment pattern positions?
Almost. First coordinate 6, last modules − 7, equal even gaps between the rest, but the first gap absorbs rounding slack inconsistently across versions, so implementations embed the ISO/IEC 18004 Annex E table instead of computing it.

### Why do alignment patterns skip the three corners?
The corners are occupied by the 7 × 7 finder patterns and their separators. The coordinate grid would place patterns there, so those three combinations are explicitly excluded.

## Try it

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