QR Tag Generator

Home / Guides / Why a QR code will not scan

QR code not scanning? Nine causes and fixes

Ordered from most to least common. The first three account for the large majority of failures we hear about.

1. It is printed too small#

By far the most frequent cause. A code needs roughly one tenth of the scanning distance: 2 cm to be read at arm’s length, 30 cm on a poster read from three metres. Designers routinely shrink a code to fit a layout and take it below the threshold without realising, because it still scans on the screen they designed it on. The size guide has the working numbers.

2. The quiet zone has been cropped#

The blank margin around a code is part of the specification, not padding. Scanners use it to find where the pattern begins. Four modules wide is the standard, and cropping it to butt the code against a border or photograph is the second most common failure. Every download from this site includes the quiet zone; do not trim it.

3. Too much content is encoded#

The more characters you encode, the more modules the grid needs, and the smaller each one becomes at the same printed size. A 25-character link produces a 25×25 grid; a 300-character link with tracking parameters can need 57×57 or more. At business-card size those modules get close to the resolution limit of both the printer and the camera. Shorten the content, or point at a redirect you control.

4. Contrast is too low, or the code is inverted#

Scanners look for dark modules on a light background. Pale colours on white, dark on dark, or a code laid over a photograph all reduce the contrast the decoder needs. Inverting to light-on-dark breaks many readers outright, even though a handful cope. Black on white is the only combination that never fails.

5. The surface is curved, creased or glossy#

A code wrapped around a bottle or folded through a menu distorts the grid; the decoder can tolerate some of this, but not much. Gloss lamination under a ceiling light reflects straight into the camera. Where the code must live on a curve, keep it small relative to the diameter, and raise error correction so damage can be recovered.

6. Ink spread on absorbent material#

On uncoated stock, cardboard or fabric, ink bleeds outward and dark modules grow into light ones. The effect is invisible at a glance and fatal at small sizes. If you are printing on anything absorbent, size up and get a proof on the actual material rather than on office paper.

7. A logo is covering the wrong part#

Codes tolerate a covered centre because error correction can reconstruct it. What they cannot tolerate is a logo touching any of the three large corner squares — the finder patterns — because those are how a scanner locates and orients the code at all. Keep coverage under about 20% of the area and the corners completely clear.

8. The destination is broken, not the code#

Worth checking before you reprint anything. If the phone scans the code and shows an error page, the encoding worked perfectly and the URL is wrong or the page is down. Read the decoded text back and compare it character for character against what you meant to encode.

9. The scanning app is the problem#

iOS 11 and later and Android 10 and later read codes from the camera app. Older Android handsets need a separate scanner, and some budget cameras have poor autofocus at close range. Before blaming your artwork, try a different phone — ideally the oldest one you can find, since that is the realistic worst case for your audience.

A test that catches nearly everything#

  1. Print the final artwork at the real size, on the real material, not a screenshot on office paper.
  2. Scan it on two phones, one of them at least three years old.
  3. Scan from the distance and in the lighting people will actually use, including at an angle.
  4. Read back what the scan shows and check it matches the content you encoded.

If it fails, work back up this list. Nearly every case is size, quiet zone or content length.