Skip to content

Encoding & Structure

What is Timing Pattern?

By Codexengr, QR Systems Engineer · Last reviewed: 2026-10-19

A single-module-wide alternating dark-and-light track running horizontally and vertically between the finder patterns, giving the scanner a ruler for measuring module pitch and symbol density.

The timing pattern is one of the quiet workhorses of the QR code symbol: two thin tracks of alternating dark and light modules that run the full width and height of the code, threading between the finder patterns. The horizontal track sits in the sixth row of the module grid and the vertical track in the sixth column, each beginning with a dark module adjacent to a finder pattern and alternating dark, light, dark, light all the way across.

Why the scanner needs a ruler

When a camera captures a QR code, the image is distorted by perspective: the code may be photographed at an angle, at an unknown distance, and at an unknown rotation. Before the decoder can read a single data bit, it must answer a deceptively hard question — exactly how wide is one module in this particular image, and how many modules wide is the symbol?

The timing pattern answers both questions at once. Because its dark-light alternation is perfectly regular — one module dark, one module light — the decoder can count the alternations along each track and derive two critical facts: the number of modules per row/column (which reveals the QR version) and the pixel width of a single module (which calibrates all subsequent sampling). Without this calibration track, the decoder would have to guess the module grid from the finder patterns alone, which is far less reliable under perspective distortion.

Relationship to version sizing

The length of the timing track grows with the QR version. In a Version 1 symbol (21 modules per side), the horizontal timing track spans the modules between the two top finder patterns; in a Version 40 symbol (177 modules per side), it spans a much longer run. Because the number of alternations is directly tied to the symbol size, the timing pattern acts as a redundant cross-check on the version information: the decoder can verify that the version implied by the timing track matches the version information blocks (present in Version 7 and above) and the format data. This redundancy is one reason QR codes remain decodable even when parts of the symbol are damaged.

Functional patterns are never masked

Timing pattern modules are functional patterns, not data modules. They are excluded from data masking (the XOR step applied to data and error-correction modules) and carry no user payload. Their fixed, predictable appearance is precisely what makes them useful as a calibration reference. When you enable "rounded dots" or artistic styling in a QR generator, a well-built encoder leaves the timing tracks — like the finder patterns — geometrically intact, because distorting them degrades the decoder's ability to establish the module grid.

Practical implications for print

Timing patterns are thin — one module wide — which makes them the first casualty of poor print quality. Ink spread (dot gain) on absorbent paper can cause adjacent dark modules to bleed together, and low-resolution printing can blur the alternation into a gray smear. If your printed QR code scans inconsistently, examine the timing tracks under magnification: they should resolve as crisp, evenly spaced stripes. The minimum module widths in the print-size guidance exist largely to keep these one-module features optically distinct.

Diagram description: Zoomed QR code excerpt showing the horizontal and vertical timing tracks as alternating dark/light single-module stripes between two finder patterns, with an arrow indicating how the decoder counts alternations to derive module width.

Frequently asked questions

What does the timing pattern look like in a QR code?

It looks like a thin dashed line — a single-module-wide track of alternating dark and light squares running horizontally and vertically between the finder patterns. Most people never notice it because the eye is drawn to the large finder squares.

Why does the scanner need the timing pattern if it already found the finder patterns?

Finder patterns tell the scanner where the code is and how it is rotated. The timing pattern tells it how big each module is in pixels and how many modules the symbol contains, which is the calibration needed to sample every data module at the correct location.

Can I style or recolor the timing pattern?

You should not. Timing tracks must remain high-contrast, single-module alternating stripes. Recoloring them to low-contrast brand colors or rounding them into dots degrades the module-grid calibration and causes scan failures, especially at an angle.

What happens if the timing pattern is damaged?

Minor damage is survivable because the decoder cross-checks timing data against the finder geometry and version information blocks. Severe damage to both tracks usually causes total decode failure, since the scanner cannot establish the sampling grid.

Sources

Related terms

Related tools