How to Add UTM Parameters to QR Codes (No Dynamic Platform)
You do not need a QR vendor dashboard to know which flyer worked. Put campaign parameters in the URL, encode that full URL, and read the results in your analytics tool.
Key takeaways
- UTMs are query parameters on your destination URL — the QR just carries them.
- Create the tagged URL first, then paste it into the generator.
- Use a unique
utm_content(or unique path) per placement when possible. - Longer URLs make denser codes; shorten paths if scanning gets fragile.
UTM building blocks
| Parameter | Role | Example |
|---|---|---|
utm_source | Where the traffic originates | flyer, packaging, table_tent |
utm_medium | Channel type | print, qr, offline |
utm_campaign | Campaign name | spring_sale_2026 |
utm_content | Creative or placement variant | window_a3, menu_black |
utm_term | Optional detail | rarely needed for print |
Example URLs
Flyer handout:
https://www.example.com/offer
?utm_source=flyer
&utm_medium=print
&utm_campaign=spring_sale_2026
&utm_content=market_street
Restaurant table tent:
https://www.example.com/menu
?utm_source=table_tent
&utm_medium=qr
&utm_campaign=evergreen_menu
Packaging insert:
https://www.example.com/review
?utm_source=packaging
&utm_medium=print
&utm_campaign=post_purchase
&utm_content=insert_v2
Steps
- Decide naming conventions your team will actually keep consistent.
- Build the full HTTPS URL (spreadsheet or a UTM builder is fine).
- Open it once in a browser to confirm the page loads with parameters intact.
- Paste the entire URL into the free QR generator.
- Export a large PNG or SVG; print; scan-test the decoded URL.
- In GA4 (or similar), mark the period and filter by campaign/source.
Paste your UTM link and generate
Create free QR codeNo dynamic platform required. Static code, full URL.
Static QR + UTMs vs dynamic scan stats
Dynamic platforms count scans at the redirect. UTM tracking counts visits and on-site behavior after the scan. For revenue decisions, on-site analytics are often more valuable than a raw scan counter. Background: static vs dynamic.
Density warning
Very long query strings increase QR module density. Mitigations:
- Shorter path names
- Shorter campaign tokens
- Your own short path that 302-redirects to the long UTM URL
- Larger physical print size
Governance tips for teams
- Document allowed
utm_sourcevalues in a shared sheet - Never reuse the same full URL for two different creatives you need to compare
- Archive the exact URL next to the print PDF in your project folder
FAQ
Do UTMs change what the user sees?
Usually no — parameters are for analytics. Your page should ignore unknown params safely.
Can I add UTMs after printing a static code?
Not inside the code. You would need a redirect hop you control in front of the final URL.
Is utm_medium=qr required?
No, but pick one convention and stick to it so reports stay clean.
Create a tracked QR free
Create free QR codeNo login. Generated in your browser. Download as SVG, PNG, or JPG.