Skip to content
YAS.SH
QR

QR Codes on Print: Size, Contrast and Error Correction

Design QR that scan reliably on paper, signs and packaging.

mohamed-elsaadouni6 min readqrdesignprint
QR Codes on Print: Size, Contrast and Error Correction
Featured imageQR Codes on Print: Size, Contrast and Error Correction

QR Codes on Print: Size, Contrast and Error Correction

There's nothing more frustrating than a beautifully printed poster with a QR code that won't scan. The code was probably generated correctly — but it wasn't designed for the physical environment. Print is different from a screen: lighting, distance, texture, and ink all fight against the scanner.

This guide covers the four factors that decide whether a printed QR scans: size, contrast, quiet zone, and error correction. Get these right and your codes will work where it matters.

1. Size — big enough for the viewing distance

The #1 reason printed QR codes fail is that they're too small for the distance people scan from. The rule of thumb: a code should be about 1–2 cm for every 10 cm of viewing distance — and much larger on anything viewed from far away.

  • A business card held at ~15 cm can have a small code.
  • A flyer or menu viewed at ~40 cm needs a larger code.
  • A poster or billboard viewed at meters needs a very large code.

The practical test: print it, stand at the real viewing distance, and scan it with your phone. If it doesn't scan, make it bigger. Don't shrink the code to fit a layout — shrink the layout.

2. Contrast — the right ink on the right background

QR codes need high contrast between the dark modules and the light background. Scanners look for dark-on-light.

  • Dark modules on white/light background — ideal.
  • Light modules on a dark background — often fails; if you must, invert carefully and test (some scanners handle it, many don't).
  • Low contrast (grey on grey, colored-on-colored) — fails.
  • Busy backgrounds (photos, patterns) — fail, because the scanner can't find the finder patterns.

Keep the background clean and light around the code, and make the modules a solid dark color. Avoid putting the code over a photo or a patterned area.

3. The quiet zone

Every QR code needs a quiet zone — a border of blank, light space around it, usually 4 modules wide. This is how the scanner knows where the code begins and ends.

A QR placed edge-to-edge with other print, or with graphics touching it, often fails to scan. Add the quiet-zone margin and keep that area clear of any ink or design. If your design software doesn't add it automatically, make sure you include the margin manually.

4. Error correction level

QR codes can survive damage or partial obstruction thanks to error correction. Choose the level based on how likely the code is to be damaged:

  • Level L (7%) — for clean, controlled prints.
  • Level M (15%) — the default for most print.
  • Level Q (25%) — for logos or minor obstructions.
  • Level H (30%) — for packaging, textured surfaces, or codes likely to be scratched, curved, or partly covered.

The trade-off: higher error correction adds more modules, so the code gets denser. On a clean poster, M is plenty. On a shipping box that gets scuffed, use H.

Design extras (that still scan)

You can add a logo to the center of a QR — as long as it stays within the error-correction capacity. Keep the logo under ~20–30% of the code area and in the center (not over the corner finder patterns). With higher error correction, a small logo is safe. Test it.

A practical checklist

  • Code is large enough for the real viewing distance.
  • Dark modules on a clean, light background (high contrast).
  • A 4-module quiet zone around the code, kept clear.
  • Error correction at M (or H for rough surfaces).
  • No busy background or overprinting on the code.
  • Tested at the actual viewing distance on a real print.

The takeaway

A printed QR code is only as good as its physical design. Make it big enough, keep high contrast on a clean background, preserve the quiet zone, and set error correction high enough for the surface. Follow those four rules and test at the real distance, and your codes will scan reliably — whether on a business card or a billboard.

Pair it with a dynamic QR if you'll want to change the destination or measure scans, and keep security in mind if the code points at a URL.

Sizing: the code must survive the surface

The most common print failure is a QR code that is simply too small for the surface and the scanning distance. A code needs enough size that its modules remain resolvable at the distance people actually scan from — a code on a poster scanned from several feet needs to be much larger than one on a business card scanned up close. The reliable approach is to print the code at the intended size, step back to a realistic scanning distance, and test. If the modules are too small or too close together, no setting on a phone will rescue it. Sizing for the physical reality of the surface is the first rule of print design.

Contrast, color, and quiet space

Three visual factors decide scanability more than anything else:

  • Contrast. The code needs strong contrast between its dark modules and the light background. A dark code on a light background is the safe default; low-contrast or light-on-light designs fail. Keep the contrast high even when you add brand colors.
  • Color. You can use brand colors, but preserve the contrast relationship — a dark module on a light background. Avoid background patterns or photographs directly behind the code, which confuse the scanner.
  • Quiet space. Leave a clean margin around the code, roughly the width of four modules, with no text or graphics touching it. This lets the scanner find the code's edges cleanly.

Respecting these three keeps a branded code scannable rather than decorative.

Material and finish: the overlooked failures

The physical medium can break a technically perfect code. Glossy or laminated finishes reflect light and make scanning unreliable; curved or crumpled surfaces (packaging, bottles, fabric) distort the code; ink bleeding on porous materials thickens the modules. Whenever any of these apply, test the actual finished product — a real print on the real material — rather than assuming the on-screen file will work. The QR logo overlay tips cover the related case of branding inside the code, and the same test-first principle applies.

Testing before the large run

The single best practice is to test before committing to volume: print a proof at the real size and material, scan it with a couple of different phones in the real lighting, and confirm it resolves to the right destination. Catching a failure on one proof costs a minute; catching it after a large print run costs the whole batch. Combined with sizing, contrast, and finish, this testing step is what separates QR print that works from QR print that disappoints.

Frequently asked questions

How big should a QR code be when printed?

A common rule is at least 1–2 cm per 10 cm of viewing distance, and bigger on anything viewed from far away (posters, billboards). Test it at the real viewing distance.

What error correction level should I use for print?

Level M (15%) is a good default. Use level H (30%) for damaged or textured surfaces like packaging, where the code is more likely to be partially obscured.

Why won't my printed QR scan?

Usually low contrast, a missing quiet zone, a code too small, or a busy/damaged background. Increase contrast, add the quiet zone margin, and use higher error correction.

Was this helpful? Share
Ask YAS AI
🍪 Cookies & privacy. Essential cookies keep you signed in and remember language and theme. Google AdSense and reCAPTCHA are Google technologies: AdSense runs only after Accept All; reCAPTCHA loads on sign-in and contact forms. See how Google uses data: https://policies.google.com/technologies/partner-sites cookie policy · privacy policy.
Settings