A QR code on a surface is not enough. Most QR codes go unscanned — not because the technology doesn't work, but because the design, placement, or context fails to motivate someone to pull out their phone. Getting scanned is a design problem, not a technical one.
Here's how to design QR codes that actually get engagement.
Give a Reason to Scan
The single most important factor. Nobody scans a QR code "just because." They need a reason — and that reason must be clear and compelling before they pick up their phone.
Bad: A QR code on a wall with no context.
Better: A QR code with "Scan for menu" below it.
Best: "See today's specials — scan to view the menu" with an appetizing photo nearby.
The call-to-action (CTA) should answer: "What do I get if I scan this?" Make it specific. "Learn more" is vague. "Get 15% off your first order" is specific and compelling.
Effective CTAs by context:
- Restaurant: "Scan to see our menu"
- Retail: "Scan for 15% off"
- Event: "Scan to register — free entry"
- Product: "Scan for setup tutorial"
- Business card: "Scan to save my contact"
- Poster: "Scan to watch the trailer"
Placement Matters More Than Design
A beautifully designed QR code in the wrong place gets zero scans. Put it where people naturally look, pause, and have their phone accessible.
High-scan locations: table surfaces (restaurants, cafes), checkout counters, elevator interiors, bathroom mirrors, waiting areas, product packaging (when held in hand), business cards, beside the thing the QR relates to.
Low-scan locations: high on walls, ceilings, moving vehicles, inside glass cases, on surfaces people walk past quickly, tucked in corners, competing with 10 other visual elements.
The principle: QR codes work best at arm's length, in moments of pause, near the thing they reference.
Size and Visibility
A QR code should be immediately visible and recognizable as a QR code. If people don't notice it, they can't scan it.
Minimum sizes: 2×2 cm for hand-held materials. 3-4 cm for table placement. 8+ cm for wall posters. Bigger for anything beyond arm's reach.
Visual prominence: the QR code should have breathing room — don't sandwich it between blocks of text or other images. White space around the QR draws the eye to it.
Color and Brand Integration
Default black-and-white QR codes work reliably but look generic. Customized colors make QR codes feel intentional and branded.
Rules for color:
- Dark modules on light background (always)
- Minimum 40% brightness difference between the QR and background
- Your brand's primary color for the QR modules works well
- Avoid gradients on the modules themselves (they reduce contrast)
- Keep the background solid or very subtly textured
Good combinations: Dark blue on white. Forest green on cream. Brand purple on light gray. Black on yellow (high visibility).
Risky combinations: Light colors on white. Any neon color. Red on green (colorblind users can't distinguish). Any low-contrast pairing.
Frame and Context
A QR code with a frame and text label gets more scans than a naked code. Frames provide visual context and draw attention.
Common frame styles:
- Rounded border with text below: "SCAN ME"
- Arrow pointing to QR: "Point camera here"
- Branded frame matching the material design
- Icon + text: phone icon + "Scan with your camera"
The frame should complement, not compete with, the QR code. Keep it simple.
Don't Require an App
One of the reasons QR codes failed in their first wave (2010-2014) was that scanning required downloading a separate app. Modern phones scan with the default camera — but many people still think they need an app.
If your audience might not know how to scan, add a brief instruction: "Point your phone camera at this code" or include a small phone icon scanning the QR.
Reduce Friction After the Scan
The design of the QR code gets the scan. But if the destination is a slow-loading page, a cluttered website, or a PDF that's impossible to read on mobile, you lose the person.
Make sure the landing page is mobile-optimized, loads in under 3 seconds, has a clear single action (order, RSVP, save contact, read), and doesn't immediately ask for personal information (build trust first).
A/B Testing QR Placement
Create two different QR codes (with the same destination but different tracking) and place them in different locations. Compare scan rates to learn which placement works better.
Example: one QR on the table and one at the register. Same menu link, different short codes. After a week, check which got more scans. Data beats assumptions.
When NOT to Use a QR Code
QR codes aren't always the answer. Avoid them when the user is already on a digital device (just use a clickable link), when the context doesn't warrant a scan (too many QR codes create fatigue), when there's no clear value proposition, and when the audience is unlikely to have smartphones.
A strategically placed QR code that gets 50% scan rate is better than 10 QR codes that each get 2%.
Create Scannable QR Codes
Design custom QR codes with colors, dot styles, and frames at qree.app.