The most common reason a printed QR code won't scan is that it's too small for the distance people scan it from. The good news is there's a simple rule.
The 10:1 rule
A QR code should be at least one-tenth as wide as the distance it will be scanned from.
| Scanning distance | Minimum code width |
|---|---|
| 25 cm (held in the hand) | 2.5 cm |
| 50 cm (on a table) | 5 cm |
| 1 m (on a counter or wall nearby) | 10 cm |
| 2 m (poster across a room) | 20 cm |
| 5 m (window or banner) | 50 cm |
This is a starting point, not a guarantee. Older phones, poor lighting and busy designs all need a bigger code, so round up when you can.
The absolute minimum
Don't print any QR code smaller than 2 × 2 cm (about 0.8 inches), even on a business card. Smaller codes may scan on the latest phones, but many people won't get a result.
Common sizes
| Where it's printed | Suggested size |
|---|---|
| Business card | 2–2.5 cm |
| Flyer or leaflet | 3–4 cm |
| Table tent or menu | 4–6 cm |
| Product packaging | 2.5–4 cm, depending on the box |
| A4 poster | 8–12 cm |
| A1 poster or shop window | 20 cm or more |
Density matters as much as size
A QR code's squares are called modules. The more content a code holds, the more modules it needs, and the smaller each one becomes at the same printed size.
A long web address with tracking parameters can produce a very dense code. That's one reason dynamic QR codes are easier to print small: they only hold a short link, so their modules are bigger.
Adding a logo increases density too, because the code needs extra error correction to make up for the hidden area. If you're adding a logo, go up a size.
Leave a quiet zone
Scanners need a clear margin around the code to find its edges. This is called the quiet zone. Leave at least four modules of empty space on every side, in the same colour as the code's background. Never let text, images or the edge of the page run into it.
Use the right file
- For print, use SVG or PDF. They're vectors, so they stay perfectly sharp at any size.
- If you must use a PNG, export it large: 2048 px or more for posters. Never stretch a small PNG.
- Keep the code dark on a light background. Many phones still struggle with light-on-dark codes.
Always test before you print
Print one copy at the real size, put it where it will be used, and scan it from the expected distance. Try an older phone and a newer one, and test in the lighting the code will actually be in. It takes two minutes and can save an entire print run.
More tips are in our QR code best practices for print.