How to print a QR code that scans

A code that scans on your monitor can still fail on a menu, a poster or a sticker. These are the checks that make the difference, in the order you’ll need them.

1. Keep the content short

Every character you add makes the pattern denser, and a denser pattern means smaller squares at the same print size. Before you think about size or colour, shorten what goes in the code:

  • Use the shortest version of your link. https://example.com/menu beats a long address full of tracking parameters.
  • For contact cards, include only the fields people need: name, phone, email, website.
  • If you need to track where scans come from, a few short UTM tags are fine. A long string of them is not.

The QR code generator shows the grid size and the smallest safe print size as you type, so you can see the effect of each change.

2. Pick a size for the scanning distance

A common rule of thumb is that a QR code can be scanned from about ten times its width. That gives these rough starting points:

  • Business card or label held in the hand: at least 2 cm (0.8 in) wide, 2.5 cm for a full contact card.
  • Table card or menu, read from a seat: 3 to 4 cm.
  • A4 or letter poster on a wall: 8 to 10 cm, so people can scan from a step or two away.
  • Window sign or banner seen from across a room or street: scale up with the distance. Ten times the width is a starting point; test from where people will actually stand.

Denser codes need more than these numbers. If your code has a long link or a logo, go bigger.

3. Keep strong contrast

Scanners look for the difference between dark and light. The safest choice is a very dark code on a white or very light background.

  • Brand colours are fine for the code as long as they are dark. Navy, dark green, dark purple and deep red usually work. Yellow, light grey, pastel and light orange usually don’t.
  • Don’t invert the colours. Light modules on a dark background fail on some phones and scanning apps.
  • Don’t place the code over a photo or pattern. Put it on a solid light panel instead.
  • Gradients are risky. If you use one, keep both ends dark.

4. Leave the quiet zone

The empty margin around the code is part of the code. The QR standard asks for four modules of clear space on every side. Designers often crop it to make the layout tidier, and then the code fails when it sits next to text or a border. If the layout is tight, keep at least two modules clear, and test carefully.

5. Use the right file

  • SVG is a vector file. It stays sharp at any size, from a sticker to a banner, and it is what print shops and design tools prefer. Use it whenever you can. Get one from the SVG QR code generator.
  • PNG is fine for documents and online print services if it is large enough. For print at 300 dots per inch, a 3 cm code needs about 350 pixels and a 10 cm code needs about 1,200. Download 1024 px or larger and let the layout scale it down, never up.
  • JPG works, but compression can blur the edges of the modules. Prefer PNG or SVG.

Never stretch a code in one direction only. Scale it proportionally.

6. Think about the surface

  • Gloss: shiny lamination and glossy paper reflect light into the camera. Matte finishes scan more reliably, especially under bright ceiling lights.
  • Curves: codes on bottles, cups and tubes are photographed on a bend. Keep the code small relative to the curve, or put it on a flat part such as a label or lid.
  • Outdoors: sun fades ink over time. Use outdoor-rated materials, and check old signs now and then.
  • Fabric and embroidery: thread loses fine detail. Use a short link and print or stitch the code large.
  • 3D printing: print the code in a dark colour on a light base. The 3D QR code generator makes two-colour STL files for this.

7. Tell people what they get

A code on its own gives no reason to scan. A few words next to it help: “Scan for the menu”, “Scan to join our Wi‑Fi”, “Scan to save my contact”. It also helps to print the web address in small text under the code, so people without a working camera can still get there, and so they can see the code goes where it says.

8. Test the real thing

Testing on your screen isn’t enough. Before a full print run:

  1. Print one copy at the final size, on the final material if you can.
  2. Scan it with at least two phones, ideally one iPhone and one Android, using the built-in camera app.
  3. Scan from the distance and angle people will actually use, in the light where it will hang.
  4. Check that it opens the right page, and that the page works well on a phone.

If it struggles, the fix is almost always one of: print it bigger, shorten the content, increase the contrast, or add more margin.

Quick checklist

  • Short content
  • Big enough for the scanning distance
  • Dark code on a light, plain background
  • Clear margin on all sides
  • SVG, or a large PNG
  • Matte, flat surface where possible
  • A short call to action next to it
  • Tested on paper with two phones
Buy me a coffee