“How big does the code need to be?” is the most-asked question in QR printing, and most answers are a table copied from another table. The real answer is two short rules and one trap — small enough to do on a napkin, and worth understanding because your artwork, not an average, decides the number.
Rule one: the 10:1 distance ratio
A QR code scans reliably up to roughly ten times its printed width. Flip it around: take the furthest distance a real person will scan from, divide by ten, and that's your minimum width. A table stand scanned at 60 cm wants 6 cm of code. A poster read from a metre and a half wants 15 cm. The ratio is conservative for modern phone cameras — which is exactly what you want, because your scanner is not the newest phone in the room, it's the oldest.
Rule two: the module floor
Distance isn't the only bound. The sensor ultimately has to resolve individual modules — the little squares — and a printed module below about half a millimetre starts dissolving into ink spread and paper texture regardless of how close the phone gets. So the minimum size is also module count × 0.5 mm. A 25-module grid plus its quiet zone is 33 units: floor of ~17 mm. A dense 45-module vCard grid: ~27 mm, before distance even enters.
The trap: your content sets the module count
Here's what the copied tables miss: QR grids grow in fixed steps called versions, and the amount of data you encode decides the version. Cross a data threshold by one character and the grid jumps — more, smaller modules at the same print size.
This is why URL length is a print-quality decision, not a cosmetic one, and why our own short domain is exactly 26 characters with the slug. It's also why a vCard code that carries a whole contact card needs to print bigger than a URL code — the data is the size.
Error correction moves the answer too
Higher error correction stores more redundancy, which can push the grid to a higher version. Use standard (M) without a logo. With a logo, high (H) is non-negotiable — the logo is spending the damage budget — and the size floor rises accordingly. The choice is fine either way; the mistake is a logo at low correction, which trades print-size headroom for a code that dies at the first crease.
Do the arithmetic with your real content
- The print-size calculator encodes what you type with the product's own library, counts the real grid, applies both rules, and tells you which one is binding.
- Already have artwork? The scannability checker decodes it at shrinking sizes — the smallest size that still decodes is your measured margin, which beats any rule of thumb.
- Printing at scale? Vector exports (SVG, PDF, EPS) from any generator here stay sharp at every size, so the billboard and the business card are one file.
And the final sanity check never changes: print one proof at final size, tape it where it will live, and scan it with the worst phone in the office from the real distance. Two minutes, and it has caught more reprints than every calculator combined.