ScanOrbit 2.0 Live: Unlimited dynamic QR codes with 1-year scan analytics. See Plans →

Guides

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. 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. 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. 3

    Print and wait for scans

    Visits appear in GA4 within a day or so.

  4. 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.