Skip to content

Scanning & Analytics

What is UTM Parameters?

By Codexengr, QR Systems Engineer · Last reviewed: 2026-10-19

The five standard URL query tags (utm_source, utm_medium, utm_campaign, utm_term, utm_content) that attribute QR-driven web traffic to the exact code, placement, and campaign in analytics.

UTM parameters are the five standardized query parameters — utm_source, utm_medium, utm_campaign, utm_term, and utm_content — appended to a URL to tell web analytics exactly where a visit came from. For QR codes, they solve the attribution blind spot: a scan opens a browser like any other visit, and without UTM tags the analytics platform cannot distinguish a poster scan from a Google search. With them, every placement becomes a measurable channel.

The five parameters

utm_source identifies the origin: the specific code or placement, e.g. utm_source=packaging-qr or utm_source=receipt-qr. utm_medium describes the channel — qr is the conventional value, distinguishing scans from email, social, or paid traffic. utm_campaign names the initiative: summer-sale-2026. The optional utm_term and utm_content differentiate variants: utm_content=front-vs-back for A/B testing two placements, or utm_term for the keyword in paid contexts. The convention source/medium/campaign is required for clean reporting; term and content are for granularity.

Why QR codes need them especially

Most traffic sources self-identify: Google passes a referrer, email tools tag automatically. QR scans arrive as direct traffic — no referrer, no context — because the journey starts in the physical world. Without UTM tags, a successful QR campaign is invisible in analytics, indistinguishable from users typing the URL. Tagging is what converts "the website got more traffic" into "the packaging QR drove 4,200 sessions at 3.1% conversion."

Encoding UTMs in QR codes

UTM parameters lengthen the URL, which increases QR density — a full five-parameter tag set can add 80+ characters. The standard solution is to put the tagged URL behind a short link: the QR encodes the short URL (keeping the symbol sparse), and the redirect service appends or forwards the UTM parameters at resolve time. This also keeps the tags editable: change the campaign name without reprinting. When generating tagged URLs, keep values lowercase, use hyphens instead of spaces, and be consistent — Summer_Sale and summer-sale report as two different campaigns.

Hygiene and governance

UTM discipline breaks down without conventions. Maintain a shared taxonomy document: allowed utm_source values per placement, the medium value (qr), and campaign naming rules. Audit periodically for typos and duplicates, because analytics cannot merge them retroactively. Never put personally identifiable information in UTM values — they are logged by analytics platforms and often visible in server logs. And remember that UTMs describe the click, not the person: they attribute the session, which is exactly the right granularity for placement analytics.

Diagram description: A tagged URL with each utm_ parameter labeled and mapped to its analytics report dimension, plus a diagram showing the short link in the QR code expanding to the full tagged URL at redirect time.

Frequently asked questions

What are the five UTM parameters?

utm_source (the specific code/placement), utm_medium (the channel, e.g. qr), utm_campaign (the initiative name), plus optional utm_term and utm_content for variant-level detail like A/B placements.

Why do QR codes need UTM parameters?

Because scans arrive as direct traffic with no referrer — analytics cannot tell a poster scan from someone typing the URL. UTM tags are the only way to attribute visits and conversions to specific codes and placements.

Won’t UTM parameters make my QR code too dense?

They lengthen the URL, yes. Put the tagged URL behind a short link: the QR encodes the short URL (sparse symbol) and the redirect service expands it to the full tagged URL at scan time.

Should UTM values be uppercase or lowercase?

Lowercase, consistently. Analytics treats Summer_Sale and summer-sale as different campaigns and cannot merge them retroactively. Keep a shared naming taxonomy for your team.

Sources

Related terms

Related tools