scanbam
← Blog

QR codes on direct mail: what gets a postcard scanned, and how to know which list worked

A postcard gets a few seconds between the mailbox and the recycling bin. What the code needs to say, where it should lead, and how to split codes so the results tell you something.

A postcard gets looked at somewhere between the mailbox and the recycling bin. A few seconds, standing in the kitchen, keys still in hand. A QR code on direct mail has to earn its scan in that window, and most of them do not, for reasons that have nothing to do with the code.

There are three usual culprits. The code has no reason attached to it. It opens the homepage. And every mailer in the drop carries the same code, so when the campaign ends, nobody can say which list, region or design did the work.

All three are fixable before the file goes to the printer.

Say what the scan gets them, in bigger type than the code

A bare code on a postcard is a question. Is it a website? A survey? A sign-up for more mail? Nobody holding their groceries is going to find out.

Put one line next to it that names the outcome. "Scan for 20% off your first order." "Scan to book a free measurement." "Scan to see this month's menu." What they do, and what they get for doing it.

Make that line at least as large as your main headline, not a caption in 8-point type under the code. The line sells the scan. The code only carries it out.

Send it to a page built for this mailer

The homepage is the wrong destination. The person scanning just read a specific offer, and the homepage makes them find it again on a phone screen.

Build, or borrow, a page that does one thing:

  • repeats the headline from the postcard, so they know they landed in the right place

  • shows the offer above the fold on a phone

  • has one button, and that button does what the postcard promised

If you are giving a discount, put the code on the page, or better, apply it automatically. Asking someone to copy a code from a postcard into a checkout field loses a surprising number of them.

One code per list, region or version

This is where direct mail becomes measurable, and it costs nothing.

If you print one code for the whole drop, you learn one number. If you print a different code for each segment, each segment reports on itself. The code does not have to track anything. It just has to be different.

Split byWhat changes in each codeWhat you learn
Region or ZIP codeA different page address per regionWhich areas respond
List sourceA different address per purchased or owned listWhich list was worth the money
Design versionA different address per creativeWhich card got the scans
Drop dateA different address per waveWhether the second mailing added anything
Ways to split direct mail codes

The simplest version is a short address on your own website per segment, all redirecting to the same landing page: yoursite.com/north, yoursite.com/south. Your website stats separate the visits, and you can change where each address points without reprinting, which is the middle path from our static vs dynamic guide. For offers that end in a message rather than a page, an SMS code with a different keyword per segment does the same job, and we walked through that in how to know which poster worked.

Keep the segments few. Four versions teach you something. Forty split a small mailing into numbers too small to mean anything.

What about a unique code for every recipient?

Possible, and genuinely useful at scale. Each mailer gets its own code with its own address, so a scan tells you exactly which household responded.

It is also a different job. Per-recipient codes are variable data printing. Your print shop generates the codes from the mailing list during the run, and the pages behind them need a system that can handle thousands of addresses. Our generator makes one code at a time, which is right for splitting a campaign into a handful of segments and wrong for 10,000 personal codes. If that is what you need, ask the printer whether their variable data workflow can create them.

Where the code goes on the mailer

Put it where the eye lands after the headline, on the side that carries the offer. On a postcard that is usually the message side, not the address side.

Keep it away from anything that gets cut, folded or torn off. A code across a fold does not scan, and a code on a detachable reply card is gone the moment the card is. Keep at least a few millimeters between the code and the trim edge, because cutting is never perfectly accurate.

A postcard is read at arm's length, so a short link at 2.5 cm is a safe floor. If your landing page address is long, the code gets denser and needs more room. The numbers are in our guide to minimum QR code size for print. If the design is in brand colors, check which QR code colors actually scan before you approve the proof.

Test the whole path before the drop

Print one card on the real stock. Scan it on an older phone, in kitchen lighting, from where a person would stand. Follow the page all the way to the finished action: the booking, the checkout, the form.

Then do it again for every segment. A typo in one of four addresses means a quarter of your mailing goes to a 404, and you will not see it in the numbers until the campaign is over.

And keep every address alive after the campaign ends, because postcards sit on fridges for months. A dead link is the most common reason people think QR codes expire.

Free, no account

One code per segment, in about a minute each.

Make a code for each list, region or version, print-ready as SVG, PNG and PDF. Free, no watermark, no expiry.

Open the generator

Questions people ask

Where should a QR code go on a postcard?

On the side with the offer, near the headline, with a line next to it saying what the scan gets them. Keep it off folds, perforations and detachable reply cards, and a few millimeters away from the trim edge.

How big should a QR code be on direct mail?

Mailers are read at arm's length, so about 2.5 cm (1 inch) is a safe floor for a short link. Longer addresses make the code denser, so give those more room.

Can I track which recipient scanned my mailer?

Only with a unique code per recipient, which is variable data printing done by your print shop. For most campaigns, one code per list or region is enough to learn what worked, and it needs no tracking system at all.