Most QR codes that fail do not fail because the idea was wrong; they fail because a small contrast mistake slipped through unnoticed. This guide collects the mistakes that show up most often, explains why each one breaks scanning, and shows how to fix it. Read it before you approve a design, and use it as a checklist when you review a proof. A mistake caught on one proof costs minutes; the same mistake caught after a full print run costs the run, the reprint, and the time you lose while the corrected version is made.
Mistake one: crowding the code
Pairing two mid-tone colors that look different in hue but similar in brightness, such as red on green or blue on purple. The camera sees similar greys and cannot separate modules from background.
Fix it by pulling decoration, text, and color back outside the code panel, and by checking the quiet zone on all four sides of the proof. The code needs a calm island, and the fix is usually a matter of moving things outward rather than redesigning the whole piece.
Mistake two: weakening the background or the margin
Letting a background tint, shadow, or photo darken the light modules or the quiet zone. The code loses its clean edge and the scanner hunts for a boundary that is no longer there.
Fix it by restoring a solid, light background behind the code and a clean margin around it. If the surrounding design cannot give up that space, enlarge the panel or move the code to a calmer area. A code that fights its own background will keep failing, however often you reprint it.
Mistake three: trusting the screen instead of the proof
Trusting the screen preview instead of a printed proof. Screens are backlit and flattering; print, laminate, and room light all reduce the gap the scanner relies on.
Fix it by printing a proof at the final size on the real material and scanning it in the real light. Screens are backlit and flattering, and they hide ink spread, glare, and texture. The proof is the only honest version of the design, and it should be the version you approve.
Putting this into practice
Take your current design and check it against the three mistakes above, one at a time, on a printed proof. Mark each problem you find, fix it, and proof again. Do not approve a design until it passes all three checks. Keep the checklist with the project file so the next designer does not repeat the same mistakes.
Common mistakes to avoid
Even when the main rules are followed, small slips still creep in. The most common ones are letting decoration drift into the quiet zone, choosing colors that look distinct but share a brightness, and approving a design from a screen preview instead of a printed proof. Another frequent slip is changing one part of a working design, such as the link or the paper, without retesting the whole thing. Treat every change as a reason to run a fresh proof, and treat any hesitation in a test scan as a signal to simplify rather than to hope the next phone will cope better.
Quick checklist
- Keep dark modules on a light, even background with strong contrast.
- Leave a clear quiet zone on all four sides of the symbol.
- Keep the finder patterns solid, undisturbed, and easy to find.
- Check the code at the real size, on the real material, in the real light.
- Confirm the call to action names the payoff and the typed alternative works.
- Recheck the code after any change to the link, design, size, or placement.
Related tools and guides
- Try the [QR contrast checker](/qr-contrast-checker) to check your choices before you commit to a design.
- Use the [QR color pair tester](/qr-color-pair-tester) to confirm the numbers and guardrails for this element.
- Check the [QR safety checker](/qr-safety-checker) for a practical way to verify the finished code.
- Check the [printed QR tester](/printed-qr-tester) for a practical way to verify the finished code.
- Check the [QR placement guide](/qr-placement-guide) for a practical way to verify the finished code.
- Check the [blog](/blog) for a practical way to verify the finished code.