# UTM parameter

> UTM parameters are query-string tags — utm_source, utm_medium, utm_campaign — that let your analytics attribute a visit to a specific campaign. In QR codes they are the standard way to measure scans without any third-party tracker.

Source: https://useqr.app/glossary/utm-parameter · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## The five parameters

`utm_source` (where: `poster`, `packaging`), `utm_medium` (`qr`), `utm_campaign`
(`spring26`), plus optional `utm_term` and `utm_content` for distinguishing variants.

A useful convention for print: `utm_source` identifies the physical placement, `utm_content`
identifies the individual asset, so you can compare the code by the till against the one in
the window.

## The size cost

A full UTM set adds 60–100 characters, which typically pushes a code up two or three
versions. On a small printed code that is the difference between working and not.

Mitigations: keep values short and lowercase-free where possible, put the UTM tags on a
short URL you own, or use a single short `?s=` parameter that your server expands into full
UTM values before redirecting.

## Why this is the privacy-respecting option

UTM tagging is measured entirely in *your* analytics. Nothing about the person scanning is
shared with the QR generator, which is not true of a dynamic-QR provider's dashboard.
