FreeOnlineQR
GuidesJuly 22, 2026 9 min read

Why Won't My QR Code Scan? 9 Common Causes and Fixes

Before assuming your printer or your customers' phones are broken, check this list — it's almost always one of a handful of well-known, fixable causes.

Screenshot of the tool covered in "Why Won't My QR Code Scan? 9 Common Causes and Fixes"

1. It's printed too small

This is the single most common cause of scan failures. Every QR code has a practical minimum print size below which the individual modules (the small squares) become too fine for a camera to distinguish reliably, especially at typical scanning distance. See our print size guide for specific minimums by use case, but as a rule of thumb, a code smaller than about 2 x 2 cm printed for close-range scanning is pushing the limit.

2. Poor contrast between foreground and background

QR scanners rely on strong contrast to distinguish the pattern from its background. Light gray on white, or any two similarly-toned colors, can fail to scan even at a perfectly reasonable size. Dark foreground on a light background (or vice versa, though dark-on-light is safer) with strong contrast is the most reliable combination — test any custom color choice on an actual printed sample before committing to a full run.

3. The quiet zone (border) is too small or missing

QR codes need a small margin of empty space around the entire pattern — called the quiet zone — for a scanner to recognize where the code starts and ends. Cropping a code too tightly, or placing it directly against a busy background pattern with no border, is a common and easily overlooked cause of scan failures.

4. Glare or reflection off glossy printing

Codes printed on glossy paper, laminated surfaces, or reflective packaging can create glare under certain lighting that a phone camera struggles to see past. If a code will live on a reflective surface, test scanning it under the actual lighting conditions it'll face — bright overhead light or direct sun — not just under even indoor lighting.

5. Damage or obstruction beyond the code's error correction

Every QR code tolerates some damage or obstruction thanks to built-in error correction, but there's a limit — a large enough smudge, tear, or fold can exceed even the highest correction level. See our guide to error correction levels for how much damage tolerance to expect, and consider a higher level if the code will be exposed to real wear.

6. A center logo that's too large

A logo covers real data in the code's pattern, and even with high error correction, an oversized logo (generally anything beyond about 30% of the code's total area) can exceed what the code can reconstruct. If a logo-embedded code isn't scanning reliably, try reducing the logo size before assuming the whole design needs to be scrapped.

7. The destination itself is broken

Sometimes the code scans perfectly fine, but the link, WiFi network, or file it points to has changed or gone offline — which looks identical to a scanning problem from the user's side. Always separately verify the destination is still live, especially for dynamic QR codes whose target might have changed since the code was printed.

8. An outdated or unusual scanning app

Modern phone camera apps (iOS and Android both) recognize QR codes natively without a separate app, but some older phones or unusual third-party scanner apps can be less reliable with certain code styles, particularly heavily stylized or dotted designs. If a code fails to scan for one person but works for others, ask what device and app they used before assuming the code itself is at fault.

9. The scan angle or distance is genuinely awkward

Extreme angles, too much distance, or camera shake can all cause a temporarily failed scan attempt that has nothing to do with the code's quality. Before troubleshooting further, try a second scan attempt straight-on at a comfortable, close distance.

How to systematically rule these out

Print the code at actual size (not a screen preview), test-scan it under the real lighting and surface conditions it'll face, with a couple of different phones if possible, before committing to a full print run. See our dedicated guide on testing a QR code before printing hundreds of copies for a step-by-step process.

A systematic troubleshooting order worth following

When a code isn't scanning, work through causes in order of likelihood rather than jumping straight to the least common explanation: first check size and contrast (the two most common culprits by far), then check the quiet zone and any obstruction or damage, then test the destination separately from the scan itself, and only after ruling out all of these consider whether the scanning device or app itself might be at fault. This order reflects how frequently each cause actually occurs in practice, and following it systematically saves time compared to guessing randomly at what's wrong.

What to do if a code scans for you but not for a customer

This specific scenario — works for you, fails for someone else — almost always points to a device or environment difference rather than the code itself: ask what phone model and app they used, what lighting conditions they were in, and how far away they were standing. Comparing their exact conditions against your own successful test often immediately reveals the actual cause, whether it's an older phone's camera, poor lighting, or simply standing further away than you did during your own test.

When the problem is actually the underlying data, not the code itself

Occasionally a code scans perfectly fine technically, but produces unexpected or garbled results when opened — a WiFi code with an incorrectly entered password, a vCard with a malformed field, or a URL missing its protocol prefix. This is a data-entry issue rather than a QR code generation or printing problem, and it's worth explicitly checking the underlying encoded content (many generators let you view or re-download a summary of what was actually encoded) separately from confirming the code physically scans.

Environmental factors that are easy to overlook

