Skip to content
1Namecard

How to use UTM parameters for offline campaigns.

By the 1Namecard team

Last updated

8 min read

In short

Tag every printed placement with utm_source for the object, utm_medium for how it was used and utm_campaign for the show and year, all in lower case. Put the tagged address behind a short link, so the QR code stays small and you can fix a typo without reprinting.

Know the five UTM parameters before you tag anything.

A UTM parameter is a label added to the end of a web address. When someone opens that address, your analytics tool reads the labels and files the visit under them. Google's documentation for campaign URLs lists the parameters and says to always use three of them: source, medium and campaign.

The five UTM parameters and how to use them offline
ParameterGoogle's definitionOffline useExample
utm_sourceThe referrerThe physical thing the person usedrollup
utm_mediumThe marketing mediumHow they used it: scan, badge or typed printqr
utm_campaignThe product, slogan or promotionThe show and the yearexpo-2027
utm_termThe paid keywordLeave it out, there is no keyword on a bannerNot used
utm_contentTells creatives or links apartThe variant: offer, position or designoffer-a

GA4 shows the first three as session source, session medium and session campaign in its traffic acquisition report. Google's own page also lists utm_id, utm_source_platform and two creative fields. They are for paid media platforms and you can ignore them for print.

Write a naming sheet once, then obey it.

Google states that parameter values are case sensitive, so Rollup and rollup become two rows in a report. Nothing warns you when it happens. The cure is a short sheet that everyone who prints anything has to use.

A naming sheet for offline UTM parameters
FieldRuleAllowed valuesExample
SourceOne value per physical placement, equal to the short link keyrollup, lanyard, leaflet, namecard, cataloguerollup
MediumA closed list of threeqr for a scan, badge for a scan of something a person wears, print for an address read off paperqr
CampaignShow name and year, identical on every placementexpo-2027expo-2027
ContentThe variant, only when you are testing oneoffer-a, offer-b, hall4hall4
FormatLower case, letters, digits and hyphens, no spacesUp to 40 charactersexpo-2027

Keep badge apart from qr because the two behave differently. A badge scan happens with a person in front of you. A banner scan happens at a distance and with less intent. Merge them and the average hides both.

Make the source equal to the short link key. Then the same word names the placement in your analytics tool, in your short link list and on the lead. 1Namecard accepts a placement of 1 to 40 lower case letters, digits, hyphens and underscores, so a name that follows the sheet fits everywhere.

A QR code stores your address character by character. Every extra character adds data, and more data means a bigger grid of smaller squares. Printed at the same width, a denser code is harder to scan from a distance, in poor light or from a curved surface. The ISO/IEC 18004 standard sets the capacity of each size.

The same placement encoded two ways, at error correction level M
What the code holdsCharactersSmallest sizeModulesModule width on a 3 cm code
https://www.yourcompany.com/events/expo-2027/visit?utm_source=rollup&utm_medium=qr&utm_campaign=expo-2027&utm_content=hall4123Version 849 by 49About 0.6 mm
https://go.yourcompany.com/rollup33Version 329 by 29About 1.0 mm

The short address is the better code, and the tags are not lost. The short link redirects to the full tagged address, so the visitor still arrives with the UTM string attached. You also gain the right to edit the tags later. A typo in a printed long address stays printed. A typo in a short link's target is a two-minute fix. The short link best practices guide covers status codes and keys, and the QR code size guide covers print dimensions.

A worked example for one trade show.

Say an exhibitor prints six things for a show in 2027. Campaign is expo-2027 on all of them. Each short link points to the same landing page with its own tags.

Six placements for one show, tagged with the naming sheet
PlacementShort addressutm_sourceutm_mediumutm_content
Roll-up banner, hall 4go.yourcompany.com/rolluprollupqrhall4
Staff lanyardgo.yourcompany.com/lanyardlanyardbadgestandard
Leaflet, offer Ago.yourcompany.com/leaflet-aleaflet-aqroffer-a
Leaflet, offer Bgo.yourcompany.com/leaflet-bleaflet-bqroffer-b
Printed namecardgo.yourcompany.com/namecardnamecardqrblue
Show catalogue listinggo.yourcompany.com/cataloguecatalogueprintlisting

After the show you can answer questions that a single link could not. Did offer A beat offer B? Rows 3 and 4 differ only in content. Did the badge outperform the banner? Rows 1 and 2 differ in medium. Did anyone type the catalogue address by hand? Row 6 is the only row with medium print.

