QRelay

Guides → Why isn't my QR code scanning?

Why isn't my QR code scanning?

Codes that scan perfectly on a monitor and fail on paper are the norm, not the exception. These are the causes, roughly in order of how often they're the actual problem.

1. It's too small for the distance

The most common cause by far. A code needs to be roughly one tenth of the distance it's scanned from: 30cm across for a three-metre scan, 2cm for arm's length. Codes sized for a business card do not work on a poster.

2. The quiet zone is crowded

QR codes need a blank margin around them — about four modules' worth — for the scanner to find the edges. Designers routinely crop it off or run a border right up to the code. It looks tidier and it breaks scanning.

3. Contrast is too low

Dark code on a light background, always. Pastel-on-white, white-on-brown kraft, and anything printed on a photograph all cut the contrast the camera needs. Coloured codes can work, but only with real contrast.

4. It's inverted

Light code on a dark background is technically readable and practically unreliable — plenty of phone cameras won't attempt it. If your brand demands a dark background, put the code in a light panel.

5. Gloss, varnish or lamination

Spot UV over a code, a gloss laminate, or a shiny sticker reflects light straight back into the lens. Matte finishes scan; gloss gambles. This is the classic 'works indoors, fails under the shop lights' cause.

6. The URL is too long

Longer text means more modules, which means a denser code that needs to be printed bigger to stay readable. A long URL with tracking parameters can double the density. Short links produce sparse, robust codes — one of the underrated practical benefits of a dynamic code.

7. It's printed across a fold or seam

Folds, box edges, spine creases and shrink-wrap seams distort the grid. Keep the code flat and whole.

8. The surface is curved

Bottles, cans, tubes and cups bend the code away from the camera. Keep codes small on tight curves, or place them on the flattest available panel.

9. Print quality or ink bleed

Low-DPI printing, ink spread on absorbent stock and toner streaks all blur module edges. Always scan a physical proof, not the PDF on screen.

10. Damage, and too little error correction

QR codes tolerate damage — up to about 30% at the highest error correction level. If codes live outdoors or get handled, generate them at high error correction so scratches and scuffs don't kill them. Codes made here use the highest level by default.

Try it

Free static code, no account needed — or sign up for one you can re-point later.

Download PNG  Download SVG

This code is static. Once it's printed, the destination is frozen — a typo or a changed link means reprinting everything. Make it dynamic instead and you can re-point it anytime and count the scans. Free for 2 codes.
Your QR code

Questions

My code works on screen but not when printed. Why?

Almost always size, finish or quiet zone. Screens are backlit, high contrast and perfectly flat — paper is none of those. Test the physical proof.

Does putting a logo in the middle break the code?

Not necessarily. Error correction is designed to tolerate obstruction, but a logo eats into that budget. Keep it small — under about 20% of the area — and always test the result.

Do coloured QR codes scan?

Yes, with sufficient contrast between the code and its background. Dark code on a light background is the safe pattern; light-on-dark is the risky one.

Related