QR Code UTM Tracking: GA4 Setup Guide

QR code UTM tracking guide for GA4. Learn source, medium, campaign, and content naming for posters, flyers, packaging, events, and review QR codes.

Timo Knuth
Timo Knuth
Published February 13, 2026 | Updated May 11, 2026
UTM Parameters concept with QR code and Analytics
Quick Answer

QR code UTM tracking means adding campaign parameters to the destination URL behind a QR code. GA4 can then attribute post-scan sessions and conversions to placements such as flyers, posters, packaging, events, or review cards.

Step-by-Step Guide

  1. Decide what to track (Channel, Asset, Variation).
  2. Create a consistent naming convention (lowercase, underscores).
  3. Build the full URL with UTMs (source, medium, campaign).
  4. Generate a dynamic QR code for that URL.
  5. Test scan to ensure it redirects correctly and UTMs persist.
  6. Monitor 'Traffic acquisition' in GA4 to see results.

UTM Parameters with QR Codes: How to Track Offline Scans in GA4

QR codes are amazing for offline-to-online marketing—but without tracking, you're basically guessing. According to Bitly's 2026 QR Code Statistics, campaigns with proper tracking parameters can see significantly higher engagement and conversion rates by enabling data-driven optimization. That's where UTM parameters with QR codes come in. UTMs are simple tags you add to a URL so that Google Analytics 4 (GA4) can tell you exactly where the traffic came from.

If you run posters, flyers, menus, business cards, packaging inserts, or event banners, UTMs let you answer questions like:

  • Which poster location gets the most scans?
  • Do flyers outperform table tents?
  • Does packaging drive repeat traffic?
  • Which event booth placement brings the best leads?

This guide shows you how to structure UTMs for QR campaigns, avoid common tracking mistakes, and set up clean offline attribution.

What are UTM parameters?

UTM parameters are short pieces of text you add to the end of a URL. They look like this:

?utm_source=poster&utm_medium=print&utm_campaign=brand_launch

The most important UTM fields are:

  • utm_source = where it came from (poster, flyer, packaging, event)
  • utm_medium = the marketing medium (print, offline, qr)
  • utm_campaign = the campaign name (winter_offer_2026)
  • utm_content (optional) = variation (location_a vs location_b)
  • utm_term (optional) = keyword (mostly for paid search, but can be used creatively)

When someone scans the QR code and lands on your site, GA4 captures those UTMs and attributes the session accordingly.

QR UTM naming templates by placement

Start with the physical placement, then keep the naming lowercase and consistent across every code in the campaign.

Placement utm_source utm_medium utm_content
Flyer flyer print distribution_point
Poster poster print location_name
Packaging insert packaging offline product_line
Review card table_card qr service_moment

Why UTMs matter for QR codes

QR scan analytics from a QR tool can tell you scan counts. But UTMs let you track what happens after the scan:

  • page views
  • signups
  • purchases
  • form submissions
  • time on site
  • conversion rate

That means UTMs + GA4 is how you measure real ROI.

For the QR-side view, use QR code tracking. For placement interpretation and campaign reporting, use QR code analytics.

The best setup: Trackable QR code + UTM URL

Here's the cleanest, most scalable method:

  1. Create a landing page URL (destination)
  2. Add UTMs to that URL
  3. Put that full URL behind a dynamic/trackable QR code
  4. Monitor performance in GA4 + your QR dashboard

Internal link: Trackable QR Codes.

Why dynamic matters: if you ever change your campaign or page structure, you can update the destination later without reprinting.

Step-by-step: Add UTMs to a QR code

Step 1: Decide what you want to track

Before writing UTMs, define the campaign structure. For example:

  • Channel: offline QR
  • Assets: posters, flyers, menus
  • Variations: 3 locations

Step 2: Create a UTM naming convention

Consistency is everything. Use lowercase and underscores.

Example convention:

  • utm_source = poster / flyer / menu / packaging / event
  • utm_medium = qr / offline / print
  • utm_campaign = spring_promo_2026
  • utm_content = location_cafe / location_gym / location_uni

Step 3: Build your URL

Base URL example:
https://yourdomain.com/offer

With UTMs:
https://yourdomain.com/offer?utm_source=poster&utm_medium=print&utm_campaign=spring_promo_2026&utm_content=location_cafe

Step 4: Generate the QR code using the UTM URL

Paste the full UTM URL into your QR generator (preferably dynamic + trackable).

Step 5: Test it

Scan with two devices and confirm:

  • the page loads fast
  • GA4 is tracking sessions
  • UTMs appear in GA4

UTM templates for common QR campaigns

Use these as copy/paste templates:

Poster template

?utm_source=poster&utm_medium=print&utm_campaign=campaign_name&utm_content=location_name

Flyer template

?utm_source=flyer&utm_medium=print&utm_campaign=campaign_name&utm_content=distribution_point

Packaging insert

?utm_source=packaging&utm_medium=offline&utm_campaign=campaign_name&utm_content=product_line

Event booth

?utm_source=event&utm_medium=offline&utm_campaign=campaign_name&utm_content=booth_banner

How to view QR UTMs in GA4

In GA4, you typically check:

  • Traffic acquisition → Sessions by source/medium
  • User acquisition → New users by source/medium
  • Campaigns reports (if enabled) → Campaign, source, medium
  • Explorations → build a custom report including conversions

Pro tip: define a conversion event for your key action (signup, lead form, purchase). That way you can compare conversion rate per QR placement.

Internal link: QR code analytics.

Common mistakes (avoid these)

  • Inconsistent naming ("Poster" vs "poster" vs "POSTER")
  • Using spaces (use underscores)
  • Forgetting to separate variations (no utm_content = no learning)
  • Pointing to slow pages (QR traffic is impatient)
  • Using static QR for campaigns that evolve

Advanced: Routing QR traffic through a campaign page

If you want deeper control, route all QR scans to a campaign landing page first. That page can:

  • detect device language (DE/EN)
  • offer multiple buttons (Spotify, WhatsApp, pricing, etc.)
  • A/B test headlines
  • improve conversion

Your QR stays the same, but you optimize the page over time.

Wrap-up

Using UTM parameters with QR codes is the fastest way to turn offline marketing into measurable performance. Combine UTMs with dynamic QR codes and GA4 conversions, and you can optimize QR placements like a real paid campaign.

Frequently Asked Questions

Should I create separate QR codes or only change utm_content?
Use separate QR codes when you need QR dashboard reporting by placement. Use utm_content when GA4 attribution is enough or when variations share one managed QR route.
What UTM source should QR codes use?
Use the physical source when it matters, such as flyer, poster, receipt, packaging, menu, booth, or table_card. Keep the naming lowercase and consistent.
Can I use UTMs with dynamic QR codes?
Yes. The cleanest setup is a dynamic QR code whose destination includes UTMs, so QR Master tracks scans and GA4 tracks post-scan behavior.
What UTMs should I use for QR codes?
At minimum: utm_source, utm_medium, utm_campaign. Add utm_content for placements.
Do UTMs work if the QR goes directly to a website?
Yes—GA4 captures them on landing.
How do I track different poster locations?
Use utm_content=location_name or create separate QR codes per location.
Should I use "print" or "qr" as utm_medium?
Either works—pick one and stay consistent across all campaigns.
What's the best GA4 report for QR UTMs?
Traffic acquisition and Campaign reports (plus conversions for ROI).

Sources & References

  1. Bitly: 30+ QR Code Statistics for 2026(accessed January 2026)
  2. Google Analytics: Campaign Attribution Guide(accessed January 2026)
  3. QR Code Tiger: QR Analytics & Tracking Best Practices(accessed January 2026)