freebarcodeqr.com

QR Code Not Scanning? Causes and Fixes.

The eight reasons QR codes fail, ordered by how often they actually happen.

Last updated: 2026-06-11

A QR code that won't scan almost always fails for one of eight reasons. Work down this list in order — it's sorted by how often each cause turns out to be the culprit.

1. Too small for the scanning distance

The most common failure. A code's side length needs to be at least one tenth of the distance it's scanned from, with an absolute floor around 2 × 2 cm. A 2 cm code on a poster people read from two meters away is unscannable by design.

Fix: reprint larger, or move the code to where people can get close to it.

2. Low contrast or inverted colors

Scanners look for dark modules on a light background. White-on-black (inverted) codes fail on a large share of scanner apps, and subtle brand palettes — gold on cream, gray on white — fail the moment lighting is less than perfect.

Fix: dark dots, light background, strong contrast. Black on white never loses.

3. The quiet zone got cropped

ISO/IEC 18004 requires an empty margin of at least 4 modules around the code. Designers routinely trim it or run text and borders right up to the dots, and the scanner can no longer isolate the symbol.

Fix: restore the white margin. If a frame or caption sits near the code, keep it outside the quiet zone.

4. The logo covers too much

Error correction level H can reconstruct up to 30% of the symbol, but that budget has to cover print defects and wear too — a logo that eats 25% of the middle leaves nothing in reserve.

Fix: keep the logo under roughly 20% of the code area, always with error correction H, and never let it touch the three corner finder squares.

5. Too much data packed in

Long URLs and full vCards push the code to a dense module grid. At small print sizes the individual dots become too fine to resolve.

Fix: shorten the content. Encode a short URL that redirects on your own domain, or trim vCard fields to essentials.

6. Glossy, curved, or textured surface

Glare from laminate or glass blinds the camera; curvature on bottles and sleeves distorts the grid; fabric and corrugated textures break up the modules.

Fix: matte finishes beat gloss. On curved packaging, place the code where the surface is flattest, or shrink it so the curvature across the code is negligible.

7. Physical damage in the wrong place

Error correction handles scattered damage well, but the three large corner squares (finder patterns) are how scanners locate the code — damage there is fatal far sooner than 30%.

Fix: reprint, and for codes that get handled, laminate and bump error correction to Q or H.

8. The scan works — the link is dead

If the camera recognizes the code but the destination won't load, the QR isn't the problem. Either the destination page is down, or the code is a dynamic QR whose provider has deactivated the redirect — the standard outcome of a lapsed trial on subscription QR services.

Fix: scan and read the URL itself. If it's a short-link domain you don't recognize, the code was dynamic; generate a static replacement pointing directly at your destination and reprint.

Frequently asked questions

Why does my QR code scan on iPhone but not Android?
Usually marginal size or contrast: different camera stacks give up at different thresholds. A code that only scans on some phones is telling you it has no safety margin — fix the size, contrast, or density rather than blaming the phone.
Do QR codes scan from screens?
Yes — screens are high-contrast and backlit, which scanners like. Failures on screens come from low brightness, aggressive night-mode filters, or showing the code too small. Full-screen the image and raise the brightness.
How do I test a QR code properly before printing a batch?
Print one at final size on the final material. Scan it with at least two phones — one iPhone, one mid-range Android — from the real-world distance, in the worst lighting the code will live in. Thirty seconds of testing saves a reprint run.

Related tools

More guides