🌙

SajiloQR

Guides & Tutorials

QR Code Printing Best Practices

A QR code that works perfectly on a phone screen can fail completely on a printed poster. Screens are backlit, high-contrast, and never reflect; paper is dimmer, can glare, and gets crumpled. The good news is that printed codes fail for a handful of predictable reasons — size, contrast, quiet zone, and material — and all of them are easy to fix before you spend money on a print run. This is the checklist I use for anything meant to be scanned off paper.

1. Size it for the scanning distance

The further away someone scans from, the bigger the code needs to be. A rough rule that works well: the code's width should be about one-tenth of the scanning distance. So:

When in doubt, go bigger. A large code scans fine from close up; a small code can't be rescued from far away.

2. Use dark on light, always

Black modules on a white (or very light) background is the most reliable combination and the one scanners are calibrated for. Things that quietly break this:

If you want to add colour, keep the modules dark (near-black) and put them on a plain light panel. Brand the card around the code — don't brand the code itself.

3. Respect the quiet zone

Every QR code needs a clear white border at least four modules wide around the entire pattern. Scanners use it to tell where the code ends. The most common print failure I see is text like "SCAN ME" or a logo butting directly against the code's edge. SajiloQR's PNG download already includes the quiet zone — don't crop it off, and don't run design elements into it.

4. Choose the right size in the design, not on export

Export the PNG at full resolution and place it in your design at the target physical size — don't blow up a small image. The QR code's modules need to be sharp squares; upscaling a tiny file makes blurry, fuzzy-edged modules that fail to read. If your layout software asks, print the PNG at 100% or resize it down, never up.

5. Materials and lighting are part of the design

Paper behaves differently depending on where it lives:

6. Test in the real environment, not at your desk

This is non-negotiable, and it's cheap insurance:

7. Keep the destination under your control

Before you print thousands of a code, double-check what it opens — and that it will keep opening. Test the link on a phone, confirm the page isn't going to change, and prefer a URL you own. A static code never expires, but if the page behind it disappears, neither the code nor the print run is worth anything.

The pre-print checklist

  1. Code is at least one-tenth of the scanning distance in width.
  2. Dark modules on a plain light background — no inversion, no busy backdrop.
  3. Quiet zone intact — nothing touches the code's border.
  4. Full-resolution export placed at physical size, never upscaled.
  5. Matte finish, smooth material, flat surface.
  6. Proof printed and scanned in the real environment, at the real distance, at the worst lighting.
  7. Destination verified and stable.

Generate a code with the quiet zone already built in using the SajiloQR generator, and if you'd like to understand the error-correction safety net behind all of this, read how QR codes work.