Resources · Updated 2026-10-16

QR Codes on Print Ads: How to Do It Right

Short answer

QR codes on print ads work when the code is big enough for the distance people read it from, has a clear blank border, and leads to a page made for that ad. Use a dynamic QR so you can change the destination, add UTM tags so scans show up in analytics, print a short URL beside it, and test the printed piece with several phones.

Key points

  • Size the code for the reading distance: arm's length for a table card, much bigger for a sign.
  • Keep a blank quiet zone around the code; crowding it with design breaks scans.
  • Dynamic QR codes let you change the destination and count scans after printing.
  • Send scans to a page that matches the ad's offer, not your homepage.
  • Test the real printed piece, in real light, with several phones.

Size the QR code for the reading distance

The farther away the reader, the bigger the code needs to be. A code on a business card can be small. A code on a yard sign read from the sidewalk has to be many times larger.

For a table card read at arm's length, like a napkin dispenser ad, aim for at least about an inch on each side, and larger if the design allows. Shorter URLs make simpler codes with fewer, bigger squares, which scan faster at the same printed size.

Put the code where a seated person can point a phone at it without tilting the card or reaching across the table. On a landscape card, a corner usually works.

Leave a clear quiet zone around the code

Scanners need a blank margin around the code to find its edges. The QR standard calls for a border four modules wide, a module being one of the small squares.

Designers often crowd that space with text, photos or a colored background. Don't. Keep the quiet zone plain and light, and keep the code itself dark on light. Reversed codes, light on dark, fail on some phones.

  • Dark code on a white or very light background.
  • No text, borders or images inside the quiet zone.
  • No placing the code over a photo or a gradient.
  • Avoid thin glossy coatings that glare under restaurant lighting.

Pick the right error correction level

QR codes carry repeated data so they still scan when part is damaged or covered. There are four levels: L, M, Q and H, from least to most redundancy.

Higher levels make the code denser, which needs more printed size to scan reliably. For most print ads, M is a sensible default. Use Q or H if the code will get scuffed, sit behind clear plastic, or carry a small logo in the middle.

Some people won't scan a code, and some phones won't read it in dim light. Print a short, readable web address next to it, such as yourbusiness.com/table. That doubles as a tracking source, since nobody types that address unless they saw the ad.

Keep it short and easy to say aloud. Avoid characters that look alike, like a capital I and a lowercase l, and skip the https and www.

Send scans to a page built for the ad

A scan that lands on your homepage makes the person hunt for the offer. Most won't. Build a simple page that repeats the ad's headline and offer and makes the next step obvious.

  • Same headline and offer as the printed piece, so they know they're in the right place.
  • A tap-to-call button at the top, since most scans come from phones.
  • A short form or booking link for people who'd rather not call.
  • Your address and service area, so locals can confirm you're nearby.
  • Fast loading on mobile data, because a slow page loses people at the table.

Use dynamic QR codes and UTM tags to track scans

A static QR code has the web address baked in. If the page moves, every printed piece is dead. A dynamic QR code points to a short redirect you control, so you can change the destination later and see scan counts by day and location.

Add UTM tags to the destination address, for example source set to napkin-ad and campaign set to the restaurant group or season. Then scans show up as their own line in Google Analytics instead of blending into direct traffic. Use a different code for each placement you want to compare.

Test the printed piece before the full run

A code that scans on your monitor can fail on paper. Ink spreads, card stock reflects light, and the clear window on a dispenser adds glare.

Print a proof at actual size and test it with at least a few phones, iPhone and Android, old and new, with the built-in camera rather than a scanner app. Test in the kind of light it will live in: a dim dinner room, a sunny patio. If it hesitates, make it bigger, raise the contrast or shorten the URL.

Frequently asked questions

How big should a QR code be on a print ad?

It depends on how far away people read it. For a table card or flyer read at arm's length, aim for at least about an inch on each side, larger if the design allows. Signs read from across a room or a sidewalk need far bigger codes. Always test the printed size with real phones.

What is a QR code quiet zone?

The quiet zone is the blank margin around a QR code that scanners use to find its edges. The standard calls for a border four modules wide, a module being one small square of the code. Text, images or colored backgrounds inside that margin can stop the code from scanning.

Should I use a static or dynamic QR code for print?

Use a dynamic QR code for anything printed in quantity. It points to a redirect you control, so you can change the destination if your page moves and count scans over time. A static code can never be changed once printed, which is risky for ads that stay out for months.

How do I track scans from a printed QR code?

Use a dynamic QR code with its own scan reporting, and add UTM tags to the destination address so visits appear as a separate source in your analytics. Give each placement its own code, and pair it with a short URL or offer code that appears nowhere else.

Open spots

See which restaurants near you are open in your category

One advertiser per category per restaurant. We reply within one business day with what's open.

CallCheck availability