← All posts
QR Marketing

9 QR Code Mistakes That Quietly Kill Your Scan Rate

Adscano Team · 6 June 2026 · 8 min read

Nobody sets out to run a bad QR campaign. The mistakes that tank scan rates aren't dramatic, they're quiet. The code works fine in the design file, the ad looks clean, everyone signs off, and then the scans just... don't come. Or they come and vanish.

The frustrating part is that by the time you see the flat number, the money's spent and the print run is out in the world. So here are the nine we see most often, each one a silent leak, each one avoidable if you catch it early.

1. No reason to scan

The number one killer. A bare code sitting on an ad is a question with no answer, scan for what? People need the payoff spelled out before they'll spend the effort. "Scan for ₹150 off" works; a lonely square doesn't. If your ad shows a code but no promise next to it, that's your leak. Add the reason first.

2. The code is too small

Designers shrink codes to keep the layout pretty. But a QR has to be physically large enough for a camera to resolve at the distance people read the ad. Rough rule: the code's size should be at least a tenth of the reading distance. A hoarding read from 20 metres needs a roughly 2-metre code; a tiny one up there is decorative, not functional. When in doubt, go bigger.

3. Printing over a photo or a busy background

Scanners read the contrast between dark and light modules. Slap a code over a face, a landscape, or a gradient and those edges blur. Keep codes on clean, solid, high-contrast backgrounds, dark code, light field. And leave the quiet-zone margin around it; text crammed against the edge breaks the read.

4. Using a static code you can't fix or track

A static code bakes the destination into the pattern permanently. Typo the URL and the code is dead, reprint everything. Worse, you learn nothing, because static codes carry no analytics. A dynamic code points at a redirect you control, so you can fix the destination after printing and see every scan. For anything printed, static is a trap. The full comparison lives in dynamic vs static QR codes.

5. Dumping scans on the homepage

The scan succeeds and the person lands on your full website, menu, banners, cookie prompt, the works. On a mobile connection that's a slow, confusing dead end, and they bounce. A scan is a high-intent moment; honour it with a single-purpose page that delivers the promised reward and nothing else. Homepage dumps waste the best moment you'll get.

6. A landing page that's too heavy for real networks

Even a dedicated page fails if it's bloated. India runs on wildly variable mobile data, and your page has to load on the bad connection, not the good one. Hero videos, image carousels, and heavy scripts push load time past the two-second patience window. Build light: one screen, minimal assets, fast render.

7. One code for every placement

You run the same ad across three cities and use the same code everywhere. Now you've got 4,000 scans and no idea which city drove them, so you can't decide where next quarter's budget goes. That's the whole point of putting a trackable code on offline media, quietly thrown away. Use a separate tracked code per city, per publication, per creative.

8. Demanding an app to scan

Some campaigns route people to "download our app first." The moment a scan implies an install, most people quit. The phone's native camera reads standard QR codes with no app at all, that frictionlessness is the entire advantage, so don't throw it away. Image triggers (the printed picture itself launching an experience, no code) are genuinely useful, but they only fire inside the Adscano scanner or an app embedding it, so save those for audiences you already own, not cold outdoor placements where native-camera QR is the right call.

9. Never testing the printed proof

The code scans flawlessly on your monitor, so you approve it, and the printed version fails. Ink bleed, a low-res export, a fold through the pattern, or glossy lamination glare can each kill a code that looked perfect on screen. Print one real copy and scan it with three different phones (an old Android, a new Android, an iPhone) before the run. Two minutes here saves a whole campaign.

The pattern behind all nine

Notice what these share. None of them are strategy failures, they're execution details that feel too small to matter until they quietly cost you every scan. QR marketing rewards boring diligence: right size, clean contrast, dynamic and tracked, fast destination, tested on paper.

Run down this list before your next ad goes to press. Most of these checks take seconds. Each one you skip is a leak you won't see until the scans don't come.

Mistake Quick fix
No reason to scan Add the offer above the code
Code too small Size to ~1/10 of reading distance
Busy background Solid high-contrast field + quiet zone
Static code Use dynamic, trackable codes
Homepage dump Single-purpose landing page
Heavy page Build light; assume 3G
One shared code One tracked code per placement
App required Rely on native camera
Untested print Scan the proof on three phones

Adscano gives you dynamic, per-placement codes and shows you the scan number in real time, so leaks surface fast. Get started free and stop the quiet ones.