Skip to content
ImgKiloImgKiloOpen tools

Minimum QR code size for print, with the 10:1 distance rule

A QR code that prints fine at desk distance can fail completely from across a room, because what scanners actually decode is the module, the small square that forms one bit of the pattern. If the camera cannot resolve the modules at the scan distance, the standard's redundancy is irrelevant. This guide walks through the 10:1 distance rule used across the industry, the module-size math you can apply to any artwork, the DPI requirement when printing on paper, and the quiet zone that ISO/IEC 18004:2024 requires around every code. Generate a print-ready code with the QR code generator and re-check it against the numbers below.

Updated June 27, 202610 min read
Generate a print-ready QR codeGet an SVG that prints cleanly at any size and a PNG fallback for digital. Both are produced in your browser.

The 10:1 distance rule, stated plainly

Across QR signage guides from manufacturers and standards-aligned vendors, the rule of thumb is the same. The QR code's printed width should be at least one-tenth of the scan distance. A code meant to be scanned from one metre away wants to be at least 10 cm wide; a billboard scanned from 20 metres wants at least 2 metres. The rule is not in ISO/IEC 18004 itself, it is an industry working figure that emerges from typical phone camera resolution, lens behaviour and module decoding margin.

Minimum printed width using the 10:1 rule, with module-size targets at ~25 modules per side (QR version 2-3 territory)
Scan distanceMinimum QR widthApprox. module sizeReal-world example
30 cm (handheld)3 cm~1.2 mmBusiness card, packaging label
1 m (table-top sign)10 cm~4 mmRestaurant menu, museum placard
3 m (mid-room poster)30 cm~12 mmIndoor poster, shop window
5 m (lobby wall)50 cm~20 mmReception wall, retail signage
10 m (large indoor)1 m~40 mmTrade-show booth, airport wall
20 m (outdoor billboard)2 m~80 mmRoadside billboard, building wrap
Minimum printed width using the 10:1 rule, with module-size targets at ~25 modules per side (QR version 2-3 territory)

The module-size column assumes a fairly low QR version. A denser payload (more characters or a higher error correction level) packs more modules into the same width, so each module shrinks. That is the second variable to control, not just total width.

Module size is what actually decides scannability

A QR symbol is a grid of square modules. The version sets the grid: version 1 is 21 by 21 modules, version 10 is 57 by 57, version 40 is 177 by 177. Each step up adds 4 modules per side. The physical size of one module is the printed width divided by the side count, plus the quiet zone modules.

The minimum module size people scan reliably

Field guidance from sign printers and barcode vendors lands in a narrow range. Below about 0.4 mm per module, most phone cameras stop decoding consistently in real lighting, even with a clean print. The accessible-target lower bound for handheld scanning is usually quoted as roughly 0.7 to 1 mm per module. For wall and vehicle signage scanned from a few metres, push toward 3 to 5 mm per module so motion blur and parallax do not break the read.

How to compute it for your layout

  1. Encode the payload at your chosen error correction level using the QR code generator and note the symbol's module count (the side count printed by the tool, e.g. 33 by 33).
  2. Pick the printed width you have room for. Add 4 modules of quiet zone on each side; if the symbol is 33 modules wide, the printable canvas is effectively 33 + 4 + 4 = 41 modules.
  3. Divide the printed width by that canvas count. If your width is 5 cm and the canvas is 41 modules, each module prints at about 1.2 mm. Comfortable for desk scanning.
  4. Compare against the 10:1 rule for your scan distance. If the module size lands below the minimum for that distance, shorten the payload, drop one error correction level, or grow the print.

DPI and how it ties printed size to pixels

Print shops measure resolution in dots per inch. For a raster QR code (PNG or JPG) to print cleanly without blurry module edges, you want at least 300 DPI at the final printed size. That means the pixel width of the file equals printed width in inches times 300. A 10 cm wide code at 300 DPI is about 1181 pixels wide; an A4-poster code at 30 cm and 300 DPI is around 3543 pixels.

