8 QR Code Design Mistakes That Hurt Scan Rates
ScanOrbit Team
A QR code can look great and still fail to scan. The technical requirements of QR code design are more unforgiving than most graphic designers expect, and the mistakes below appear in professionally produced materials regularly.
The good news: every mistake on this list is preventable with a simple checklist before you send anything to print.
Mistake 1: Inverted colors (light on dark)
QR codes work by contrasting dark modules against a light background. Most QR scanners (including iOS and Android native cameras) are engineered to read dark-on-light codes. Inverted codes (white modules on a dark background) fail on a meaningful share of devices, particularly older Android phones.
If your brand design requires a dark background, the correct approach is to add a white quiet zone (border) around the QR code, not to invert the modules themselves.
Mistake 2: Printing too small
The minimum reliable print size for a standard QR code is 2 cm × 2 cm for close-range scanning (arm's length). Anything smaller risks failure on lower-resolution phone cameras or in poor lighting conditions.
For materials viewed from a distance (posters, window displays, counter signs), apply the 1:10 rule: the QR code width should be at least 10% of the intended maximum scanning distance. A poster scanned from 50 cm should have a code at least 5 cm wide. See the minimum size guide for a full table by use case.
Mistake 3: Not scanning before print
This is the most expensive mistake. Sending a QR code to print without testing it on physical output is how companies end up with thousands of menus featuring a QR code that opens the wrong URL, or business cards with a code that fails half the time.
The correct process: print one copy at the intended size on the intended material, scan it on three different devices (iOS, Android, and an older smartphone if available), and check that the destination loads correctly. Only then approve the print run.
Mistake 4: Logo too large
Embedding a logo in a QR code is a feature, not a problem: but only if the logo is sized correctly. QR codes have built-in error correction that allows a percentage of the pattern to be obscured. At Level H (the maximum), 30% can be covered.
Most designers make the logo too large, exceeding 30% of the code area. The result is a code that looks great but scans unreliably. Keep the logo under 25% of the total code area to leave headroom. ScanOrbit automatically sets error correction to Level H when you add a logo: but sizing is your responsibility.
Mistake 5: No CTA frame or label
A bare QR code gives no instruction. A clear call-to-action frame ("SCAN ME", "SCAN FOR MENU", "SCAN TO ORDER") does two things: it signals that the code is meant to be scanned, and it sets an expectation for what the scanner will receive. Design guidance across the print industry consistently recommends never leaving a QR code bare.
In ScanOrbit's design studio, you can choose from multiple frame styles with fully customizable text and colors. Always use a frame for print materials.
Mistake 6: Wrong error correction level
Error correction levels run from L (7%) to H (30%). Most use cases are fine with M (15%, the default). Where designers go wrong is using Level L to get a less dense pattern, without realising this makes the code sensitive to minor damage or dirt.
Use Level H whenever you add a logo. Use Level M for general print. Only use Level L for digital display where the code is rendered at high resolution and will never be physically damaged. The error correction guide covers this in full.
Mistake 7: Using a static code when you should use dynamic
This is the most consequential mistake on this list: creating a static QR code for anything that goes to print is the decision that leads to reprinting costs down the line.
If there is any chance the URL, phone number, PDF, or content your code links to might ever change, use a dynamic QR code. The cost difference is zero on the Free plan: you get 3 dynamic codes at no cost.
Mistake 8: Landing page not mobile-optimised
A QR code's job ends when the scanner arrives at your destination. If that destination is a desktop-optimised website, a PDF designed for A4 portrait, or a page that loads slowly on a mobile data connection, you lose the user at the final step.
Check your Google PageSpeed Insights score for mobile. Ensure your landing page renders correctly at 375px width (iPhone SE baseline). If you don't have a mobile-optimised destination, a Landing Page QR code creates a mobile-native page for you with zero website development required.
Generate a Live Vector QR Code
Type any URL or text to test creating an instant dynamic QR code right now:
ScanOrbit Team
AuthorWritten by the team that builds ScanOrbit
We build the QR platform these guides describe, so the advice here comes from what we have had to get right in the product: print legibility, scan reliability, and what actually shows up in scan analytics.
Related articles
Related Guides & Knowledge Base
Master print optimization, real-time analytics telemetry, and campaign design best practices.
8 QR Code Design Mistakes That Hurt Scan Rates
Avoid contrast errors, margin clipping, and improper error correction before high-volume commercial print runs.
What Your QR Code Analytics Are Actually Telling You
Decode scan telemetry: turn city geolocations, device breakdowns, and time curves into actionable campaign ROI.
Dynamic vs Static QR Codes: Which One Do You Need?
Understand the core architecture: offline raw encoding vs cloud redirection with instant destination updating.
Help Center & Implementation Documentation
What is a QR Code?
Matrix symbology, Reed-Solomon error correction, and optical scanner mechanics.
How to Customize Your QR Code
Palette selection, custom logo insertion, frame badges, and vector export formats.
Choosing Error Correction Levels
Level L (7%) to Level H (30%): picking the right density for print durability.
Create Your Dynamic QR Code in Seconds
Experience full vector styling, editable destination routing, and real-time scan analytics: 3 dynamic codes free forever.
Scan to Test Studio
Scan with your phone camera to test instant redirection.