Why Is My QR Code Not Working? 9 Reasons and How to Fix Them

All QR Codes·

Introduction

A QR code that won't scan is frustrating — especially after it's printed on hundreds of flyers or a storefront window. The good news: almost every scanning problem comes down to one of a handful of fixable causes. Here are the nine most common reasons a QR code fails, and exactly how to fix each.

1. Not enough contrast

Cameras read QR codes by the difference between dark and light modules. A light-colored code on a light background — or an inverted, light-on-dark code — often won't scan. Keep the foreground dark and the background light, with strong contrast. Our free QR code generator keeps contrast safe automatically.

2. The code is too small

If a code is printed too small for the scanning distance, cameras can't resolve the modules. A rough rule: the code should be at least one-tenth of the scanning distance. For a poster read from 2 metres away, print it at least 20 cm wide. See our step-by-step guide for sizing tips.

3. A logo that's too big

Adding a logo is great for branding, but covering too much of the code destroys the data it needs to scan. Keep the logo under about 20–30% of the code's area and rely on error correction. Learn how in adding a logo safely.

4. Missing quiet zone

QR codes need a clear margin — the "quiet zone" — of empty space around them, about four modules wide. If text or graphics crowd the code, scanners struggle to find it. Always leave breathing room.

5. Low print quality or damage

Blurry printing, low-resolution images, smudges, folds or reflective lamination can all break a scan. Export a high-resolution PNG or a vector SVG/PDF/EPS for print, and avoid glossy surfaces that cause glare.

6. Distortion or stretching

QR codes must stay square. Stretching a code to fit a layout warps the modules and stops it scanning. Always scale it proportionally.

7. The link is broken or expired

The code may scan fine — but the destination is dead. If you used a link shortener or a dynamic code that expired, it opens an error page. Test the destination itself, and for content that changes, use a dynamic QR code you can edit.

8. Busy colors or gradients

Heavy gradients, patterned fills or colors with similar brightness confuse scanners. Solid, high-contrast colors are safest.

9. Old scanner apps

Most modern phones scan straight from the native camera. A few very old Androids need a dedicated QR app. If one phone fails, test with another before assuming the code is broken.

Still not working?

Regenerate the code cleanly with strong contrast, adequate size and a modest logo, then scan-test it with two phones before printing. Create a fresh QR code or browse all QR code generators to get started.

Make your QR code now

Free, with your logo and colors. No sign-up required.