Why Your QR Code Isn't Scanning (and How to Fix It)

Most QR codes fail to scan for one of a few reasons: not enough contrast between foreground and background, too little quiet zone (the blank margin), the code printed too small, a logo covering too much of the center, inverted (light-on-dark) colors, or a blurry/low-resolution export. Fix the cause below and re-test with two different phones.

A QR code either scans or it doesn't — and when it doesn't, the cause is almost always physical or stylistic, not a bug. Below are the most common reasons codes fail, in rough order of frequency, with the fix for each. You can correct most of them in seconds using the generator on this page, then test the result before you print or publish.

Loading QR Generator...

How It Works

1

Increase contrast

Use a dark foreground on a light background. Low-contrast or similar colors are the #1 cause of failed scans.

2

Keep the quiet zone

Leave a clear margin around the code (roughly 4 modules). Don't crop it tight or place text right against it.

3

Make it big enough and re-test

Print at a sensible size for the scan distance, export high-resolution or SVG, and test with two phones.

Contrast and color

Scanners need a clear difference between the dark modules and the light background. Light-on-dark (inverted) codes, low-contrast color pairs, gradients, or busy background images behind the code all reduce reliability. Keep a genuinely dark foreground on a light background, and if you use color, keep it dark enough to contrast strongly with the background.

Quiet zone and size

The quiet zone is the empty margin around the code; without it scanners struggle to detect the code's boundaries. Keep roughly four modules of clear space on all sides. Size matters too: a rule of thumb is the code should be about 1/10th of the scanning distance — a poster scanned from 2 metres needs a much larger code than a business card scanned from 20 cm.

Logos, density and error correction

A logo that covers too much of the center, or a very dense code (long URL plus high error correction) printed small, will fail. Keep the logo within the safe central area, use High error correction when a logo is present, and shorten long URLs so the pattern stays coarse enough to scan. Always export at high resolution or as SVG so the modules stay crisp.

QR code troubleshooting — cause and fix

The most common reasons a QR code fails to scan and how to resolve each.

ProblemFix
Low contrast / similar colorsUse a dark foreground on a light background
Inverted colors (light on dark)Switch to dark modules on a light background
No quiet zone / cropped too tightLeave ~4 modules of clear margin around the code
Printed or displayed too smallIncrease size for the scan distance (~1/10 of distance)
Logo covers too muchShrink the logo and set error correction to High
Code too dense (long URL)Use a short link; lower error correction if no logo
Blurry / low resolutionExport high-resolution PNG or scalable SVG

Frequently Asked Questions

Why does my QR code scan on one phone but not another?

Usually a borderline case — marginal contrast, slightly too small, or a logo covering a bit too much. Improve the weakest factor (contrast, size, or quiet zone) so the code has more margin for older cameras and different scanning apps.

Can I use any colors for a QR code?

You can use colors, but keep strong contrast — a dark foreground on a light background. Avoid light-on-dark (inverted) codes, low-contrast pairs, and busy backgrounds, since many scanners struggle with them.

Does a longer URL make a QR code harder to scan?

Yes. More data means more modules, so the code is denser and must be printed larger or with more contrast to scan. Use a short link to keep the pattern coarse and reliable.