Two rules cover almost every case. First: never print a QR code smaller than about 2 × 2 cm (0.8 × 0.8 in) — below that, average phone cameras struggle to focus at the close range the small code demands. Second: for codes scanned from further away, the side length should be at least one tenth of the scan distance.
The distance rule, worked through
Size = scan distance ÷ 10. A code scanned from 1 meter needs to be 10 cm across. A window poster read from 3 meters needs roughly 30 cm. A billboard read from 15 meters needs 1.5 meters.
The rule has a physical basis: phone cameras need the code to occupy enough of the frame to resolve individual modules. Halve the size and you halve the scanning distance — not the convenience.
Sizes by use case
Business cards and product labels: 2 × 2 cm minimum, scanned in-hand. Flyers, menus, and table cards: 3–4 cm, scanned from a seated half-meter. Posters in a shop window: 20–30 cm, scanned from the pavement. Vehicle wraps and billboards: 1 meter and up, depending on where people can actually stand.
When in doubt, print a test page at actual size and scan it from the real distance with a mid-range phone — not your flagship. The audience's worst camera is the constraint that matters.
Density is the hidden variable
QR codes grow in fixed steps: more characters means a larger module grid, which means smaller dots at the same print size. A 40-character URL produces a sparse, robust 25×25 pattern; a 250-character URL at the same 2 cm produces dots too fine for thermal printers and older cameras.
Keep the encoded content short. For URLs, that means short paths — or a short redirect path on your own domain. As a rule, content under about 50 characters keeps a 2 cm code reliable; under 300 characters keeps a 4 cm code reliable.
Quiet zone and contrast
ISO/IEC 18004 requires a quiet zone — an empty margin — of at least 4 modules on every side of the code. Designers crop it constantly, and it is one of the most common reasons a perfectly sized code fails. Leave the margin alone.
Print dark modules on a light background. Light-on-dark (inverted) codes fail on many scanners, and low-contrast brand-color combinations fail in bad lighting. Black on white is unbeatable; anything else should keep strong contrast between the dots and the background.
Resolution: use SVG and stop worrying
A QR code is geometry, not a photo. Download the SVG and it prints perfectly sharp at any size, from a stamp to a building wrap. If you must use PNG, export at the final print size at 300 DPI or better, and never upscale a small PNG.
Frequently asked questions
- Can a QR code be too big?
- Practically, no. The only failure mode is a scanner so close that the full code doesn't fit in the camera frame — which people instinctively fix by stepping back. Oversizing is always safer than undersizing.
- What's the smallest QR code that still scans?
- Lab conditions get below 1 cm with short content and a good camera. In the real world — average phones, imperfect print, hurried hands — treat 2 × 2 cm as the floor, and only with content under ~50 characters.
- Does error correction affect the size?
- Higher error-correction levels add redundancy modules, making the pattern denser at the same print size. Level M is the sensible default; reserve H for codes with a logo overlay or rough outdoor conditions, and give those codes a little extra physical size.
Related tools
- URL QR code generator — PNG and SVG download — SVG scales to any print size.
- QR code templates — Pre-styled designs that keep scannable contrast.
- Bulk QR code generator — Generate a whole campaign's codes in one ZIP.