Know where UTMs get lost.

  • Caution: A redirect that drops the query string. Test it: open the short link and check that the final address still carries the tags.
  • Caution: A second redirect on the destination, for example from http to https or from a bare domain to www, that rebuilds the address without them.
  • Caution: A landing page script that rewrites the address or strips it before your analytics tag runs.
  • Caution: Browsers and messaging apps that remove known tracking parameters in some modes. Expect a small, unmeasurable loss.
  • Caution: A contact form that never records the tags. Analytics sees the visit, but the lead in your CRM has no source unless the form stores it.

That last point is why a placement matters beside the UTM. In 1Namecard the visit carries ?s= with the short link key. The card page keeps it in the browser's session storage for the life of the tab and sends it with the lead form or meeting request. The lead then arrives with its placement. UTMs tell your website analytics where visits came from. The placement tells your pipeline where leads came from. Use the same words for both and the two reports reconcile.

Read the result in GA4 and in your CRM.

In GA4 open Reports, then Acquisition, then Traffic acquisition, and change the first column to session source and medium or to session campaign. Your six rows appear as rollup / qr, lanyard / badge and so on.

Three things surprise people. First, GA4's default channel group files a visit under Unassigned when no channel rule matches its medium, and qr matches none. Google lets you build a custom channel group, so make one called Offline with a rule on the three mediums. Second, medium banner goes to the Display channel, so avoid it for a roll-up. Third, GA4 only sees visitors whose browser ran your tag. Where you need consent for analytics, people who decline do not appear, so GA4 under-counts. Your CRM and your short link counts do not depend on that.

Then compare. GA4 sessions per placement divided into CRM leads per placement gives a lead rate you can set side by side. The guide to QR codes on collateral shows how to lay out the placements, and the guide to cookieless link tracking explains what a click count can and cannot tell you.

Keep personal data out of every UTM.

A UTM lives in the address. It appears in browser history, server logs, referrer headers and your analytics tool. Google's analytics terms forbid sending personally identifiable information to Analytics. Treat a UTM as a label for a placement, never as a record of a person.

  • Included: Never put a name, an e-mail address, a phone number or a badge number in any parameter.
  • Included: To compare reps, use a code such as r07 and keep the key to the codes in a private sheet.
  • Included: Do not add a different tag for every recipient of a mailing. A tag unique to one person is a personal identifier.

Avoid the common mistakes.

  • Caution: Mixed case. Expo-2027 and expo-2027 split a campaign into two lines.
  • Caution: Tagging links inside your own website. A tagged internal link can start a new session and overwrite where the visitor really came from.
  • Caution: Renaming a campaign halfway through the show. The first half and the second half become two campaigns.
  • Caution: Reusing expo without the year, so next year's numbers land on top of this year's.
  • Caution: Inventing a new medium for each printer. Three mediums are enough.
  • Caution: Printing before testing. Scan every code on two phones and look at the report an hour later.

Check before you send anything to print.

  1. Step 1.

    Fill in the naming sheet and share it with whoever orders print.

  2. Step 2.

    Create one short link per placement, with the key equal to the source.

  3. Step 3.

    Add the three required UTM parameters to each target, plus content where you are testing a variant.

  4. Step 4.

    Open each short link on a phone and confirm the final address carries all the tags.

  5. Step 5.

    Scan the printed proof, not the screen, on two phones.

  6. Step 6.

    An hour after the first test scan, find it in the report. If it is missing, fix it before the run.

  7. Step 7.

    Record where each code is printed in the link's note, so the next person can tell.

Quick answers.

Which UTM parameters are required?

Google's documentation says to always use utm_source, utm_medium and utm_campaign. utm_term and utm_content are optional. For print, leave out utm_term and use utm_content only to tell variants apart.

Can I put UTM parameters in a QR code?

Yes, a QR code only stores an address. But a long tagged address makes a dense code that is harder to scan when printed small. Encode a short link instead and put the UTM parameters on its target.

Are UTM parameters personal data?

Not if they only describe a placement, such as a banner or a leaflet. They become personal data if you put a name, an e-mail address or a unique person code in them. Keep them to placements, and ask your data protection officer if you are unsure.

Why do my QR visits show as Unassigned in GA4?

GA4's default channel group has no rule for a medium such as qr, so those sessions fall under Unassigned. The data is intact. Create a custom channel group with a rule for your offline mediums to see them as one channel.

Ready for your next show?