Why is my QR code not scanning? 9 causes and fixes
A QR code usually fails to scan because it is too small, has low contrast, is missing its quiet zone, is distorted or damaged, or holds too much data at low error correction. Increase the size and contrast, keep a clear margin around it, and test on more than one phone. The nine causes below cover almost every case.
The 9 most common causes
- Too small. Below ~2 cm the camera cannot resolve the modules. See QR code size for printing.
- Low contrast. Light-on-light or pale colours confuse the reader. Keep dark modules on a light background.
- Inverted colours. A light code on a dark background often fails; keep the dark part as the data modules.
- No quiet zone. The empty margin around the code is part of the spec — do not crop it or place text against the edge.
- Too much data. Long URLs create a dense pattern. Use a short link (a dynamic code) to keep it sparse and reliable.
- Low error correction with a logo. A logo covers modules; raise error correction to level H so the code can self-repair.
- Distortion. Stretching the code to a non-square shape breaks it — always keep it square.
- Damaged or curved surface. Wrinkles, folds and tight curves (bottles, cups) bend the pattern out of readability.
- Blur or glare. Low-DPI printing, compression artefacts or reflective lamination scatter the pattern.
Fast fixes
- Print at least 2 × 2 cm, larger for distance — follow the 10:1 distance rule.
- Use true black on white; avoid gradients on the modules themselves if scans are marginal.
- Keep a quiet-zone margin of at least four modules on every side.
- Shorten the destination with a dynamic code so the pattern stays sparse.
- Raise error correction to H when you add a logo or background image.
- Export as vector SVG so it stays crisp at any print size.
Always test before printing
Scan the final artwork with at least two phones (one iPhone, one Android) from the real distance people will use. If it reads instantly every time, it is ready to print. If you use a dynamic code, you can also confirm the redirect points where you expect.
Frequently asked questions
Why does my QR code scan on one phone but not another?
Usually marginal contrast, size or a missing quiet zone. It works on a good camera but fails on a weaker one — fix the underlying issue rather than relying on the better phone.
Can a logo stop a QR code from scanning?
Yes, if it covers too many modules or error correction is low. Keep the logo under ~30% of the area and use error-correction level H.
Does a coloured QR code scan?
Yes, as long as there is strong contrast between the dark modules and the light background. Avoid light-on-light and inverted colours.
What is the smallest a QR code can be?
About 2 × 2 cm for close scanning; larger for distance. Use the 10:1 rule — size at least one-tenth of the scan distance.