中文
Ad slot top
No ad code configured yet
Home›Tutorials›QR code size and scan distance explained

QR code size and scan distance explained

2026-09-27 · Image Tools

Ad slot in_content
No ad code configured yet

A QR code that works on your screen is not automatically a QR code that works in the world. The camera has to resolve the individual modules, and whether it can depends on how large the code is relative to how far away the phone is.

The rule of thumb

The widely used guidance is a simple ratio: the minimum QR code size in centimetres is roughly the scanning distance in centimetres divided by ten.

  • Scanned from a phone held 30 cm away — on a product label or a menu — the code needs to be about 3 cm across.
  • Scanned from 1 m away — a shop window, a poster at eye level — about 10 cm.
  • Scanned from 3 m — a banner, a wall graphic — about 30 cm.
  • Scanned from 10 m — a billboard or a vehicle — about 1 m.

Two adjustments to that baseline. Codes with a lot of content are denser, so each module is physically smaller at the same overall size; add 20–30% for a long URL. And the ratio assumes reasonable lighting — a code in a dim restaurant or behind reflective glass needs to be larger again.

Four requirements people miss

  • The quiet zone. A clear margin of at least four modules — roughly 10% of the code's width — must be left blank on every side. A code printed flush against a coloured border or cropped tightly may simply refuse to scan. The generator here already includes the margin; do not crop it away.
  • Contrast. Dark modules on a light background. Inverted codes — light on dark — fail on a meaningful proportion of scanners. Avoid mid-tone combinations entirely, and never place a code over a busy photograph.
  • Resolution for print. Print at 300 dpi, which means the pixel dimensions should be roughly the physical size in inches multiplied by 300. A 3 cm code — about 1.2 in — needs at least 350 px. Upscaling a 200 px image to 1200 px just produces a soft code with mushy edges.
  • Fidelity. No filters, no texture, no rounded corners on the modules, no drop shadow. Every one of those reduces the scanner's confidence.

Choosing an error-correction level

The level determines how much of the pattern can be damaged or obscured and still decode. L tolerates about 7%, M about 15%, Q about 25% and H about 30%.

  • M is the sensible default for a clean, well-lit printed code.
  • Q suits codes printed on packaging or surfaces that may get scuffed, folded or partially covered.
  • H is what you need if you plan to put a logo in the centre — the higher redundancy is what makes the covered area recoverable.

The trade-off is density: a higher level needs more modules for the same content, so the code becomes visually busier. At the same physical size, each module is then smaller and harder for a camera to resolve.

Generating one you can trust

Use the QR code generator: enter the URL or text, set the size in pixels, pick an error-correction level and choose the colours. Download the PNG and test it before you commit to a print run — display it at the intended physical size, then scan it from the distance your audience will actually be at.

These are static codes: the data lives in the pattern, so nothing depends on this website and the code will keep working indefinitely. That is worth knowing if you are choosing between a static code and a short-link code that could stop resolving if the service behind it shuts down.

Common printing mistakes

  • Placing the code where it will be curved, wrinkled or partially obscured.
  • Printing a dark code onto a dark background "for brand reasons".
  • Embedding it in a glossy surface that catches reflections.
  • Putting it low on a restaurant table card, where a shadow falls across it.
  • Assuming it still works after a resize — always re-test after the final layout.