There is no single physical size that makes every QR code reliable. A short URL encoded in a sparse grid can remain readable at a size that would make a dense contact card fail. Distance, camera focus, printing, contrast, surface, light, and the required quiet zone all influence the result.

The useful unit is the module - one light or dark square in the grid - not the overall image alone.

Begin with the actual payload

Generate the final payload before sizing the layout. Extra characters, a higher error-correction level, or a logo can change the symbol. Count the modules across the finished grid, include the quiet zone, and divide the intended physical width by that total.

For example, a 33-module symbol with a four-module quiet zone on each side occupies 41 modules across. At 0.5 millimeters per module, the total width is 20.5 millimeters. This is a calculation example, not a universal recommendation; the required module size depends on the output process and scanning conditions.

Distance changes the design

A code on a hand-held card is scanned at close range. A poster across a corridor or a presentation screen may be several meters away. As distance increases, the code needs to occupy a larger angle in the camera’s view. People also need enough time and a safe place to hold the device steady.

Do not put a small code high above eye level and expect digital zoom to rescue it. For wayfinding or outdoor displays, test from the intended standing area with typical - not flagship-only - phones.

Printing and surfaces

Ink spread can close narrow light gaps. Low-resolution office printers can soften module edges. Gloss causes glare, folds create shadows, and curved packaging changes perspective. A vector SVG preserves geometry in the layout, but the final production method still determines the physical edge quality.

Ask the printer about effective resolution and minimum reliable feature size. Request a proof on the real stock, finish, and shape.

Screen display

On screens, size in CSS pixels is only part of the story. Display scaling, screenshots, video compression, brightness, moiré, and viewing distance can interfere. Provide generous clear space and keep the code visible long enough to scan. Do not animate or continuously resize it.

A repeatable sizing workflow

  1. Finalize and shorten the payload without using an untrusted shortener.
  2. Select the error-correction level and logo treatment.
  3. Export SVG for layout work when possible.
  4. Set a provisional size based on module dimensions and distance.
  5. Produce a real proof.
  6. Test several devices at near, expected, and slightly farther distances.
  7. Increase the size or simplify the payload if results are inconsistent.

Create the code you need

Use HighEndDIY’s private browser tool, then test the result in the setting where people will scan it.

Create a QR Code

Found something that should be corrected? Email [email protected].