Print has always had one problem that digital never had: nobody knows what happened after the flyer went out. A poster earns a glance, a receipt earns a second look, a packaging insert earns a moment with the product in hand, and none of it shows up in an analytics dashboard. QR codes closed that gap years ago in theory. In practice most printed codes are still static, unmeasured and pointed at a page that will change before the print run is used up.
- Use dynamic QR codes that redirect through a logger so scans are recorded, destinations can be edited, and UTM campaign parameters attached.
- Tag each code with consistent UTMs so scans appear in GA4 and you can compare offline placements with paid search and conversion reports.
- Fire ad pixels at scan time to build audiences for retargeting; name codes by placement, measure completed actions per scan, and respect consent.
This piece is about the other kind: dynamic codes that record every scan, tag the visit for Google Analytics and fire the same ad pixels your website already uses. Set up properly, a window poster becomes a channel you can compare with paid search, and the people who scanned it become an audience you can reach again.
Why only a dynamic code can be measured
A standard QR code stores the destination itself, so the phone goes straight from the print to the page. Nothing in between can count it, and nothing can change it after printing. A dynamic code stores a short redirect instead. Every scan passes through that redirect before reaching the destination, which is what makes three things possible: the scan can be logged, the destination can be edited later, and the visit can carry campaign parameters.
That is the whole difference between a QR code and a dynamic QR code generator. The first gives you an image. The second gives you an editable link with a scan log behind it.
What scan analytics actually tells you
A good scan report records the time of each scan, the device, browser and operating system, and whether the scan came from a first-time or a repeat visitor. Some platforms add country and city estimated from the network, usually on higher plans. Unique and repeat scans matter more than the raw total: a high unique share means the print is reaching new people, a high repeat share means existing customers are coming back to it.
The practical rule is one code per placement, even when every placement opens the same page. Name them plainly: “Window poster”, “Receipt footer”, “Packaging insert”, “Trade show banner”. After a month the report shows which placement earns scans and which one you can stop paying to print. Without separate codes you are measuring the campaign; with them you are measuring the medium.
Getting scans into Google Analytics
Scan logs live in the QR platform. Your conversion data lives in Google Analytics 4. Joining them is a tagging job, not a technical one. A built-in UTM builder adds source, medium and campaign parameters to the destination behind each code, so a scan arrives in GA4 as, for example, source “flyer”, medium “qr”, campaign “autumn-menu”, rather than as untagged direct traffic.
Once the parameters are consistent, every GA4 report you already use works for print: landing page performance, conversion rate by source, assisted conversions. Compare the flyer campaign with the paid search campaign on the same screen, and the offline budget conversation changes from opinion to numbers.
Sending scans to Meta, TikTok and Google Ads pixels
The step most businesses miss is retargeting. A dynamic code platform can fire tracking pixels at the moment of the scan, before the redirect completes, so the scanner is added to your Meta, TikTok or Google Ads audience the same way a website visitor would be. The person who stopped at a shelf label, scanned a product insert or picked up a flyer at an event is now someone you can show a follow-up offer to, and someone you can build a lookalike audience from.
Two rules keep this clean. First, tracking pixels must be used in line with the data-protection and consent requirements of the markets you sell in; the business, not the platform, is responsible for obtaining consent where it is required. Second, do not describe a scanner as a buyer. A scan confirms interest, not a purchase. A person who scans the insert inside a product box is very likely an existing customer, which is exactly why a review request, a reorder page or a warranty registration is the right destination.
A working campaign, placement by placement
Take a small restaurant group launching an autumn menu. The window poster gets code A with a UTM campaign tag and a pixel. The table cards get code B pointing at the PDF menu. The receipt gets code C asking for a Google review. All three are editable, so when the menu changes the PDF is replaced behind code B and no card is reprinted.
After four weeks the report shows the receipt code outperforming the window poster on scans per print, GA4 shows which placement produced bookings, and the Meta audience built from the poster scans is large enough to run a modest retargeting ad for the winter menu. The print budget for the next quarter is decided on that data rather than on habit.
Reading the numbers honestly
Treat a scan as a visit, not a sale. The useful metric is completed actions per scan: bookings, orders, reviews, form submissions. Expect some noise, since link previews and security scanners can register as scans; judge trends and completed actions rather than raw counts. Keep the printed promise and the destination in step, because a code that says “scan for the menu” should still open a menu six months later.
Offline marketing has never lacked reach. It has lacked a feedback loop. A dynamic code with scan analytics, GA4 tagging and pixel support supplies one, and it costs less than a single reprint.







