How to Track QR Code Scans in Google Analytics 4
Quick answer
Add UTM parameters to the link inside your QR code (for example ?utm_source=flyer&utm_medium=qr&utm_campaign=spring), then find those visits in GA4 under Reports → Acquisition → Traffic acquisition. Scan analytics in your QR tool show the scans GA4 misses.
Step by step
- 1
Build the tagged link
Add utm_source (where it's printed), utm_medium=qr and utm_campaign. Our free UTM builder does it for you.
- 2
Put the tagged link in a dynamic code
Paste the full URL with UTMs into a website-link code, or fill the UTM fields on Pro.
- 3
Print and wait for scans
Visits appear in GA4 within a day or so.
- 4
Find them in GA4
Reports → Acquisition → Traffic acquisition; set the dimension to Session source / medium and look for flyer / qr.
Why the numbers won't match
GA4 counts a visit only when the page loads, its tag runs and (in many regions) the visitor accepts analytics cookies. A QR scan is counted when the code is opened. Expect more scans than GA4 sessions; the gap is people who left before the page loaded or declined cookies.
Common mistakes
- Different spellings across codes (QR, qr, Qr) split the data: keep UTMs lowercase.
- UTMs on a static code: fine, but you can't fix a typo after printing.
Frequently asked questions
Can I add UTMs on the free plan?
Yes, by pasting a link that already has them into a website-link code. The UTM fields in the editor are a Pro convenience.
Which utm_medium should I use?
Use one value consistently, such as qr, so all QR traffic groups together.