QR code tracking can help connect a poster, leaflet or product insert with activity on your website. The basic workflow is straightforward: build a tagged destination URL, encode that exact URL into a QR code, and check that your analytics setup receives the expected campaign details.
The important work happens before printing. A missing placement label or a redirect that drops the query string can leave several different materials looking identical in your reports. These five checks show how to prepare useful links with the Our Daily Tools UTM Link Builder and test the complete journey.
How QR code tracking with UTM parameters works
A QR code can encode a website address containing campaign parameters. When someone opens that address and the site collects analytics, the parameters provide campaign context. Google’s campaign URL documentation explains using tagged destination URLs to identify referring campaigns.
Our UTM builder creates the tagged link. It does not create the QR image or provide a scan dashboard. After building the URL, use your QR creation software to encode it, then test the printed or displayed code.
For the field definitions, start with our guide to UTM source, medium and campaign. The examples below focus on distinguishing physical placements.
1. Choose a destination that completes the intended task
Suppose you are promoting an open day. Someone scanning a reception poster should reach the event information or registration page, rather than a homepage that requires another search.
Use a destination such as https://example.com/open-day. Confirm the page works on a phone, the registration form can be completed, and the intended confirmation is measurable. These checks matter because campaign labels cannot repair a confusing destination.
Decide what success means before choosing report columns. For an open day, it might be a completed registration. For a product insert, it might be opening a setup guide. Avoid treating every visit as a completed business outcome.
2. Give each placement a useful label
Imagine the same event uses a reception poster and a leaflet handed out in meeting rooms. Keep the initiative grouped under one campaign while giving each placement its own content value.
| Parameter | Reception poster | Meeting-room leaflet |
|---|---|---|
| utm_source | event_print | event_print |
| utm_medium | qr | qr |
| utm_campaign | autumn_open_day | autumn_open_day |
| utm_content | reception_poster | meeting_room_leaflet |
These are example naming choices, rather than mandatory Google values. Agree on your vocabulary before production. Here, qr is a custom medium describing the route into the site; it does not guarantee a particular default channel classification.
If every QR code contains exactly the same URL, the link itself provides no way to distinguish those two placements. Keep a small register connecting each artwork filename, tagged URL and placement name.
3. Build the full URL before creating the QR image
Enter the landing page, source, medium and campaign into the UTM builder, then add the content value. For the reception poster, the result should contain the following information:
https://example.com/open-day?utm_source=event_print&utm_medium=qr&utm_campaign=autumn_open_day&utm_content=reception_poster
The builder includes a Force lowercase option. Keeping campaign values consistent helps avoid splitting labels such as Reception_Poster and reception_poster into separate values. Check the completed link, especially when starting from a destination that already has query parameters.
Copy the complete result into the QR creation software. Encoding only the original landing-page address leaves out the campaign labels. If you use a short or redirecting URL, verify that opening it ultimately reaches the destination with the intended tagging intact.
Use placement or creative labels in the URL. Keep names, email addresses and other personal information out of campaign values: the tagged address is visible to anyone who obtains it.
4. Test the code and the analytics separately
First test the physical journey. Scan the actual artwork at its intended size, open the detected address and confirm the correct page appears. Test from more than one phone when possible, especially if the code sits on a reflective surface or a screen.
Then test measurement. Open the tagged destination in a fresh browser context, follow the site’s consent choices, and inspect the campaign data your analytics setup collects. A page loading successfully is different from a verified analytics event being recorded.
In GA4, use dimensions with a scope appropriate to the question. Google’s manual-tagging reference maps utm_content to manual ad content dimensions, including Session manual ad content. Do not assume every report exposes a column literally called utm_content.
Record the expected labels alongside your test result. If the visit appears without them, check the encoded URL and any redirects before changing the naming scheme. Keep test activity identifiable so it does not become evidence of real campaign performance.
5. Compare website outcomes without calling every visit a scan
A phone camera reading a QR code does not necessarily lead to a website visit. Someone can view the suggested address and close the camera. Likewise, an opened page may not produce a measurable analytics visit if collection does not occur.
For that reason, UTM-based QR code analytics measures the website activity that your implementation collects with those campaign labels. It is not a direct count of all camera detections. If your QR provider also reports scans or redirect requests, review its metric definition before comparing its total with GA4.
Labels can also travel. If someone forwards the tagged link to a friend, subsequent measured visits can retain the original placement value. Describe a report as activity associated with the tagged URL, rather than proof that every visitor personally stood beside the poster.
Compare the two placements using the same date range, measurement definitions and registration event. Report the collected visits and completed registrations together; a high visit count alone does not establish that a placement achieved its purpose.
Pre-print checklist
- The destination opens correctly on mobile.
- Each placement has the intended tagged URL.
- The QR image encodes the complete link.
- Redirects preserve the required campaign details.
- The analytics test shows the expected labels and intended outcome.
- The artwork-to-URL register is saved for reporting.
Frequently asked questions
Can a static QR code support tracking?
Yes. A static code can encode a tagged URL that leads to a measured website. UTM tracking does not require the QR image itself to change.
Can I track QR code scans using only UTM parameters?
UTM parameters identify campaign context for collected website activity. They do not independently count every camera scan. Use metric names that match what your analytics or QR provider actually records.
Should every poster use a different campaign name?
Not necessarily. Keep one campaign name when the posters belong to the same initiative, and use distinct content values for the placements you want to compare.
Does the UTM Link Builder generate QR codes?
No. It builds the tagged destination address. Create the QR image from that address in your chosen QR software, then test the finished result before printing.