QR Quick Pick

Why Isn't My QR Code Scanning? 9 Fixes That Actually Work

Updated July 2026 · 5 minute read

A QR code that won't scan is almost never mysterious — the same nine problems cause nearly every failure, and each has a specific fix. They're listed here from most to least common, so work down the list and you'll usually find your culprit in the first three.

1. It's too small for the scanning distance

The single most common cause. A QR code that scans fine held in your hand can be unscannable on a wall six feet away, because the camera can't resolve the individual squares. The working rule is scanning distance ÷ 10: readable from 10 inches means at least 1 inch wide; readable from 10 feet means at least a foot wide. And regardless of distance, codes below about 0.8 inches (2 cm) get unreliable on most phones. Our QR code size chart has the full table by use case. Fix: reprint bigger. There is no software workaround for a too-small code.

2. Low contrast or inverted colors

Scanners are built to find dark squares on a light background. Light gray on white, gold foil on cream, or brand colors that are too close in tone all fail. Worst of all is inversion — a light code on a dark background — which many phones simply refuse to read. Fix: dark code, light background, strong contrast. Black on white is boring and works every single time; dark navy or forest green on white are safe brand-friendly options.

3. Blurry printing or a stretched image

QR codes are precise grids; anything that smears the grid kills them. The usual causes are printing a small, low-resolution image at a large size, saving as a heavily compressed JPG (which adds fuzz around every square), or stretching the code non-proportionally in a design tool so the squares become rectangles. Fix: download your code as an SVG — which every tool on this site offers free — and it stays perfectly sharp at any size. If you must use PNG, generate it large and never scale it up.

4. Glare from lamination, glass, or gloss

Glossy lamination, plastic sleeves, and codes displayed behind glass all reflect overhead light directly into the camera, washing out part of the pattern. This is the classic restaurant-table-tent failure: works at your desk, fails under the pendant light at table 9. Fix: matte lamination or matte paper, and test the code in its real location under its real lighting before printing fifty of them.

5. The quiet zone got cropped

The blank margin around a QR code isn't decoration — it's how scanners find the code's edges, and the standard calls for a margin at least four squares wide on every side. Designers routinely crop it away or run the code flush against borders, text, or busy backgrounds. Fix: keep a clean margin around the code roughly the width of one of its larger corner squares. If your code touches anything, it's too close.

6. Too much data packed in

The more characters you encode, the denser the grid becomes — and dense grids need to be printed larger to scan reliably. A 300-character URL with a dozen tracking parameters produces a noticeably finer, fussier code than a clean 25-character one. Fix: encode the shortest thing that works. Link the page, not the page plus every UTM parameter you can think of.

7. Physical damage or obstruction

QR codes have built-in error correction and survive small scratches, but there's a limit — especially damage to the three large corner squares, which scanners use to orient. Faded ink from sun exposure, tape across the pattern, and worn stickers all eventually cross the line. Fix: reprint. For outdoor use, UV-resistant ink or prints placed out of direct sun last far longer.

8. The code scans, but the destination is dead

If your phone reads the code but lands on an error page, the code is innocent — the link is the problem. Either the URL was mistyped when the code was made, the page has since moved, or (very commonly) the code was a dynamic code from a subscription service that disabled it. That last one deserves its own read: see do QR codes expire? Fix: recreate the code with the correct, current URL — as a static code, so no company can ever switch it off.

9. It's the phone, not the code

Occasionally the code is fine: the camera lens is smudged, the phone is too close to focus (back up to 6–12 inches), the room is too dark, or a very old phone lacks native QR scanning. Fix: wipe the lens, back up, add light. On phones older than about 2017, a free scanner app fills the gap — see how to scan a QR code on any phone.

The 30-second pre-print checklist

Before printing anything in quantity: generate the code, print one copy at final size, put it where it will live, and scan it with a couple of different phones under the real lighting. That single test catches size, contrast, glare, and quiet-zone problems all at once — and it's the difference between finding a problem now and finding it after 500 flyers come back from the printer.

Quick answers

What's the most common reason a QR code won't scan? Size. If the code is under an inch wide or far from the scanner, start there.

My code worked yesterday and died today — why? That's the signature of an expired dynamic code. Remake it as a static code and it can't happen again.

Does color matter? Yes — dark code on light background only. Never invert.

Make a clean, static QR code that scans first time — free →