A QR code with a short link can be printed as small as about 2 cm (0.8 in) wide, including its blank border, if it’s read from close up. Two things push the size up: how much the code holds, because more data means more, smaller squares, and how far away people scan it from. A good rule is that a code should be at least a tenth of the scanning distance: a poster read from 2 metres needs a code at least 20 cm wide.
Why content changes the size
A QR code is a grid of black and white squares (called modules). The more you put in it, the more squares it needs: the smallest code, version 1, is 21 × 21 squares, and each version up adds 4 more per side, up to version 40 at 177 × 177. Phones need each square to be big enough to see, so a denser code needs printing larger to keep its squares the same size.
I ran some typical contents through the QR encoder the JFDI QR code maker uses, at its two most common error-correction levels:
| What the code holds | Characters | Squares across (Medium) | Squares across (Highest, for logos) |
|---|---|---|---|
Short link: https://jfdi.pro/blog/menu | 21 | 25 | 29 |
| Typical page link | 54 | 33 | 41 |
| Wi-Fi network and password | 43 | 33 | 37 |
| Long link with tracking parameters | 112 | 45 | 57 |
| Contact card (name, company, phone, email, website) | 169 | 53 | 69 |
The long tracking link needs almost twice as many squares across as the short link, and with a logo it needs more than twice.
Minimum sizes for close-up scanning
Working from the 2 cm guideline for a short link, each square is about 0.6 mm. Keeping squares that size, and adding the standard blank border of 4 squares on each side, gives these minimum widths for codes read from close up (a table card, a business card, a product label):
| What the code holds | Minimum width (Medium) | With a logo (Highest) |
|---|---|---|
| Short link | 2.0 cm | 2.2 cm |
| Typical page link or Wi-Fi | 2.5 cm | 3.0 cm |
| Long link with tracking | 3.2 cm | 3.9 cm |
| Contact card | 3.7 cm | 4.7 cm |
These are minimums for good conditions: sharp printing, a dark code on a light background, and a modern phone. Add a margin of safety for anything that matters, and test with an older phone.
Minimum sizes for scanning from a distance
For posters, shop windows and signs, distance matters more than content. Use the 10:1 rule as a starting point:
| Scanning distance | Minimum code width |
|---|---|
| 30 cm (in your hand) | 3 cm |
| 1 m (a poster on a wall) | 10 cm |
| 2 m (across a room) | 20 cm |
| 5 m (a shop window from the pavement) | 50 cm |
Dense codes need more than this; short links can manage a little less.
How to make a code smaller
- Shorten the link. Link to
yoursite.com/menu, not a long page address with tracking parameters. This is the biggest win. (Avoid third-party link shorteners for print: if the service closes, the code dies. See why free QR codes stop working.) - Put fewer fields in a contact card. A name, phone and email are often enough.
- Leave out the logo, or keep it small. A logo hides part of the code, so it needs the highest error correction, which adds squares.
- Use square dots. Rounded and dot styles look nice but leave less margin for error at small sizes.
The maker’s notes under the preview show the code’s version, its squares across and its error correction, and warn when a code holds enough data that it needs printing at least 4 cm wide.
Printing checklist
- Download SVG or PDF for print, so the edges stay sharp at any size.
- Keep the blank border (4 squares is the standard; never less than 2).
- Dark on light, with contrast of at least 4:1, on a matt surface.
- Don’t print on curves or creases.
- Test the printed proof with two or three phones, from the real distance.