A QR code that doesn't scan, or that nobody bothers to scan, wastes the space it's printed on. These twelve rules cover the mistakes we see most often.
Make it scannable
1. Dark on light
Scanners look for dark modules on a light background. Black or a dark brand colour on white or a pale tint works everywhere. Light-on-dark ("inverted") codes and low-contrast colour pairs fail on many phones.
2. Big enough for the distance
Use the 10:1 rule: the code should be at least a tenth of the scanning distance wide. For example, a code scanned from 1 metre should be at least 10 cm wide. Never go below 2 cm. See the full print size guide.
3. Leave a quiet zone
Keep a clear margin of at least four modules on every side. Text, borders and photos that touch the code stop phones from finding its edges.
4. Keep it simple
The less a code contains, the bigger and more readable its modules. A dynamic code only holds a short link, however long your real web address is.
5. Go easy on the logo
A logo is great for recognition, but keep it to about a quarter of the code's width and never cover the corner squares. Here's how to add a logo safely.
6. Use a vector file
Print from SVG or PDF so the code stays sharp at any size. A small PNG scaled up becomes blurry, and blurry codes don't scan.
Make people want to scan it
7. Say what it does
"Scan me" isn't a reason. "Scan for the menu", "Scan to book a table" and "Scan for 10% off" are. A frame with a short call to action makes a measurable difference to how many people scan.
8. Put it where people have time
Codes work where people are standing or sitting still: tables, counters, queues, packaging, waiting rooms. They work badly on fast-moving vehicles, motorway billboards, or anywhere without a mobile signal.
9. Place it at a comfortable height
On walls and windows, keep the code roughly between waist and eye height so people don't need to crouch or stretch.
Make the destination worth it
10. Send people to a mobile page
Everyone who scans is on a phone. Make sure the destination loads quickly on mobile data and is easy to read on a small screen. A desktop-only page or a huge PDF throws away the scan.
11. Plan for change
Prices change, links break, campaigns end. Use a dynamic code so you can update the destination without reprinting. Turn on broken-link alerts so you know if the page it points to stops working.
Check it
12. Test the real thing
Print one copy at full size, put it where it will live, and scan it with two or three different phones, including an older one, in the real lighting. Then scan the destination link too, to make sure it's the right page.
Quick checklist
- Dark modules on a light background
- At least a tenth of the scanning distance wide, and never under 2 cm
- Clear quiet zone all round
- Logo small and central, corners untouched
- SVG or PDF artwork
- Clear call to action
- Mobile-friendly destination
- Dynamic, so you can change it later
- Test-scanned in place
QR Flip checks contrast and logo size as you design, and warns you before you print a code that may not scan. Create a QR code.