Why flyer QR codes are an underused tool
A flyer with a QR code converts several times better than the same flyer with a printed URL, for one blunt reason: almost nobody types a URL off paper into a phone. The flyer does its job - catches attention, makes the offer - and then the response evaporates at the one step that requires effort. A code removes that step, turning a piece of print into a measurable digital channel rather than a hopeful one.
Flyer marketing in 2026 is more selective and more measurable than it used to be: smaller, targeted drops, with the spend justified by tracked response rather than assumed reach. For a Canadian small business it remains one of the highest-ROI local channels - but only when the code is treated as part of a designed funnel, not a logo dropped in a corner. Most flyers still waste the code by pointing it at a homepage or an untracked URL. The rest of this guide is about not doing that.
What to put on a flyer QR code
The destination is the decision. Match it to the single action you want the flyer to produce:
- A focused landing page about the exact offer on the flyer - never the homepage. See the website QR guide for URL best practice.
- A lead-capture form or pre-addressed email for collecting enquiries straight into your pipeline - the email QR guide covers structured intake.
- An SMS opt-in pre-filled with a keyword for CASL-compliant loyalty or list signup - the SMS QR guide covers the consent flow.
- A booking or reservation page so an interested reader books in the moment instead of meaning to later.
- A one-tap call for service businesses where the next step is a conversation - see the phone QR guide.
- A discount page, demo video, survey, or event map when that is genuinely the next step - including a location code for event flyers.
What not to put on a flyer code
Most failed flyer codes fail here, not in the printing:
- Your homepage with no specific call to action. A scanner who responded to a specific offer lands on a generic site and bounces.
- A page with no conversion intent - information with nothing to do next.
- A destination that needs scrolling, searching, or extra clicks to reach the thing the flyer promised. Flyer scanners are time-boxed.
- Several codes with no obvious primary, which forces a choice and usually gets none scanned.
Design and placement principles
Placement and size decide scan rate before the destination ever matters:
- Position: a high-attention area - commonly bottom-right or top-right - never across a fold line.
- Size: at least 2โ3 cm on A4, 1.5โ2 cm on a postcard, 5โ8 cm on a banner-sized flyer.
- Contrast: dark code on a light background, never over a photo or busy graphic.
- Colour: black on white is most reliable; brand colour is fine only if contrast stays high, and only after a printed test.
- Element order: a clear call to action above the code ("Scan to save 10%"), the code centred, and the short URL plus a phone number as fallback text below.
The fallback text is not optional: a meaningful share of readers will not scan, and a readable short URL beside the code is both their path and the accessibility baseline.
Tracking flyer scan performance
A flyer code you cannot measure is a flyer you cannot improve. Make it measurable from the start:
- UTM parameters: append something like ?utm_source=flyer&utm_medium=print&utm_campaign=q1-2026 and read it in your analytics.
- A distinct URL or tag per distribution: mall drop, door-to-door, and trade-show stacks should not share one URL, or you cannot tell which worked.
- A/B testing: print two flyer versions with different destinations, distribute them evenly, and let the conversion data pick the winner.
- Per-scan analytics: if you need scan counts by time and place rather than just landing visits, that is a dynamic QR feature.
Canadian compliance considerations
Three Canadian frames apply to flyer campaigns, and none of them forbid QR codes - they shape the text and the destination.
Quebec's Law 96: flyers distributed in Quebec must have French markedly predominant or be French-only. The code is exempt as a symbol, but the surrounding copy, the call to action, and ideally the landing page must comply - produce a French version for Quebec distribution rather than relabelling an English one. Guidance is at oqlf.gouv.qc.ca. CASL: any email or SMS list built from a flyer code needs express consent - the customer-initiated scan-and-submit is that consent and its record - and every message must identify your business and carry a working unsubscribe. PIPEDA: contact details collected via the code are personal information; store them securely, use them only for the stated purpose, and make the privacy policy reachable from the landing page.
A worked example: a local gym's January drop
A neighbourhood gym does a January door-to-door flyer drop. The weak version says "New year, new you - visit ourgym.ca" with the URL as text. Almost nobody types it; the gym has no idea if the drop worked and does not repeat it.
The designed version puts one code with "Scan for our $0 joining-fee January offer" above it, pointing at ourgym.ca/january?utm_source=flyer&utm_campaign=jan-doordrop- a single page whose only content is the offer and a short join-now form. The fallback URL and phone number sit below the code. A resident scans it on the porch, lands on a fast page that says exactly what the flyer promised, and books a no-fee signup in under a minute. The gym sees in analytics that the door drop drove three hundred sessions and forty signups, knows its cost per member for that channel, and runs the same play in September with confidence. Same paper, same postage, same offer - the difference in result was entirely in the five decisions around the code: specific landing page, one action, fast mobile page, tracking tag, readable fallback. That is the whole discipline of flyer QR codes, and it is the part most campaigns skip.
Designing the page the code points at
The code is the cheap half of the system; the landing page is where the campaign is actually won or lost, and it is almost always the part that gets the least attention. A scanner arrives with a specific promise in mind from the flyer and a few seconds of patience - the page has to honour both immediately.
- Match the promise word for word. If the flyer said "$0 joining fee in January," the first line of the page is "$0 joining fee in January," not a generic welcome. A mismatch between the flyer's words and the page's words reads as the wrong place and people leave.
- One action, above the fold. The thing you want them to do - book, claim, sign up - is visible without scrolling, on a phone, immediately. Every extra choice or scroll is lost conversions.
- Built mobile-first and fast. Essentially every flyer scan is a phone on cellular, often a weak signal. Test on real mobile data, not desktop Wi-Fi; a heavy desktop-first page wastes the scan the flyer paid for.
- Strip everything else. A flyer landing page is not your website. No full navigation, no unrelated offers, no long story - just the promise, the proof, and the action.
A useful rule: a dedicated flyer landing page should be buildable in a sentence - "the page where someone from the January drop claims the no-fee signup" - and if it cannot be described that simply, it is doing too much to convert a flyer scanner.
Matching the code type to the flyer's goal
"Put a QR code on it" is not a plan - the right code type depends on what you want the reader to do next. Decide the goal first, then pick the code:
- Drive web traffic or claim an offer: a URL code to a focused landing page - the default for awareness and promotion flyers.
- Capture a lead into your pipeline: a form page or a pre-addressed email code with a campaign-tagged subject, so enquiries arrive sorted.
- Build a marketing list: an SMS opt-in code with a keyword - the scan-and-send is the CASL consent record.
- Get a booking or a call: a booking-page URL, or a one-tap phone code for service businesses where the next step is a conversation.
- Get people to an event: a location code for the venue, optionally alongside a URL for tickets or details.
One flyer, one goal, one primary code. If a flyer genuinely has two goals it is usually two flyers, or one with a clear primary code and the secondary relegated to fallback text - never two competing codes that split attention and convert neither.
Common problems and fixes
"Our flyer scans don't convert"
Almost always a landing-page mismatch - the scan reaches a generic page instead of the offer. Send it to a dedicated page with the offer, a clear call to action, and minimal copy, and the conversion usually appears.
"People can't scan it in low light"
Print larger (3โ4 cm minimum on a flyer), raise contrast, and test in the lighting where the flyer is actually read - a porch at dusk, not your desk.
"We get scans but no conversions"
The destination is slow, broken, or confusing on a phone. Walk the full flow on real mobile data; a page that is fine on desktop Wi-Fi can be unusable on a weak cellular signal.
"A thousand scans, five conversions"
The offer or the page is the problem, not the code. The offer may be too weak, the page too complex, or the follow-up too high-friction - the code did its job by delivering the scan.
"Customers get a scam warning"
Use a recognisable domain over HTTPS and avoid throwaway free shorteners, which phones increasingly flag - the warning costs you the visit you paid to print for.
Static or dynamic: which does a flyer code need?
A static code - what this free generator produces - encodes the landing-page URL directly. It works forever with no account; for a campaign with a stable page, or where you reprint per campaign anyway, that is all you need and it is the simpler choice.
A dynamic QR (a paid plan feature) lets the same printed flyers point somewhere new between campaigns without reprinting, supports A/B switching, and reports per-scan analytics by time and place - worth it for high-volume or frequently changing flyer programmes. For a one-off drop with a fixed offer, stay static.