QR Code Best Practices: Size, Color, Contrast, and Placement
Everything that affects whether a QR code actually scans in the real world.
A QR code that doesn't scan is worse than no QR code — it breaks user trust and wastes the marketing investment. Here's what actually matters in production.
Size
The minimum scannable size depends on scan distance:
| Use case | Distance | Minimum QR size |
|---|---|---|
| Business card | 15-30 cm | 2 × 2 cm |
| Product packaging | 30-60 cm | 3 × 3 cm |
| A4 flyer | 30-60 cm | 3 × 3 cm |
| Restaurant table tent | 30-60 cm | 4 × 4 cm |
| Wall poster | 1-2 m | 8 × 8 cm |
| Storefront window | 2-3 m | 15 × 15 cm |
| Billboard | 5+ m | 50+ cm |
Rule of thumb: QR width ≥ scan distance ÷ 10.
Contrast
- Always dark code on light background. White background with black QR is the gold standard.
- Some scanners (especially older Android) struggle with inverted colors (light on dark). Avoid unless you've tested extensively.
- Maintain a color contrast ratio of at least 4:1 between the QR pattern and background.
- Coloured codes work, but the QR pattern color must remain dark relative to the background.
Quiet zone (whitespace around the code)
Every QR code needs at least 4 modules of whitespace around it (a "module" is one square of the pattern). This is non-negotiable — scanners use the quiet zone to detect the code's edges.
QRolling exports include a margin, but the default is 2 modules, not 4. Raise the Margin slider in the Design step's Color tab to reach what the spec asks for. Whatever you set, don't crop it out in Photoshop afterwards.
Print considerations
- Bleed and safety margin: keep the QR at least 5 mm from the print edge.
- Lamination is fine, but matte > glossy. Glossy reflections can confuse scanners under direct light.
- CMYK conversion: pure black (K=100) prints crispest. Avoid 4-color rich black for QRs — the slight registration drift can blur edges.
- Ink saturation: cheap inkjet on porous paper bleeds and reduces scan reliability. Use laser print or commercial offset for important runs.
Digital placement
- On websites, never use a CSS background image for a QR — it's not selectable and screen readers can't describe it. Use
<img alt="...">with a meaningful description. - Mobile users can't scan a QR on their own phone screen. If your audience is mostly mobile, link to the destination directly with a button — keep the QR for users on a different device.
Final test checklist
Before printing or publishing:
- [ ] Scans on iOS Camera at the intended distance
- [ ] Scans on Android Camera (Pixel and Samsung)
- [ ] Scans on Google Lens
- [ ] Quiet zone preserved
- [ ] Color contrast ≥ 4:1
- [ ] At correct minimum size for the medium
Frequently asked
What's the smallest size a QR code can be?
Around 2 × 2 cm for an arm's-length scan from a business card. Smaller works in lab conditions but fails on real-world camera quality and lighting.
Can I make my QR any color I want?
Yes, as long as the QR pattern is significantly darker than the background. Aim for at least 4:1 contrast. Light QR on dark background works on newer phones but fails on some Android scanners — test thoroughly.