Zonlet

9 QR code design mistakes that stop people scanning

QR codes are forgiving, but not endlessly. Most codes that fail in the real world fail because of a design choice made to look nicer. These are the mistakes that come up again and again, and how to avoid each one.

QR codes · Published 2026-10-07

1. Not enough contrast

Scanners need a clear difference between dark and light modules. Pale grey on white, or navy on black, can look elegant and still fail. Keep the code dark and the background light, and check it in poor lighting, not only on a bright screen.

2. Inverted colours

A light code on a dark background looks striking, but many older scanners and some camera apps cannot read inverted codes at all. If brand colours force a dark background, place the code inside a light box.

3. No quiet zone

The QR standard expects a clear margin about four modules wide around the code. Designers often crop it to save space or place the code tight against a photo. Without the margin, the scanner cannot find the corners reliably.

4. A logo that is too big

You can place a logo in the middle of a QR code because the code contains spare, redundant data, called error correction. There are four levels: L recovers about 7% of damaged data, M about 15%, Q about 25% and H about 30%.

A logo hides part of the code, so it uses up that spare capacity. With a logo, use level H and keep the logo to roughly 20% of the code's width or less. Never cover the three large squares in the corners, which scanners use to locate the code.

5. Too much data for the size

Long URLs and full contact cards create dense codes with tiny modules. Shorten the link or use an online contact card, and print the code larger if it must hold a lot of information.

6. Printing too small

As a rule of thumb, the code should be about a tenth as wide as the scanning distance, and never below about 2 cm for handheld items. A code on a poster across a room needs to be much larger than one on a card.

7. Blurry or stretched images

Enlarging a small PNG creates soft edges, and stretching a code to fit a space distorts the square grid. Use SVG or PDF for print, or a large PNG scaled down. Always keep the code perfectly square.

8. Curved, shiny or awkward surfaces

Codes on bottles, glossy laminate, or behind reflective glass can be hard to read because of curvature and glare. Use a matte finish where possible, make the code larger on curved items, and test it in the real location.

9. No reason to scan

A code with no label is easy to ignore. Add a short call to action next to it, such as Scan for the menu or Scan to save my contact. People are more willing to scan when they know what they will get.

A quick checklist before you print

  1. Dark code on a light background, with strong contrast.
  2. White margin around all four sides.
  3. Error correction H if there is a logo, and the logo stays small.
  4. Printed at the right size for the scanning distance.
  5. Tested on two or more phones at the final size and material.

Zonlet's QR generator switches to error correction H automatically when you add a logo, adds a quiet zone, and lets you add a caption above or below the code for your call to action.

Make a QR code with a logo

Related guides

All guides