If a PNG is exported at the wrong pixel width and then upscaled at the print shop, the printer interpolates pixels into module edges. Modules turn into rounded blobs with grey halos, which kills decode reliability. The fix is either to export at the right resolution from the start, or to export SVG instead.

Vector beats raster for print, every time

An SVG QR code has no pixel grid; each module is a mathematical rectangle that the RIP rasterises at the printer's native resolution. SVG scales cleanly from a business card to a billboard with no resolution decision to make. PNG is fine for digital screens or fixed-size labels, but for any print job where size might change, SVG is the safer export.

The quiet zone: 4 modules, no exceptions

ISO/IEC 18004 requires a light border of 4 modules on every side of the symbol, called the quiet zone. The scanner uses this border to locate the three finder patterns and lock onto the grid. A QR code printed flush against a coloured background, or inside a tight frame, or with text or graphics within the 4-module margin, often fails to scan even when every module inside is perfect.

  • Keep the quiet zone the same colour as the light modules (usually white).
  • Keep all logos, captions, frames and product labels outside the quiet zone.
  • If you place a QR on a coloured background, surround it with a white quiet zone block, not just a slightly lighter shade.
  • Some tools say 2 modules of quiet zone is enough; ISO/IEC 18004 says 4. Stick with the standard.
The Micro QR variant defined in the standard requires only a 2-module quiet zone, but that is a different symbology, not a relaxation of the full QR rule. If your tool exports a normal QR code, give it 4 modules of light border.

Contrast, ink and substrate

Scanners need clear contrast between dark and light modules. ANSI/ISO grading methods like ISO/IEC 15415 and ISO/IEC 15416 score barcode print quality on contrast, axial nonuniformity, modulation, defects and decode. You will not run those grading rigs in-house, but the underlying message applies: contrast and clean module edges matter more than colour palette choices.

Colour QR codes

QR codes can use brand colours for the dark modules, but the dark colour needs to be substantially darker than the light colour. Black on white is the safe default. Dark navy or charcoal on white is reliable. Dark grey on light grey, or red on pink, often fails on older cameras. Inverted contrast (light modules on a dark background) is not part of the ISO/IEC 18004 baseline and is not guaranteed to decode across scanners.

Surfaces that hurt scans

  • Glossy laminates and high-gloss varnishes reflect camera flash as a white spot over the symbol.
  • Curved surfaces (bottles, cans) shorten the effective scan distance and bend module rows; keep the code on the flattest face you have.
  • Transparent stickers placed over dark colours invert the symbol; print on a white substrate or use a white underlay.
  • Thermal labels fade with heat and sunlight; for outdoor codes, use a UV-resistant ink or a printed sticker behind UV-stable film.

Density traps: when bigger is not enough

A common mistake is to keep stuffing more text into a QR code and then enlarge the print to compensate. Density rises faster than width can keep up, because each version step adds 4 modules per side. A long URL with tracking parameters at error correction level H can land at QR version 8 or higher, with 49+ modules per side; at the same printed width as a version 2 code, each module is less than half the size.

Two fixes work better than enlarging. First, shorten the payload by switching to a dynamic QR code so the print carries a short redirect link, not the full destination. Second, drop one error correction level if your environment is forgiving; M is usually plenty for print under glass.

Final print checklist

  1. Confirm the 10:1 rule: code width is at least one-tenth of the expected scan distance.
  2. Check the module size at the printed width; keep it above 1 mm for handheld and above 3 mm for wall signage.
  3. Use SVG for any print job where size might change, PNG at 300 DPI for fixed-size labels.
  4. Leave a 4-module quiet zone in the light colour around the symbol, with no text or graphics inside it.
  5. Keep contrast high: dark modules clearly darker than light. Black on white is always safe.
  6. Test scan with two phones at the intended distance, in the lighting the code will live under, before printing the run.
  7. For codes that will be replicated across stickers, packaging or vehicle wraps, generate the QR once at vector and let the print shop scale it.

Frequently asked questions