# QR Codes for Direct Mail: Track Postcards, Flyers & Mailers

Source: https://ezqr.ca/qr-codes-for-direct-mail
Last modified: 2026-11-02
Description: Direct mail QR code tracking: put a QR code on postcards, flyers, and mailers, measure scans per mailing, add UTM tags, change the offer after the mail drops, and export scan data to CSV.

Put a QR code on every postcard, flyer, mailer, and catalog so you can see how many people responded, when, and roughly where - per mailing. Add UTM tags for your web analytics, change the offer after the mail drops, and export the scan data for your report.

## Why Direct Mail Needs a QR Code

Direct mail has always had a measurement problem. You know how many pieces went out, but unless someone calls a tracked number or types in a promo code, you can't tell who responded or which mailing worked. A QR code closes that gap: the reader points their phone at the postcard, lands on your offer, and you get a countable response from a piece of paper.

It also shortens the path from the mailbox to the action. Nobody types a long web address off a flyer. A scan takes a second, and it can open a booking page, an online order form, a coupon, a menu, or a sign-up form - whatever the mailer is asking people to do.

## Direct Mail QR Code Tracking: What You Can Measure

Direct mail QR code tracking works best with a dynamic code, because the [scan analytics](https://ezqr.ca/track-qr-code-scans) are built in. For each code you see:

- **Total scans and scans over time:** the response curve after the drop - most mail is scanned in the first days after it lands, with a long tail after.
- **Approximate location:** country, region, and city, handy for checking which routes or postal areas responded.
- **Device type, browser, and OS:** so you know your landing page has to work on the phones people actually use.
- **Hour of day:** when people read their mail and act on it.
- **CSV export:** download the scan history for one code or your whole account to put in a spreadsheet or a client report.

A scan is a response, not a sale - one household can scan more than once, and some readers will type your address or call instead. For conversions, pair the scan counts with your own web analytics using UTM tags.

## How to Track Direct Mail With QR Codes

To track direct mail with QR codes, give each thing you want to compare its own code. That might be one code per mailing, one per creative version in an A/B test, one per region or postal route, or one per list you bought:

1. **Decide what you're comparing.** Two postcard designs, three offers, or this month's drop against last month's. Each version gets its own code.
2. **Build the destination with UTM tags.** Add `utm_source=direct-mail`, `utm_medium=postcard`, and a `utm_campaign` for the drop to your landing page address so the visits show up by campaign in Google Analytics or whatever you use.
3. **Create a dynamic code per version.** Create each code in the EZQR dashboard and paste in its tagged link. The tags live in the editable destination, so you can fix a typo in them after printing.
4. **Design and export for print.** Add a caption, your logo, and your colors, then send your printer or mail house a [vector SVG or EPS](https://ezqr.ca/vector-qr-code).
5. **Compare after the drop.** Divide scans by pieces mailed for a scan rate per version, then export the CSV for your report.

## QR Code on Postcards: Size and Placement

A postcard QR code has to compete with the address block, the postage area, and the headline. A few rules keep it scannable and keep it legal for the mail stream:

- **Size:** about 2.5 cm (1") square is a comfortable size on a postcard held in the hand; 2 cm is a practical floor.
- **Stay clear of postal zones:** keep the code out of the address area, the postage or indicia area, and any barcode clear zone. Check Canada Post's (or the USPS's) layout guidelines for your mail format before you finalize artwork.
- **Quiet zone:** a clear margin of about four modules on every side. Don't let the code bleed off the edge or sit on a fold.
- **Put it near the offer:** the code works best next to the call to action - "Scan to book your estimate" beats a code in a corner.
- **Caption it with a reason:** "Scan for 20% off" or "Scan to see the menu" tells people what they'll get.
- **Proof it:** scan a printed proof on the actual card stock - glossy UV coatings can cause glare.

## QR Codes for Mailers, Flyers, and Catalogs

QR codes for mailers work the same way across formats, but each has its own habits:

- **Unaddressed flyers (Canada Post Neighbourhood Mail):** you can't track who got them, so give each route or neighbourhood its own code and compare scans by area.
- **Addressed mail:** one code per list or segment tells you which list is worth buying again.
- **Catalogs:** a code per product or section opens that page of your online store, and the scan counts show which spreads pull.
- **Door hangers and inserts:** codes on take-one cards, bill inserts, and package inserts follow the same rules - one code per placement.
- **Print a run of codes:** the [QR code sheet generator](https://ezqr.ca/qr-code-sheet-generator) lays out codes for sticker sheets if you're adding them to mail you already have.

## Change the Offer After the Mail Drops

Once a mailing is in people's hands, the printed code is fixed - but with an [editable QR code](https://ezqr.ca/editable-qr-codes) the destination isn't. If the offer sells out, the event date moves, or you spot a broken landing page the morning the mail lands, change the destination from your dashboard and every postcard in every mailbox now opens the right page. Postcards also have a long shelf life on the fridge; when the promotion ends, point the code at your next offer instead of an expired page.

You can even change the code type: a code that opened a link can become a [hosted landing page](https://ezqr.ca/qr-code-landing-pages), a multi-link page, or a phone or SMS code.

## What About One Code per Recipient?

Some direct mail platforms print a unique code for every recipient. EZQR doesn't create personalized dynamic codes per recipient - dynamic codes are created one at a time, so they suit tracking per mailing, version, or segment. If you need household-level tracking, a free option is static codes: put a recipient ID in the URL of each row of your mailing list (for example, `?utm_content=12345`), run it through the [bulk QR code generator](https://ezqr.ca/bulk-qr-code-generator), and hand the ZIP of codes to your mail house for variable-data printing. The visits then show up in your own web analytics. Those codes are static, so the addresses can't be changed after printing.

## Why Marketers Use EZQR for Direct Mail

- **Unlimited dynamic codes and scans:** one flat plan, no scan caps, so a big drop doesn't cost more.
- **Editable destinations:** fix or change the offer after the mail lands.
- **Scan data you can export:** CSV per code or for your whole account, available even if you cancel.
- **Retargeting:** send scans to a pixel-tagged landing page with [retargeting QR codes](https://ezqr.ca/retargeting-qr-codes) and run ads to people who scanned.
- **Team access without per-seat fees:** up to 10 members with owner, editor, and viewer roles - give a client view-only access.
- **Free static codes:** static QR codes are free forever, with no watermark and no expiry.

See [EZQR plans and pricing](https://ezqr.ca/pricing), or read more about [QR codes for advertising](https://ezqr.ca/qr-codes-for-advertising).

### Direct Mail QR Tips

- One code per mailing or version
- Add UTM tags to the destination
- Keep it clear of the address block
- Put the code next to the offer
- Caption it with a reason to scan
- Repoint it when the offer ends

## Direct Mail QR Code FAQ

## How does direct mail QR code tracking work?

Give each mailing, creative version, or region its own dynamic QR code. Every scan is counted with the time, approximate location, and device, so you can compare responses per drop and divide scans by pieces mailed for a scan rate. Add UTM tags to the destination so visits also show up by campaign in your web analytics, and export the scan history as a CSV for your report. See how [QR code scan tracking](https://ezqr.ca/track-qr-code-scans) works.

## How do I track direct mail with QR codes and UTM tags?

Add utm_source, utm_medium, and utm_campaign to the landing page address for each mailing - for example utm_source=direct-mail and utm_medium=postcard - and use that tagged address as the code's destination. With an [editable QR code](https://ezqr.ca/editable-qr-codes) the tags live in the destination, so you can correct them after printing. EZQR's scan counts tell you how many people scanned; the UTM tags tell your analytics what they did next.

## Where should a QR code go on a postcard?

Put the postcard QR code next to the offer, with a caption that gives a reason to scan, and keep it clear of the address block, the postage or indicia area, and any barcode clear zone - check Canada Post's or the USPS's layout guidelines for your format. About 2.5 cm (1") square is comfortable on a postcard, with a clear margin around it, and it shouldn't sit on a fold. Export a [vector QR code](https://ezqr.ca/vector-qr-code) for your printer or mail house.

## Can I change a QR code on a mailer after it's been mailed?

Yes, if it's a dynamic code. Change the destination from your dashboard and every mailer already delivered opens the new page - useful when an offer sells out, a date moves, or you find a broken landing page the morning the mail lands. Static codes can't be changed after printing. See [QR codes for advertising](https://ezqr.ca/qr-codes-for-advertising) for more print campaign ideas.

## Can I create a unique QR code for every recipient?

Not as dynamic codes - dynamic codes in EZQR are created one at a time, so they suit tracking per mailing, version, or segment. For household-level tracking, add a recipient ID to the URL on each row of your list, generate static codes with the [bulk QR code generator](https://ezqr.ca/bulk-qr-code-generator), and give the files to your mail house for variable-data printing. The visits show up in your own web analytics; those static codes can't be edited after printing.

---

EZQR: static QR codes are free forever; dynamic QR codes (editable destination, scan analytics) require a plan.
Site summary for agents: https://ezqr.ca/llms.txt - every page in one document: https://ezqr.ca/llms-full.txt
Any page is available as Markdown at its own URL with `Accept: text/markdown`, or by appending `.md` to the path.
