Analytics-ready links
UTM parameters are tags added to the end of a URL. When someone scans the code and the page loads, analytics may use those tags to group the visit by source, medium, campaign, or placement.
This can help you compare static QR campaigns without sending scans through a QR provider’s redirect service. It measures visits that reach the page, not every scan; analytics settings or blockers may also prevent a visit from being recorded.
Set naming rules before printing. Create a different tagged URL for each placement you want to compare, test it, and save it with the QR file and campaign details.
UTM QR codes Generator
A practical guide to UTM QR codes, with checks to make before you create, share or scan a QR code. Static QR code.
Key decisions
Use a consistent source
Set utm_source to a clear value such as qr, poster, packaging, or menu depending on your reporting model.
Name the placement
Use utm_content for variants such as front_door, table_tent, invoice, or event_badge.
Keep destination pages mobile-ready
People usually scan with a phone. Make the landing page quick to load and easy to use on a small screen.
Separate scans from sessions
UTM reports describe visits to the tagged page, not scans. Scans that do not open the page, or visits where analytics is blocked, may not appear.
UTM field planning
| Field | Example | Purpose |
|---|---|---|
| utm_source | qr | Groups visits as QR traffic |
| utm_medium | offline | Separates print and physical media from email or paid ads |
| utm_content | window_poster | Compares placements inside the same campaign |
| utm_campaign | spring_menu_launch | Groups every placement, format, and landing-page variant under one campaign name |
| utm_term | optional_audience_or_offer | Use sparingly for offline audience, offer, or keyword notes when your analytics model needs it |
| Placement ID | qr-table-12 or pack-insert-a | Keeps physical artwork, QR file, and analytics row traceable after launch |
Plan UTM names before generating QR codes
Consistent naming is what makes campaign reports usable after a menu, poster, package, receipt, or event badge is already in the world.
Create one naming convention
Decide whether QR traffic uses utm_source=qr, utm_medium=offline, placement-specific utm_content values, and lowercase campaign names before generating the first asset.
Use one code per measurable placement
Separate table tents, storefront posters, packaging inserts, invoices, appointment cards, and event badges when you need to compare their performance later.
Document the final URL
Save the full tagged URL, QR filename, artwork location, physical placement, owner, date, and fallback URL so future teams know what was printed.
Measure what UTM QR codes can actually prove
UTM tags give strong first-party website campaign data, but they are not the same thing as provider-side scan analytics.
Website sessions and conversions
Analytics tools can report visits, engaged sessions, form submissions, purchases, bookings, or calls that happen after the tagged landing page loads.
No pre-load scan count
A static QR code cannot count a scan before the destination loads. Use a dynamic QR provider only when pre-load scan counts or editable redirects are required.
Privacy-aware campaign data
Avoid adding personal data, customer names, account IDs, or sensitive order details into UTM parameters because URLs can appear in logs and analytics exports.
Prepare UTM QR assets for production
Tagged URLs can become long and dense, so production proofing matters as much as analytics planning.
Use controlled short links carefully
A redirect URL you control can reduce QR density and preserve future flexibility, but test the redirect chain and avoid unmanaged public shorteners for permanent print.
Proof the final artwork
Scan the printed proof and confirm the analytics platform receives the intended source, medium, campaign, and content values.
Keep placement files separate
Name exported SVG, PDF, EPS, PNG, or WebP files after their placement ID so teams do not accidentally print the wrong campaign variant.
UTM QR campaign checklist
- Use one QR code per placement when you need placement-level reporting.
- Keep campaign names lowercase and consistent across channels.
- Test the final URL before generating and after scanning.
- Do not use UTM parameters for sensitive personal data.
- Agree source, medium, campaign, and content naming before artwork is produced.
- Use a redirect URL you control if a printed campaign may need destination changes later.
- Scan one physical proof and confirm the analytics event or session appears with the expected UTM values.
- Archive the tagged URL, QR export, placement ID, artwork file, and campaign owner together.
Create a tracked QR campaign in three steps
- 1
Build the tagged URL
Choose campaign, source, medium, and content values using a consistent naming convention that your analytics team will recognize.
- 2
Generate the QR code
Encode the final tagged URL or a controlled redirect URL, then export the format required for the placement and production workflow.
- 3
Verify analytics and scan quality
Scan the final proof, confirm the landing page loads on mobile, and check that analytics records the expected UTM values.
Frequently asked questions
Do UTM parameters track QR scans?
They track website visits after a scan reaches your tagged URL. They do not count scans that never open the destination page.
Do I need a dynamic QR code for analytics?
Not always. UTM parameters are enough when you mainly need website campaign reporting instead of provider-level scan analytics.
Can I change UTM parameters after printing?
Not on a static QR code. Use a redirect URL you control if campaign tags may need to change later.
What source and medium should a QR campaign use?
Many teams use utm_source=qr and utm_medium=offline, then use utm_campaign for the campaign name and utm_content for the physical placement or creative variant.
Can UTM parameters include customer or order details?
Avoid personal, sensitive, or account-specific data in UTM parameters. URLs can appear in browser history, analytics tools, logs, exports, and shared screenshots.
Should every printed placement get a different QR code?
Use separate QR codes when placement-level reporting matters. If every poster, table tent, or package insert uses the same URL, analytics cannot separate their results later.