Extreme temperatures affecting phone camera performance, condensation or moisture on a printed surface, and low battery states that cause some phones to disable certain camera features are all genuine, if less common, contributors to scan failures worth ruling out in unusual environments — an outdoor winter event or a steamy kitchen environment near a restaurant menu code, for instance, both introduce conditions a simple office test wouldn't reveal.

How printing method affects scan reliability

Digital printing, offset printing, thermal printing, and direct laser etching all have different quality characteristics that affect how faithfully a barcode's pattern reproduces — a printing method with lower effective resolution or more ink spread needs a correspondingly larger printed code size to compensate, compared to a high-resolution method that can reproduce a code accurately at a smaller size. If you're switching print vendors or methods for an existing design, don't assume the same code size that worked before will automatically work with the new process — retest.

A pre-launch checklist worth keeping on hand

Correct size for the expected viewing distance, strong contrast between foreground and background, an intact quiet zone with no crowding, appropriate error correction for the expected wear, a logo no larger than about 30% of the code's area if one is present, a verified working destination, and a test scan on at least two different phones under real conditions — running through this list before any print order catches the overwhelming majority of scan failures before they ever reach a customer.

How to respond when a customer reports a scanning problem

If a customer reports that a code won't scan, resist the urge to assume they're doing something wrong — ask a few quick questions (what phone, what app, roughly how far away) to diagnose rather than dismiss the report, since a genuine issue affecting even a small percentage of customers is worth fixing rather than writing off as user error. If several unrelated people report the same issue, that's a strong signal of a real, fixable problem with the code or its placement rather than a string of coincidental user mistakes.

Why the same code can work in one location but not another

If a code scans reliably in one physical location but not another — say, one store location versus a different branch — the code itself is very likely fine, and the difference lies in local factors: lighting, printed material quality at that specific location, or even different signage vendors producing inconsistent print quality across locations. Standardizing your printing process and vendor across multiple locations reduces this kind of frustrating, hard-to-diagnose inconsistency.

How aging and UV exposure degrade printed codes over time

A code that scanned perfectly when first installed can degrade over months or years of UV exposure, weathering, or repeated handling — ink fading, lamination yellowing, or physical wear gradually reducing contrast and legibility even without any single dramatic damage event. For any QR code intended to remain in place long-term (permanent signage, for instance), periodic reinspection and, if needed, replacement is a reasonable maintenance practice rather than assuming a code that worked at installation will work indefinitely.

A final word on prevention versus troubleshooting

Every cause covered in this guide is meaningfully easier to prevent during the design and pre-print testing stage than to diagnose and fix after a large batch is already printed and distributed. Investing a modest amount of upfront care — real print size testing, contrast checking, and a genuine test scan under realistic conditions — consistently pays for itself many times over compared to troubleshooting a widespread scan-failure problem after the fact.

Keeping a troubleshooting record for recurring placements

If you manage QR codes across many recurring placements (menus at multiple restaurant locations, signage across several stores), keep a simple log of any scan issues reported and how they were resolved — over time, this record often reveals systematic patterns (a specific vendor's print quality, a particular lighting condition at certain locations) that individual, one-off troubleshooting sessions wouldn't surface on their own.

How to document a resolved issue for future reference

Once you've diagnosed and fixed a scanning problem, note down what the cause was and how it was resolved somewhere accessible to your team — this creates an increasingly valuable internal reference over time, letting future troubleshooting start from "have we seen this before" rather than working through the full diagnostic process from scratch every single time a similar issue recurs.

When it's worth switching generators rather than continuing to troubleshoot

If you've ruled out size, contrast, placement, and printing quality and a specific generator's codes still scan less reliably than expected, it's worth testing an alternative generator on the exact same content and print job — occasional differences in how generators implement error correction, module rendering, or logo compositing can genuinely affect real-world scan reliability, and this is a reasonable, low-cost experiment once more common causes have been eliminated.

The single most valuable habit for avoiding scan failures

If there's one habit worth adopting above all the specific causes covered in this guide, it's this: never skip the physical, real-condition test scan before a meaningful print run, no matter how confident you feel about the design. Every cause discussed here — size, contrast, damage tolerance, logo placement, destination accuracy — is caught by this one simple step, performed consistently, far more reliably than trying to reason through each potential failure mode in the abstract before printing, and it costs only a few minutes of your time compared to the real cost of a failed print run already out in front of customers.

Getting started

Generate your QR code above, download it in the format your printer requires, and run through the checklist above on a printed sample before committing to a full order.

FreeOnlineQRWritten by the team that builds the tools in this guide.

Comments (0)

No comments yet — be the first.

Leave a comment

Comments are reviewed before they appear.

Ready to create your Website URL QR code?

Free, no sign-up, and it works in your browser.

Website URL QR code generator