The 10:1 rule — scan distance determines size
The most practical rule of thumb for QR code sizing is the 10:1 ratio: your QR code should be at least one-tenth the distance from which someone will scan it. If a customer stands 30cm away (a business card held in hand), the code needs to be at least 3cm wide. If they're standing 1 metre away (a table menu or A4 flyer), aim for at least 10cm.
Most phone cameras can resolve smaller codes at close range, but the 10:1 rule gives you a comfortable margin for low-light conditions, older devices, and printing imperfections.
Size recommendations by material
Different print materials have different expected scan distances. Here are the recommended sizes for the most common use cases:
| Material | Min. size | Recommended size | Expected scan distance |
|---|---|---|---|
| Business card | 1.5 cm × 1.5 cm | 2.5 cm × 2.5 cm | 20–30 cm |
| Flyer / A5 leaflet | 2.5 cm × 2.5 cm | 3–4 cm × 3–4 cm | 30–50 cm |
| A4 poster / menu | 3 cm × 3 cm | 4–6 cm × 4–6 cm | 50–80 cm |
| Table tent / card | 3 cm × 3 cm | 4 cm × 4 cm | 40–60 cm |
| A3 / A2 poster | 5 cm × 5 cm | 8–10 cm × 8–10 cm | 80–150 cm |
| Shop window / banner | 10 cm × 10 cm | 15–20 cm × 15–20 cm | 150–300 cm |
| Billboard / large sign | 30 cm × 30 cm | 40–60 cm × 40–60 cm | 300–600 cm |
Quiet zone matters: always leave a margin of at least 4 modules (the individual squares) of white space around the entire QR code. Most generators add this automatically, but if you're cropping or overlapping the code onto a design, make sure you preserve this border.
How URL complexity affects size
Longer URLs create more complex QR codes with more modules (the black and white squares). A more complex code is harder to scan at the same physical size. If your URL is long, you have two options:
- Shorten the URL using a service like bit.ly or your own domain shortener before generating the QR code. A short URL creates a simpler, more scannable code.
- Increase the print size to compensate for the added complexity. A URL over 100 characters should be printed at least 20–30% larger than the table above suggests.
Resolution: what DPI should you use?
For digital screens and online use, 72 PPI is standard. For print, you need a minimum of 300 DPI (dots per inch) to avoid visible pixelation. At 300 DPI, a 3cm QR code needs to be at least 354 × 354 pixels in the source file.
FlexQRSnapper exports a 512 × 512 pixel PNG by default. At 300 DPI, this gives you a clean print size of approximately 4.3 cm × 4.3 cm. For larger prints, request SVG format from a vector-capable generator, or scale from the FlexQRSnapper PNG — since QR codes are binary (black or white pixels), they scale well without blurring as long as you use nearest-neighbour interpolation rather than bilinear smoothing.
Quick DPI reference
| Print size | Min. pixels at 300 DPI | FlexQRSnapper 512px is sufficient? |
|---|---|---|
| 2 cm × 2 cm | 236 × 236 px | Yes |
| 3 cm × 3 cm | 354 × 354 px | Yes |
| 4.3 cm × 4.3 cm | 508 × 508 px | Yes (exact fit) |
| 5 cm × 5 cm | 591 × 591 px | Close — slight upscale needed |
| 10 cm × 10 cm | 1181 × 1181 px | No — use SVG or upscale carefully |
Common mistakes that cause scan failures
- Too small on business cards. Business cards are small, and designers often shrink the QR code to fit other elements. Anything below 1.5cm is a gamble — test it thoroughly on multiple phones.
- Printing over a coloured background. QR codes need high contrast. If your background is dark, your QR code modules need to be light — and vice versa. Never print a standard black QR on a dark background.
- Cropping the quiet zone. Trimming the white border around a QR code is the most common design mistake. The quiet zone is part of the code — cutting it causes scan failures.
- Using a low-resolution PNG at large sizes. Scaling a 256px PNG to fill an A3 poster will produce a blurry, unreadable result. Use SVG for anything over 5cm at 300 DPI.
- Not testing in the actual environment. Glare on laminated surfaces, dim restaurant lighting, and screen reflections can all reduce scannability. Always test on-site in realistic conditions.
Should you add a call-to-action?
Yes — where space allows. A short label beneath the QR code ("Scan to view menu" or "Scan for 10% off") increases scan rates significantly. People are less likely to scan a QR code with no context about what it does. Even a 2–3 word prompt makes a meaningful difference to conversion.
Always test before printing at scale. Print a single test copy, scan it in the same lighting and at the same distance a real user would, before committing to a large print run. A scan failure discovered after 500 menus are printed is an expensive mistake.
Ready to generate your QR code?
Create a free, watermark-free, 512px PNG QR code in seconds — no account needed.
Generate your QR code →