Every marketing campaign leaves a trail.
An email is opened. An advertisement is clicked. A social post sends someone to a landing page. A customer scans a QR code on a package, brochure, or event sign. A partner shares a link with their audience.
Your analytics platform can tell you what happens after many of those visitors reach your website. It can record the pages they viewed, the actions they took, and whether they became a lead, customer, donor, subscriber, or something else your organization values.
But analytics cannot reliably explain where a visit came from unless it receives useful information about the campaign that generated it.
That information often needs to be added before the campaign launches.
Campaign tracking is the process of intentionally identifying marketing traffic so that visits, engagement, and outcomes can be connected to the work that produced them. It creates a consistent relationship between the campaign you planned and the data you review later.
This does not make attribution perfect. It does not recover every lost session, solve cross-device measurement, or eliminate the differences between advertising platforms and analytics tools. What it does is give your analytics system better context.
Most analytics platforms begin measuring after the click.
Thoughtful campaign tracking begins before it.
This guide explains how campaign tracking works, how UTM parameters are structured, how campaign information appears in Google Analytics 4, and how to create a tracking foundation that remains understandable as your marketing grows.
What Is Campaign Tracking?
Campaign tracking is the practice of adding structured identifiers to marketing links before they are distributed.
These identifiers help analytics platforms understand:
- Where a visitor came from
- What type of marketing brought them to the site
- Which campaign the visit belonged to
- Which message, placement, advertisement, or creative variation was clicked
Campaign tracking is most commonly implemented through UTM parameters added to the end of a destination URL.
Consider a normal URL:
https://example.com/services
Now consider a tracked version of the same URL:
https://example.com/services?utm_source=linkedin&utm_medium=organic_social&utm_campaign=measurement_guide
Both links lead to the same page.
The tracked URL carries additional information:
linkedinidentifies the sourceorganic_socialidentifies the mediummeasurement_guideidentifies the campaign
When someone clicks the tracked link, an analytics platform such as Google Analytics can read those values and associate them with the resulting visit.
The UTM parameters do not change the page itself. They provide context about the path the visitor took to reach it.
Campaign tracking starts during planning
Campaign tracking is sometimes treated as a reporting task: something to add after the creative is finished and just before the campaign goes live.
A stronger approach is to treat tracking as part of campaign planning.
Before publishing a campaign, the marketer considers:
- Which channels will be used?
- Which audiences or partners are involved?
- Which landing pages will receive traffic?
- Which creative variations need to be distinguished?
- Which questions should the resulting data help answer?
- How should the campaign be identified across different platforms?
These decisions shape the tracking links.
The purpose is not to add more information merely because it is available. The purpose is to identify the campaign clearly enough that the data will remain understandable later.
Diagram: campaign tracking journey. Before the click — campaign plan, tracking standards, tracked destination link, short link or QR code. Threshold — click or scan. After the click — website session, analytics and reporting, marketing decision.
Why Campaign Tracking Matters
Analytics data is only as useful as the context surrounding it.
A report might show that 1,000 people visited a landing page and 50 completed a form. Those numbers describe what happened on the website, but they do not necessarily tell you what brought those people there.
Were they sent by:
- A customer newsletter?
- A paid LinkedIn campaign?
- An employee’s organic social post?
- A printed event program?
- A partner organization?
- A QR code on product packaging?
- An SMS reminder?
- Several of those channels at once?
Campaign tracking gives each visit a useful identity.
That identity helps marketers answer practical questions such as:
- Which campaigns generated qualified traffic?
- Which channels contributed to a launch?
- Did the email or social promotion create more engaged visits?
- Which partner sent the strongest response?
- Which call to action received the most clicks?
- Did the event sign or printed brochure drive website traffic?
- Did the same campaign perform differently across channels?
- Which campaign names should appear in reports next quarter?
Campaign tracking does not answer every strategic question by itself. It gives analytics platforms the campaign information needed to begin answering them.
Better labels create better relationships
Campaign tracking is sometimes described as a way to create more data.
That is not quite the point.
The website visit, session, purchase, donation, or form submission would exist whether the link included UTM parameters or not. Campaign tracking creates a clearer relationship between that activity and the marketing effort that preceded it.
It gives the activity a label.
When those labels are consistent, marketers can compare related work over time. When the labels are inconsistent, reports become fragmented even when the underlying campaigns are performing well.
Campaign tracking protects institutional knowledge
A marketer may remember that spring_webinar referred to a particular initiative this month.
Six months later, another team member may not.
A thoughtful tracking structure reduces dependence on individual memory. The campaign data contains enough context to be interpreted by someone who did not personally build the link.
This becomes increasingly valuable when:
- Campaigns run across multiple channels
- Several people build links
- Agencies and clients share responsibility
- Team members change roles
- Reports are reviewed long after a campaign ends
- Historical performance is used for planning
Good tracking creates a reference system for the organization’s marketing activity.
It turns scattered links into a record of intentional work.
What Happens When Campaigns Are Not Tracked Properly?
An untracked visit is not necessarily invisible.
Browsers and analytics platforms may still pass referral information. A visitor clicking from another website may appear as referral traffic. A visitor arriving through a search engine may be identified as organic search. Advertising platforms may also use their own click identifiers and integrations.
The problem is that this information may not be specific enough to identify the campaign.
Some environments also provide limited or no useful referral information. Visits from email clients, messaging applications, offline materials, documents, or privacy-restricted contexts can be difficult to classify without intentional tracking.
The resulting reports may contain:
- Visits attributed to direct traffic even though marketing influenced them
- Multiple versions of what was intended to be one campaign
- Paid and organic traffic grouped incorrectly
- Email campaigns without a recognizable campaign name
- QR code visits with no information about the physical placement
- Creative variations that cannot be compared
- Partner traffic that looks like ordinary referral traffic
- Campaign names that make sense only to the person who created them
Untracked does not always mean direct
It is common to describe direct traffic as a container for all untracked marketing. That is an oversimplification.
Direct traffic generally represents visits for which the analytics platform did not receive another usable source. Some of those visitors may have typed the address, used a bookmark, or returned through a saved link. Others may have clicked an untagged link from an application or document that did not pass referral information.
The practical lesson is not that all direct traffic is secretly marketing traffic.
It is that intentional campaign tracking reduces avoidable ambiguity in the links you control.
Historical data cannot be fully repaired later
Campaign-tracking mistakes can sometimes be corrected in future reporting systems or data warehouses. Filters, calculated fields, and lookup tables can combine known variations.
But it is difficult to recreate information that was never collected.
If three QR codes all point to the same untagged URL, a later report cannot determine which physical placement produced a particular visit.
If an email button and a social advertisement use the same untracked destination URL, analytics may identify some channel information, but it cannot recreate a campaign structure that was never defined.
Good tracking preserves distinctions while they are still known.
Common mistake: Treating campaign tracking as cleanup
Campaign tracking works best before distribution. Trying to reconstruct the intended source, medium, campaign, and placement after a link has been published usually requires assumptions that the original campaign builder did not need to make.
Campaign Tracking, Analytics, and Attribution
Campaign tracking, analytics, and attribution are related, but they are not interchangeable.
Understanding the distinction prevents UTM parameters from being asked to do more than they can.
| Concept | Primary purpose | Example question |
|---|---|---|
| Traffic measurement | Records visits and activity | How many sessions reached the landing page? |
| Campaign identification | Labels the marketing interaction | Which campaign and channel brought this session? |
| Analytics | Organizes and evaluates behavior | What did visitors do after arriving? |
| Attribution | Assigns credit across interactions | Which touchpoints should receive credit for the conversion? |
Campaign tracking identifies the interaction
A tracking link can identify that a session began after someone clicked:
source=linkedin
medium=paid_social
campaign=measurement_webinar
content=video_ad
That is valuable information. It describes the marketing interaction that led into the session.
It does not prove that the LinkedIn advertisement was solely responsible for the eventual conversion.
The visitor may have:
- Heard about the company previously
- Read an organic article
- Received an earlier email
- Clicked another advertisement on a different device
- Spoken with a salesperson
- Returned directly several days later
Campaign tracking identifies a known interaction. Attribution determines how credit is assigned among interactions.
Analytics interprets what happens after arrival
Once a visitor reaches the site, analytics tools may measure:
- Landing pages
- Page views
- Engagement
- Events
- Form submissions
- Purchases
- Revenue
- Donations
- Downloads
- Account registrations
- Other defined outcomes
Campaign data can then be used as a reporting dimension.
For example, a marketer may compare:
- Sessions by campaign
- Engaged sessions by source and medium
- Key events by campaign
- Revenue by session source
- Landing-page performance by channel
The campaign identifiers provide the grouping. The analytics implementation records the behavior.
Attribution remains incomplete
Even a carefully tracked campaign exists within an imperfect measurement environment.
Attribution may be affected by:
- Consent choices
- Browser restrictions
- Ad blockers
- Cross-device behavior
- Offline interactions
- Cookie expiration
- Platform reporting methods
- Different attribution windows
- Modeled data
- Self-referrals
- Redirect behavior
- Incomplete analytics implementations
UTM parameters improve campaign identification. They do not remove these limitations.
Common mistake: Assuming UTMs fix attribution
UTMs create useful campaign context. They do not prove causation, reconcile every platform, or reveal every interaction in a customer journey.
What Are UTM Parameters?
UTM parameters are pieces of campaign information added to the query string of a URL.
“UTM” comes from Urchin Tracking Module, a naming convention that predates Google Analytics but remains widely used in marketing measurement.
A URL with UTM parameters may look like this:
https://example.com/guide?utm_source=newsletter&utm_medium=email&utm_campaign=tracking_foundations&utm_content=hero_button
The question mark begins the query string:
?
Each parameter is written as a name and value:
utm_source=newsletter
Additional parameters are separated by an ampersand:
&
The full structure is:
destination URL
?
parameter=value
&
parameter=value
Anatomy of a tracked URL
Using the previous example:
https://example.com/guide?utm_source=newsletter&utm_medium=email&utm_campaign=tracking_foundations&utm_content=hero_button
The components are:
| Component | Value |
|---|---|
| Destination URL | https://example.com/guide |
| Source | newsletter |
| Medium | email |
| Campaign | tracking_foundations |
| Content | hero_button |
Diagram: the tracking URL https://example.com/guide?utm_source=newsletter&utm_medium=email&utm_campaign=tracking_foundations&utm_content=hero_button, split into a Destination group (still a normal working URL) and a Campaign information group, with each parameter defined below it: utm_source is where the traffic came from, utm_medium is the marketing channel, utm_campaign is the coordinated initiative, utm_content is the placement or variation.
Parameter order
UTM parameters do not need to appear in a particular order for Google Analytics to recognize them.
These two URLs contain the same campaign values:
https://example.com/?utm_source=linkedin&utm_medium=paid_social&utm_campaign=spring_launch
https://example.com/?utm_campaign=spring_launch&utm_medium=paid_social&utm_source=linkedin
A consistent order is still helpful for readability and quality assurance.
A common order is:
utm_sourceutm_mediumutm_campaignutm_contentutm_term
UTM values are visible
UTM parameters appear in the URL. They may be visible in:
- Browser address bars
- Browser histories
- Shared screenshots
- Server logs
- Analytics systems
- CRM records
- Marketing platforms
- Copied and forwarded links
Do not place private, confidential, or personally identifiable information in UTM values.
Avoid values containing:
- Email addresses
- Customer names
- Phone numbers
- Account numbers
- Sensitive audience descriptions
- Private internal notes
Campaign tracking should identify the marketing activity, not the individual visitor.
The Five Main UTM Parameters
The five most commonly used UTM parameters are:
utm_sourceutm_mediumutm_campaignutm_contentutm_term
Google Analytics supports additional campaign-related fields, but these five provide the foundation used by most organizations.
utm_source
utm_source identifies where the traffic came from.
Think of it as the specific platform, publication, partner, list, website, or originating source.
Examples include:
linkedin
facebook
instagram
customer_newsletter
partner_association
conference_program
klaviyo
hubspot
A useful source value answers:
Where did this visitor encounter the link?
Source examples
| Situation | Possible source |
|---|---|
| LinkedIn advertisement | linkedin |
| Organic Instagram post | instagram |
| Customer newsletter | customer_newsletter |
| Email sent through Klaviyo | klaviyo |
| Partner organization | regional_chamber |
| Trade show booth sign | annual_expo |
| Printed product insert | package_insert |
There is no universal rule requiring every organization to choose the same type of source value.
For email, one team might use the sending platform:
utm_source=klaviyo
Another might use the publication or audience:
utm_source=customer_newsletter
Both can work. The important question is which model creates more useful reporting for the organization.
A company that frequently changes email platforms may prefer publication-based sources. An agency managing several platforms may find platform-based sources valuable. The standard should reflect the reporting questions the team expects to ask.
utm_medium
utm_medium identifies the general marketing channel or method used to deliver the link.
Examples include:
email
paid_social
organic_social
sms
referral
print
display
affiliate
podcast
A useful medium value answers:
What kind of marketing interaction was this?
The medium should usually remain broader and more stable than the source.
For example:
| Source | Medium |
|---|---|
linkedin | paid_social |
instagram | organic_social |
customer_newsletter | email |
klaviyo | sms |
regional_chamber | referral |
annual_report | print |
The source identifies the specific origin. The medium groups similar traffic into a channel.
utm_campaign
utm_campaign identifies the initiative, promotion, launch, appeal, event, or coordinated marketing effort.
Examples include:
spring_product_launch
year_end_appeal
measurement_webinar
july_newsletter
member_renewal
black_friday_2026
annual_conference
A useful campaign value answers:
Which coordinated marketing effort did this visit belong to?
The same campaign name can be used across several channels.
For example, a webinar may be promoted through:
linkedin / paid_social / measurement_webinar
customer_newsletter / email / measurement_webinar
partner_association / referral / measurement_webinar
The source and medium values change because the traffic comes from different places and channels.
The campaign value remains the same because all three links support the same initiative.
This allows a marketer to evaluate the campaign as a whole while still comparing the individual channels within it.
utm_content
utm_content distinguishes variations within the same source, medium, and campaign.
It is often used to identify:
- Different advertisements
- Different calls to action
- Different buttons within an email
- Different images or messages
- Different physical placements
- Different links in the same document
- Different audience or creative variants
Examples include:
hero_button
footer_link
video_ad
carousel_ad
blue_product_image
booth_sign
package_front
speaker_slide
A useful content value answers:
Which version or placement of the campaign link was clicked?
Consider an email with two links to the same landing page:
utm_content=hero_button
utm_content=text_link
Both links can use the same source, medium, and campaign. The content value preserves the distinction between their placements.
utm_term
utm_term was originally associated with paid-search keywords.
An example might be:
utm_term=campaign_tracking_software
Today, advertising platforms often pass keyword and targeting information through auto-tagging, click identifiers, or platform integrations. That means many marketers rarely need to populate utm_term manually.
Some organizations repurpose it for other forms of targeting, but this should be done carefully. Using a familiar field for an unexpected purpose can make reporting harder to interpret.
A practical approach is:
- Use
utm_termwhen it represents a meaningful search term or targeting value - Leave it blank when it does not add useful information
- Document any alternative use in the organization’s tracking standards
More parameters do not automatically produce better data. Each parameter should have a defined purpose.
Which UTM Parameters Are Required?
For manually tagged campaign links, Google recommends consistently including utm_source, utm_medium, and utm_campaign. utm_content and utm_term are optional and should be used when they add a meaningful distinction.
A practical baseline is:
| Parameter | Recommended status | Purpose |
|---|---|---|
utm_source | Required | Identifies the specific traffic origin |
utm_medium | Required | Identifies the marketing channel |
utm_campaign | Required | Identifies the coordinated initiative |
utm_content | Optional | Distinguishes links, placements, or creative |
utm_term | Optional | Identifies a paid keyword or documented targeting value |
Required does not mean complicated
A complete tracking link can remain simple:
https://example.com/donate?utm_source=member_newsletter&utm_medium=email&utm_campaign=year_end_appeal
The goal is not to fill every available field.
The goal is to collect enough information to identify the campaign reliably.
When to use utm_content
Use utm_content when you expect to compare meaningful variations.
Examples:
- Header button vs. footer button
- Image advertisement vs. video advertisement
- Booth sign vs. printed handout
- Package front vs. package insert
- Employee post vs. company-page post
- Version A vs. version B
Do not create content values merely because the field exists. A value that nobody will interpret or report on adds noise rather than clarity.
When to use utm_term
Use utm_term when:
- You manually tag paid-search links
- A documented advertising workflow relies on it
- The value represents a stable, meaningful targeting distinction
- The platform does not already provide better keyword data through auto-tagging
Otherwise, it can usually remain empty.
Common mistake: Requiring every parameter for every link
A standard should create useful consistency, not unnecessary work. Source, medium, and campaign provide the central structure. Content and term should earn their place by preserving a distinction the team expects to use.
Source vs. Medium
Source and medium are the two parameters most likely to be confused.
The simplest distinction is:
- Source: Where did the visitor come from?
- Medium: What type of marketing brought them?
For a paid LinkedIn advertisement:
utm_source=linkedin
utm_medium=paid_social
For an organic LinkedIn post:
utm_source=linkedin
utm_medium=organic_social
The source remains LinkedIn.
The medium changes because the marketing method is different.
Source is specific; medium is categorical
A source is usually a named origin:
- Customer newsletter
- Partner association
- Industry podcast
- Annual conference
A medium usually groups traffic into a broader class:
- Paid social
- Organic social
- Referral
- Podcast
- SMS
Diagram: two questions — where will the visitor encounter the link (name the specific source), and how is the link distributed or promoted (choose the broader medium). Example: LinkedIn is the source; if the placement is paid the medium is paid_social, if organic the medium is organic_social.
utm_medium=paid_social
utm_medium=organic_social
A source and medium framework
| Marketing activity | Source | Medium |
|---|---|---|
| Paid Facebook advertisement | facebook | paid_social |
| Organic Facebook post | facebook | organic_social |
| Customer newsletter | customer_newsletter | email |
| SMS sent through Klaviyo | klaviyo | sms |
| Chamber of commerce link | regional_chamber | referral |
| Sponsored podcast link | industry_podcast | podcast |
| Conference-program QR code | annual_conference | print |
These examples represent one defensible system, not the only possible system.
A team might use meta as the source for both Facebook and Instagram, or it might preserve each platform separately. It might use klaviyo as the source for every email, or distinguish customer_newsletter, abandoned_cart, and member_updates.
The right structure is the one that:
- Answers the team’s reporting questions
- Can be explained clearly
- Can be applied consistently
- Remains useful over time
Avoid making the medium too specific
Suppose a team creates these medium values:
email_newsletter
email_automation
email_promotion
email_customer
email_member
email_partner
This preserves detail, but it may make channel-level reporting unnecessarily fragmented.
A cleaner structure might be:
utm_medium=email
Then preserve the additional distinction in the source, campaign, or content field.
For example:
utm_source=customer_newsletter
utm_medium=email
utm_campaign=spring_launch
The medium remains stable while the other fields provide context.
Campaign vs. Content
Campaign and content serve different levels of identification.
- Campaign identifies the larger marketing initiative
- Content identifies a variation, placement, or execution within it
Consider a year-end fundraising appeal sent by email.
The campaign might be:
utm_campaign=year_end_appeal
The email contains a hero button and a text link:
utm_content=hero_button
utm_content=body_text_link
Both links belong to the same campaign. The content values distinguish where the click occurred.
Campaign describes the shared objective
A campaign often spans:
- Multiple channels
- Multiple messages
- Multiple creative formats
- Multiple audience segments
- Multiple dates
- Multiple landing pages
The shared campaign name connects those executions.
For example:
| Source | Medium | Campaign | Content |
|---|---|---|---|
linkedin | paid_social | measurement_webinar | video_ad |
customer_newsletter | email | measurement_webinar | hero_button |
partner_association | referral | measurement_webinar | newsletter_link |
The campaign name allows the three channels to be evaluated together.
The content values allow individual executions to be evaluated separately.
Do not put every detail into the campaign name
A campaign value such as this may appear descriptive:
2026_spring_webinar_linkedin_paid_video_marketers_version_b
But it combines several concepts:
- Date
- Initiative
- Source
- Medium
- Format
- Audience
- Version
Those details already have more appropriate places.
A cleaner structure might be:
utm_source=linkedin
utm_medium=paid_social
utm_campaign=spring_measurement_webinar
utm_content=video_marketers_b
The URL still contains useful detail, but the data is separated into fields that can be grouped and compared.
Common mistake: Repeating every parameter inside
utm_campaignA campaign name should connect related work. When source, medium, placement, audience, and version are all embedded in the campaign value, campaign-level reporting becomes harder rather than easier.
How Campaign Data Appears in GA4
Google Analytics 4 reads manually tagged campaign parameters and uses them to populate traffic-source dimensions such as manual source, manual medium, and manual campaign name.
The exact reports and interfaces may evolve, but the underlying distinction between acquisition scopes is important.
Traffic acquisition
The Traffic acquisition report is session-scoped. It helps explain where sessions came from, including sessions from new and returning users.
Common dimensions include:
- Session source
- Session medium
- Session source/medium
- Session campaign
- Session default channel group
- Session manual source
- Session manual medium
- Session manual campaign name
If a visitor clicks this link:
https://example.com/guide?utm_source=linkedin&utm_medium=paid_social&utm_campaign=tracking_foundations
The resulting session may be associated with:
Session source: linkedin
Session medium: paid_social
Session campaign: tracking_foundations
The campaign values can then be reviewed alongside metrics such as:
- Sessions
- Engaged sessions
- Engagement rate
- Average engagement time
- Key events
- Revenue
User acquisition
The User acquisition report is focused on how new users were first acquired. It uses first-user dimensions rather than session dimensions.
Common dimensions include:
- First user source
- First user medium
- First user source/medium
- First user campaign
- First user default channel group
This creates an important distinction.
Suppose someone first discovers a website through organic search and returns one week later through a tracked email.
The reports may describe the user differently:
First user source / medium:
google / organic
Session source / medium:
customer_newsletter / email
Both can be correct.
One describes the user’s original acquisition.
The other describes the source of the current session.
Manual campaign dimensions
GA4 also provides manual campaign dimensions that correspond more directly to values passed through UTM parameters.
Depending on the report, exploration, or API field being used, these may include session-level, first-user, or event-related manual campaign dimensions.
When evaluating a manually tagged campaign, confirm that the selected dimension matches the question:
- How were users first acquired?
- What generated these sessions?
- Which campaign was associated with a particular event?
- Which manual campaign name was passed in the link?
Using the wrong scope can produce a technically correct report that answers a different question from the one the marketer intended.
How UTMs relate to outcomes
UTM parameters identify the campaign interaction. GA4 can then associate the session with recorded behavior.
For example:
Campaign:
spring_membership_drive
The report may show:
Sessions: 2,400
Engaged sessions: 1,650
Key events: 180
Revenue: $22,000
That does not mean the campaign independently caused every result. It means those outcomes were recorded within sessions or reporting scopes associated with the campaign, according to GA4’s measurement and attribution rules.
The distinction matters whenever campaign data is presented to stakeholders.
UTM parameters and page dimensions
Google notes that UTM parameters are not included in certain landing-page and page-path query-string dimensions. The full URL information is instead available through the page-location dimension.
This means a marketer should not expect every page-oriented dimension to display the original UTM query string, even when the campaign values were successfully captured as traffic-source dimensions.
Verifying a campaign after launch
A practical verification process is:
- Open the final campaign link in a clean browser session.
- Confirm that the correct page loads.
- Confirm that the UTM parameters remain present through any redirects.
- Check real-time or debugging tools for the visit.
- Confirm that the source, medium, and campaign appear as expected once reporting processes the data.
- Test the actual short link or QR code rather than only testing the original destination.
The objective is to test the full path a visitor will use.
Campaign-Tracking Examples by Channel
The following examples illustrate workable tracking structures.
They are not universal rules. Each organization should adapt the values to its own approved standards.
For readability, the URLs are shown on multiple lines in some examples. A live URL should not contain line breaks.
Email is one of the most important channels to track intentionally because referral information from email clients is not always useful or consistent.
Monthly customer newsletter
https://example.com/resources/campaign-planning
?utm_source=customer_newsletter
&utm_medium=email
&utm_campaign=july_newsletter
&utm_content=featured_article
This structure answers:
- Source: Which email publication?
- Medium: Which channel?
- Campaign: Which edition or initiative?
- Content: Which link within the email?
Product-launch email
https://example.com/new-product
?utm_source=product_updates
&utm_medium=email
&utm_campaign=spring_product_launch
&utm_content=hero_button
A second link in the same email could use:
utm_content=body_text_link
Platform-based email structure
A team that needs to compare sending platforms might use:
https://example.com/new-product
?utm_source=klaviyo
&utm_medium=email
&utm_campaign=spring_product_launch
&utm_content=hero_button
The choice between customer_newsletter and klaviyo is a matter of tracking design. Choose the model that creates the most useful long-term reference.
Paid social
Paid-social tracking should usually distinguish the advertising platform from the marketing channel.
LinkedIn advertisement
https://example.com/webinar
?utm_source=linkedin
&utm_medium=paid_social
&utm_campaign=measurement_webinar
&utm_content=video_ad
Facebook advertisement
https://example.com/webinar
?utm_source=facebook
&utm_medium=paid_social
&utm_campaign=measurement_webinar
&utm_content=customer_story
These links share the same campaign because they promote the same webinar.
Their source and content values distinguish the platform and creative.
Facebook and Instagram
Some teams prefer:
utm_source=facebook
and:
utm_source=instagram
Others use:
utm_source=meta
and place the specific network in another parameter or retrieve it through a platform-generated value.
Separate sources usually produce clearer cross-platform reporting. A shared source may be useful when the organization primarily evaluates Meta as one advertising environment. Either approach should be documented and applied consistently.
Organic social
Organic social posts can also benefit from tracking, particularly when a campaign is promoted through several platforms or accounts.
LinkedIn company-page post
https://example.com/report
?utm_source=linkedin
&utm_medium=organic_social
&utm_campaign=industry_report
&utm_content=company_page_post
Employee advocacy post
https://example.com/report
?utm_source=linkedin
&utm_medium=organic_social
&utm_campaign=industry_report
&utm_content=employee_advocacy
These content values distinguish the company post from employee distribution without creating separate campaign names.
SMS
SMS links are frequently shortened for space and readability, but the destination behind the short link should still carry intentional campaign values.
https://example.com/member-renewal
?utm_source=member_alerts
&utm_medium=sms
&utm_campaign=annual_renewal
&utm_content=reminder_1
A later reminder might use:
utm_content=reminder_2
A platform-based system could instead use:
utm_source=klaviyo
utm_medium=sms
As with email, the team should decide whether the source represents the platform, communication stream, audience, or another stable origin.
QR codes
A QR code encodes a URL. The UTM parameters in that URL provide the campaign identification.
The most useful structure depends on where the QR code appears.
Trade-show booth sign
https://example.com/trade-show
?utm_source=annual_expo
&utm_medium=offline
&utm_campaign=product_launch
&utm_content=booth_sign_qr
Conference program
https://example.com/trade-show
?utm_source=annual_expo
&utm_medium=print
&utm_campaign=product_launch
&utm_content=program_qr
Product packaging
https://example.com/product-guide
?utm_source=product_packaging
&utm_medium=offline
&utm_campaign=product_education
&utm_content=package_side_panel
The utm_content field is especially useful for QR codes because the same campaign may appear in several physical locations.
Should qr be the medium?
Some organizations use:
utm_medium=qr
This creates a simple way to group all QR-code traffic.
The tradeoff is that “QR” describes the access mechanism, not necessarily the marketing channel.
A QR code might appear on:
- Packaging
- Direct mail
- An event sign
- A brochure
- A retail display
- A presentation slide
- A television advertisement
Using medium=qr groups these different contexts together.
An alternative is:
utm_medium=print
utm_content=qr_code
or:
utm_medium=offline
utm_content=retail_display_qr
This preserves both the broader channel and the fact that the visitor scanned a QR code.
Neither structure is inherently wrong. The better choice depends on whether the organization primarily needs to report on the QR mechanism or the physical marketing context.
A printed URL can be tracked even when it is not represented by a QR code.
Printed brochure
https://example.com/brochure
?utm_source=service_brochure
&utm_medium=print
&utm_campaign=spring_outreach
Because a full tracked URL is difficult to type, it is usually better to print a memorable short URL that redirects to the tracked destination.
For example:
example.com/spring
redirects to:
https://example.com/brochure?utm_source=service_brochure&utm_medium=print&utm_campaign=spring_outreach
Partner and referral campaigns
Intentional tracking can distinguish a coordinated partner campaign from ordinary website referrals.
Association newsletter
https://example.com/membership
?utm_source=regional_association
&utm_medium=referral
&utm_campaign=partner_membership_drive
&utm_content=newsletter_feature
Affiliate partner
https://example.com/product
?utm_source=partner_name
&utm_medium=affiliate
&utm_campaign=spring_product_launch
Be careful when placing UTMs on links to a website you do not control. The UTM data is primarily captured by the analytics system on the destination website.
If a partner links to your website, your analytics can read the UTMs.
If you link to the partner’s website, those parameters are available to the partner’s analytics, not automatically to yours.
Podcast sponsorship
https://example.com/podcast
?utm_source=measurement_weekly
&utm_medium=podcast
&utm_campaign=spring_awareness
A spoken URL should usually be short and memorable. The branded short link can redirect to the tracked destination.
Cross-channel campaign example
Suppose an organization launches an annual report through email, paid social, organic social, print, and a partner.
| Source | Medium | Campaign | Content |
|---|---|---|---|
customer_newsletter | email | annual_report_2026 | hero_button |
linkedin | paid_social | annual_report_2026 | document_ad |
linkedin | organic_social | annual_report_2026 | company_post |
printed_summary | print | annual_report_2026 | back_cover_qr |
industry_association | referral | annual_report_2026 | newsletter_feature |
The shared campaign value creates one coherent initiative.
The source, medium, and content values preserve the individual paths into it.
Platform-Generated Parameters vs. Intentional UTMs
Not every campaign identifier needs to be typed manually.
Advertising and marketing platforms may support:
- Auto-tagging
- Click identifiers
- Dynamic URL parameters
- Tracking templates
- Platform macros
- Automatically generated campaign values
- Analytics integrations
These features can reduce repetitive work and provide details that would be difficult to maintain manually.
The important distinction is between automated construction and intentional structure.
A platform can insert a value automatically while the naming system behind it remains deliberate.
Auto-tagging
Google Ads auto-tagging adds a Google Click Identifier and enables richer integration with Google Analytics. Google notes that auto-tagging reduces manual errors and supports more detailed advertising reporting.
For properly connected Google Ads and GA4 accounts, auto-tagging is generally preferable to manually recreating the platform’s advertising data with basic UTMs.
Adding manual campaign details alongside a Google Click Identifier can create reporting conflicts or misattribution in some configurations. Google specifically cautions against including manual campaign values unless they represent a new campaign interaction.
This does not mean manual UTMs should never be used in advertising.
It means the marketer should understand:
- Which values the platform already provides
- Which values the analytics integration prioritizes
- Whether manual values are needed for another system
- How the final URL will be interpreted
- Whether the combination creates duplicate or conflicting information
Dynamic parameters
Paid-social and advertising platforms may allow a tracking template such as:
utm_source=[dynamic platform value]
&utm_medium=paid_social
&utm_campaign=[dynamic campaign value]
&utm_content=[dynamic ad value]
At click time, the platform replaces the placeholders with real values.
This can be efficient, but platform-generated names are not always designed for clean cross-channel reporting.
For example, a platform campaign name might contain:
- Internal IDs
- Temporary naming conventions
- Audience details
- Ad-buying notes
- Duplicate dates
- Inconsistent capitalization
- Names that make sense only inside the advertising account
A thoughtful system may use dynamic parameters selectively while preserving an approved cross-channel campaign name.
Platform tracking does not replace governance
Automation can reduce typing errors. It does not decide what the organization means by:
- Source
- Medium
- Campaign
- Content
- Paid social
- Referral
- Partner
- Newsletter
- QR
Those definitions still require a standard.
Common mistake: Letting every platform create its own taxonomy
Platform-generated values may be technically accurate inside each platform while producing inconsistent reporting across the larger marketing system.
Common Campaign-Tracking Mistakes
Most campaign-tracking problems are not caused by a lack of care.
They are usually caused by fragmented tools, unclear ownership, hurried launches, and standards that exist only in one person’s memory.
The following mistakes are common because campaign tracking often sits between creative work, media platforms, websites, analytics, and reporting.
1. Inconsistent capitalization
These values may appear identical to a person reading quickly:
Facebook
facebook
FACEBOOK
Analytics systems can treat them as separate values.
The same applies to:
Paid_Social
paid_social
paid-social
A lowercase standard is usually easiest to maintain:
facebook
paid_social
spring_launch
2. Inconsistent separators
These campaign names may describe the same initiative:
spring sale
spring-sale
spring_sale
springsale
But they create different strings.
Choose one separator and use it consistently.
Common choices include:
spring_sale
or:
spring-sale
Underscores are visually clear in raw data. Hyphens are familiar in URLs. Either can work.
Consistency matters more than the individual choice.
3. Reversing source and medium
This structure is difficult to use:
utm_source=paid_social
utm_medium=linkedin
A more conventional structure is:
utm_source=linkedin
utm_medium=paid_social
The source identifies the specific origin. The medium identifies the channel.
4. Making the medium too detailed
Values such as these may fragment channel reporting:
linkedin_paid_video
facebook_paid_carousel
instagram_paid_story
A cleaner medium may be:
paid_social
Then use source and content to preserve the remaining distinctions.
5. Creating a new campaign name for every link
Suppose one webinar is promoted with:
measurement_webinar_email
measurement_webinar_linkedin
measurement_webinar_partner
measurement_webinar_qr
This creates four campaign names.
The same initiative could instead use:
utm_campaign=measurement_webinar
with different source and medium values.
That structure supports both campaign-level and channel-level reporting.
6. Using UTMs on internal links
UTM parameters are intended to identify new campaign interactions that bring visitors into the site.
Adding them to internal navigation can replace or distort the source associated with the session and create a false campaign interaction. Google advises against including manual campaign details unless they reflect a new campaign interaction.
Do not use UTMs to identify:
- Homepage banners
- Internal navigation
- Related-post links
- Buttons between pages
- Internal promotional modules
Use event tracking, content groups, link identifiers, or another internal measurement method instead.
7. Assuming every untagged visit becomes direct
Some untagged visits retain referral information. Others do not.
The problem with an untagged campaign link is not that it always becomes direct. The problem is that you are allowing the browser, application, and analytics platform to infer context that you could have provided intentionally.
8. Assuming a short link is automatically a tracking link
A short link is a redirect.
It may record the number of redirect requests, but that does not necessarily identify the campaign in GA4.
The destination behind the short link still needs the appropriate campaign parameters if the website analytics should receive them.
9. Assuming a QR code automatically provides campaign data
A QR code contains or points to a URL.
If the URL has no campaign identifiers, the QR code does not invent them.
Several QR codes pointing to the same untagged destination may be indistinguishable in website analytics.
10. Reusing one QR code across unrelated placements
Using one QR code on packaging, a trade-show sign, a brochure, and a retail display makes production easier.
It also removes the ability to distinguish those placements.
Separate tracked destinations or redirect links preserve the context of each placement.
11. Failing to test redirects
Redirects can:
- Remove query parameters
- Duplicate query parameters
- Send visitors to the wrong protocol or hostname
- Create loops
- Lose anchor fragments
- Break on mobile devices
- Route to an outdated page
Test the final distributed asset, including the short URL or QR code.
12. Adding duplicate parameters
A URL such as this contains two campaign values:
https://example.com/
?utm_campaign=spring_launch
&utm_campaign=summer_launch
Different systems may handle duplicated parameters differently.
The final URL should contain one clear value for each parameter.
13. Placing private information in the URL
UTM parameters are not a private data field.
Do not include:
[email protected]
or:
utm_term=customer_123456
Use campaign-level identifiers that do not expose personal information.
14. Changing the naming system during a campaign
Suppose the first half of a campaign uses:
utm_medium=paid-social
and the second half uses:
utm_medium=paid_social
The campaign’s reporting is now split.
Naming changes should be planned, documented, and introduced at a clear boundary when possible.
15. Letting each person build links from memory
Even experienced marketers will eventually make different choices when:
- They are working quickly
- The standard is ambiguous
- A channel does not fit existing examples
- Campaign names are not documented
- Old links are difficult to find
- Several tools generate links differently
A shared builder, approved-value list, or campaign reference reduces this cognitive burden.
16. Tracking details nobody will use
A link containing every imaginable distinction may become difficult to manage:
utm_source=linkedin
&utm_medium=paid_social
&utm_campaign=spring_launch
&utm_content=blue_video_square_version_b_marketers
&utm_term=interest_stack_7
Detailed data can be useful, but only when the distinctions are stable, documented, and connected to a real reporting need.
Collect what you intend to interpret.
17. Expecting advertising and analytics reports to match exactly
Advertising platforms and analytics systems may measure different things.
An advertising platform may report clicks. GA4 may report sessions. The systems may use different:
- Time zones
- Attribution windows
- Identity methods
- Consent rules
- Invalid-traffic filters
- Session definitions
- Modeled data
- Conversion definitions
Campaign tracking helps create shared identifiers. It does not make every system use the same measurement method.
Why Naming Consistency Matters
Campaign tracking depends less on the complexity of the naming system than on its consistency.
Consider these source values:
linkedin
LinkedIn
linked_in
li
linkedin.com
Each may refer to the same platform.
To an analytics system, they are different values.
A marketer can combine them later through custom reporting logic, but this creates recurring cleanup work and makes standard reports less trustworthy.
Consistency creates usable dimensions
A campaign report groups activity by exact values.
When the values are consistent, the marketer can confidently compare:
linkedin / paid_social
facebook / paid_social
instagram / paid_social
When they are inconsistent, the report may show:
LinkedIn / paid
linkedin / paid_social
li / social_paid
linkedin.com / cpc
The marketing itself may be sound. The labels make it appear fragmented.
Naming consistency is not cosmetic
A naming convention affects:
- Channel grouping
- Campaign totals
- Dashboard filters
- CRM reporting
- Data imports
- Spreadsheet lookups
- Agency reporting
- Historical comparisons
- Automation
- Data-warehouse models
- Team confidence
The value of a convention compounds as campaign history grows.
Good naming standards are understandable
A tracking system should not require a decoder ring.
Compare:
q3_wbnr_26_ln_vd_a2
with:
measurement_webinar
The shorter coded value may save characters, but it transfers complexity to every person who interprets it later.
Abbreviations can be useful when they are widely understood and documented. They should not exist merely to make a campaign name look efficient.
Names should remain useful after the campaign ends
Ask whether the value will still make sense:
- Next month
- Next year
- To a new team member
- In an exported spreadsheet
- Outside the original platform
- Without the creative brief nearby
A durable name usually describes the initiative rather than the momentary production process.
Dates can help, but they should have a purpose
A date may be useful when campaigns repeat:
year_end_appeal_2026
july_newsletter_2026
annual_conference_2026
A date may be unnecessary when the campaign is already unique:
new_product_launch_2026_07_14
Overly precise dates can produce accidental duplication when the launch moves.
Choose a date structure that reflects how the organization compares campaigns.
A basic naming standard
A practical starting point might be:
| Field | Standard | Example |
|---|---|---|
| Case | Lowercase | linkedin |
| Separator | Underscore | paid_social |
| Source | Specific origin | customer_newsletter |
| Medium | Approved channel | email |
| Campaign | Shared initiative | measurement_webinar |
| Content | Placement or variant | hero_button |
| Term | Keyword when relevant | campaign_tracking |
| Personal data | Never allowed | — |
This is not elaborate.
That is a strength.
Tracking Links, Shortened Links, and QR Codes
Tracking links, shortened links, and QR codes can work together, but they are not the same thing.
A tracking link
A tracking link is a destination URL containing campaign identifiers.
Example:
https://example.com/guide?utm_source=linkedin&utm_medium=organic_social&utm_campaign=tracking_foundations
Its primary purpose is to pass campaign context to the destination and its analytics system.
A shortened link
A shortened link is a compact URL that redirects to another URL.
Example:
example.com/guide
It might redirect to:
https://example.com/resources/campaign-guide?utm_source=printed_brochure&utm_medium=print&utm_campaign=tracking_foundations
A short link can provide:
- A cleaner appearance
- Easier typing
- Branded presentation
- A manageable link for SMS
- A destination that may be updated later
- Redirect-level click counts
The short URL is the doorway.
The tracked destination carries the campaign information.
A QR code
A QR code visually encodes a URL.
That URL may be:
- A direct destination
- A tracked destination
- A shortened redirect
- A dynamic redirect managed through a QR platform
The QR code itself does not decide the source, medium, or campaign.
Those decisions are made in the URL it contains or the redirect destination behind it.
Diagram: a tracking link contains campaign identifiers and passes context to analytics; a short link provides a concise redirect to the tracked destination; a QR code encodes a URL so visitors can scan instead of type. Combined path: QR code, then branded short link, then tracked destination, then website, then analytics. Short links and QR codes are optional distribution layers.
↓
Passes context to analytics
↓
Sends visitors to the tracked destination
↓
Lets visitors scan instead of type
A short link doesn’t automatically carry UTM data, and a QR code doesn’t automatically provide tracking — the campaign identifiers live in the destination URL underneath. A QR scan also isn’t the same metric as a website session.
QR code generation vs. QR code tracking
Generating a QR code means converting a URL into a scannable visual pattern.
Tracking a QR campaign means preserving useful information about the scan’s marketing context.
These are different tasks.
A QR generator can create:
https://example.com
That code will work, but website analytics may not know:
- Which code was scanned
- Where it appeared
- Which campaign it belonged to
- Which version of the packaging or sign contained it
A more useful destination might be:
https://example.com?utm_source=retail_display&utm_medium=offline&utm_campaign=summer_product_launch&utm_content=aisle_endcap_qr
Static and dynamic QR codes
A static QR code directly encodes its final destination. Changing the destination generally requires creating and replacing the code.
A dynamic QR code usually points to a managed redirect. The redirect destination may be updated without reprinting the code.
Dynamic redirects can be valuable for:
- Packaging with a long shelf life
- Permanent signs
- Printed collateral
- Changing seasonal destinations
- Correcting broken pages
- Campaigns that need destination flexibility
The distinction affects destination management, not the underlying principle of campaign tracking.
The redirect should still preserve the intended campaign identifiers.
How to Establish Campaign-Tracking Standards
A campaign-tracking standard is a shared definition of how the organization identifies marketing links.
It does not need to begin as a large governance document.
A useful first version may fit on one page.
1. Start with the questions the data should answer
Before selecting parameter values, identify the reporting questions.
For example:
- Do we need to compare platforms?
- Do we need to compare paid and organic social?
- Should all email traffic be grouped together?
- Do we need to distinguish newsletters from automations?
- Do we need to compare physical QR placements?
- Do agencies need to report across multiple clients?
- Do partner links require separate reporting?
- Will campaign values be shared with a CRM or warehouse?
The structure should support real decisions.
2. Define the required fields
A practical standard usually requires:
utm_source
utm_medium
utm_campaign
Then define when to use:
utm_content
utm_term
A field should be optional because the distinction is sometimes unnecessary, not because nobody understands it.
3. Create an approved medium list
Medium values are most useful when they remain controlled.
An initial list might include:
email
paid_social
organic_social
paid_search
display
sms
referral
affiliate
print
offline
podcast
The exact list should fit the organization.
Avoid creating a new medium whenever a new platform appears. New platforms are often sources within an existing medium.
4. Define source patterns
Sources may be more flexible because new platforms, publications, partners, and placements appear over time.
The standard can still define patterns.
For example:
| Channel | Source rule | Examples |
|---|---|---|
| Paid social | Use the network name | linkedin, facebook, instagram |
| Organic social | Use the network name | linkedin, instagram |
| Use publication or platform | customer_newsletter, klaviyo | |
| Partner | Use partner name | regional_chamber |
| Podcast | Use publication name | measurement_weekly |
| Use document or placement | annual_report, service_brochure |
5. Define campaign naming
A campaign name should connect related activity.
A team might choose this pattern:
initiative
Examples:
measurement_webinar
spring_product_launch
year_end_appeal
Another team may need:
initiative_year
Examples:
year_end_appeal_2026
annual_conference_2026
An agency may add a client or business-unit identifier if campaigns from several properties are stored together:
client_initiative_year
Do not add structural elements unless they solve an actual reporting or organizational problem.
6. Define content values
The standard should explain what belongs in utm_content.
For example:
placement
or:
format_placement
Examples:
hero_button
footer_link
video_ad
carousel_ad
booth_sign_qr
package_insert_qr
Without a definition, content values tend to become a mixture of ad names, audience segments, internal notes, and creative descriptions.
7. Establish case and separator rules
For example:
Use lowercase.
Use underscores between words.
Do not use spaces.
Do not include personal information.
Simple rules prevent a large share of accidental fragmentation.
8. Create examples for actual channels
Generic documentation is difficult to apply under deadline pressure.
Include examples for the channels the organization really uses:
- Customer newsletters
- Automated email
- Paid social
- Paid search
- Organic social
- SMS
- Partner campaigns
- QR codes
- Packaging
- Events
- Print materials
- Podcast sponsorships
Examples turn abstract rules into usable guidance.
9. Define ownership
Someone should be responsible for maintaining the standard.
That does not mean one person must build every link.
Ownership may include:
- Approving new medium values
- Resolving unusual cases
- Updating examples
- Reviewing recurring inconsistencies
- Coordinating analytics and campaign teams
- Maintaining the shared builder or reference
A standard without ownership tends to become a historical document rather than a working system.
10. Allow documented exceptions
Not every marketing activity fits neatly into the first version of a taxonomy.
The goal is to guide, not to force a poor classification.
When a new situation appears:
- Review the reporting need.
- Check whether an existing value fits.
- Create a new value only when necessary.
- Document the decision.
- Add an example for the next marketer.
That is how a standard becomes more useful without becoming arbitrary.
A good tracking standard is not bureaucracy
It removes repeated decisions from campaign production. Marketers spend less time remembering how the last link was structured and more time thinking about the work itself.
A Practical Campaign-Tracking Workflow
Campaign tracking should fit naturally into campaign production.
A practical workflow begins before links are created and continues through post-launch verification.
Step 1: Define the campaign
Clarify:
- What is being promoted?
- What is the campaign called?
- What action should the audience take?
- Which channels are involved?
- Which team or client owns it?
- When will it run?
Create one shared campaign identifier.
Example:
measurement_webinar
Step 2: Map the campaign touchpoints
List every place the campaign link will appear.
For example:
- Customer newsletter
- Paid LinkedIn advertisement
- Organic LinkedIn post
- Partner newsletter
- Trade-show sign
- Presentation slide
- SMS reminder
This prevents several placements from accidentally sharing one indistinguishable link.
Step 3: Choose the destination pages
Confirm:
- The correct page
- The preferred protocol and domain
- Whether the page is live
- Whether existing query parameters must be preserved
- Whether an anchor link is needed
- Whether the destination changes by audience or channel
Campaign tracking cannot compensate for an incorrect destination.
Step 4: Assign source and medium values
Apply the approved standards to each touchpoint.
| Touchpoint | Source | Medium |
|---|---|---|
| Customer newsletter | customer_newsletter | email |
| LinkedIn advertisement | linkedin | paid_social |
| LinkedIn company post | linkedin | organic_social |
| Partner newsletter | partner_association | referral |
| Trade-show sign | annual_expo | offline |
Step 5: Add content values where useful
Distinguish meaningful variations:
hero_button
video_ad
company_post
newsletter_feature
booth_sign_qr
Leave utm_content empty when there is no useful variation to preserve.
Step 6: Build the tracked links
Create the full URLs using a shared builder, template, spreadsheet, or governed system.
Review each value for:
- Spelling
- Capitalization
- Approved terminology
- Correct campaign name
- Correct destination
- Duplicate parameters
- Private information
Step 7: Create optional short links and QR codes
Once the tracked destination is correct:
- Create a short link when the visible URL should be concise
- Create a QR code when the visitor will scan from a physical or visual placement
- Preserve a record of which redirect or QR code belongs to which placement
Do not treat the short-link or QR-generation step as the point where campaign naming should be improvised.
The tracking foundation should already exist.
Step 8: Test the complete path
Test:
Published asset
↓
Short link or QR code
↓
Redirect
↓
Tracked URL
↓
Landing page
↓
Analytics
Confirm that:
- The final page loads
- The destination is correct
- UTM parameters survive the redirect
- The page works on mobile
- The QR code scans at the intended size and distance
- The campaign appears in analytics
- The correct event or conversion can be completed
Step 9: Launch the campaign
Store the approved links somewhere accessible.
This may be:
- A campaign-management platform
- A tracking-link system
- A project-management tool
- A campaign brief
- A shared spreadsheet
- A client workspace
The final links should not live only in chat messages or individual browser histories.
Step 10: Verify early data
After launch, review a small amount of real campaign traffic.
Check for:
- Unexpected capitalization
- Incorrect medium values
- Missing campaign names
- Broken redirects
- Duplicate campaign rows
- Unexpected direct or referral traffic
- Platform values that differ from the planned taxonomy
Early verification can prevent a small mistake from continuing through the full campaign.
Step 11: Review results in context
Campaign reporting should connect campaign identity with meaningful outcomes.
Ask:
- Did the intended audience reach the landing page?
- Which channels created engaged visits?
- Which placements contributed useful traffic?
- Did the campaign generate the desired action?
- What measurement limitations should be acknowledged?
- Which naming decisions worked well?
- What should be improved before the next campaign?
Step 12: Preserve the learning
Update:
- Campaign notes
- Naming examples
- Approved values
- Placement records
- Redirect destinations
- Reporting definitions
The tracking system should become easier to use with each campaign.
Diagram: Plan, Standardize, Build, Test, Launch, Verify, Learn, then Improve the foundation, which feeds back into applying lessons to the next campaign.
Campaign-Launch Checklist
Use this checklist before distributing a campaign link.
Campaign structure
- The campaign has one clear, shared name.
- The campaign name matches the approved naming convention.
- Related channels use the same campaign value.
- Source and medium values follow the team’s standards.
- Capitalization is consistent.
- Separators are consistent.
- No private or personally identifiable information appears in the parameters.
Destination
- The destination page is correct.
- The preferred domain and protocol are used.
- The landing page is live.
- Existing query parameters have been preserved.
- Anchor links work when applicable.
- The page works on desktop and mobile.
UTM parameters
utm_sourceidentifies the specific origin.utm_mediumidentifies the channel.utm_campaignidentifies the initiative.utm_contentis used only when it preserves a useful variation.utm_termis used only when it has a documented purpose.- Each parameter appears only once.
- The final URL contains no spaces or accidental line breaks.
Channel and platform setup
- Paid-platform auto-tagging has been considered.
- Manual parameters do not unintentionally conflict with platform tracking.
- Dynamic parameter templates have been tested.
- Organic and paid placements use distinct medium values.
- Partner links point to the correct tracked destination.
Short links and QR codes
- The short link redirects to the tracked destination.
- The redirect preserves the UTM parameters.
- The branded short URL is spelled correctly.
- The QR code contains the intended short or tracked link.
- The QR code has been tested using more than one device.
- The code is readable at its final printed size.
- Each meaningful physical placement has a distinct identifier.
- A record of the short link or QR destination has been saved.
Analytics verification
- The full distributed link has been opened in a clean test session.
- The visit appears in real-time or debugging tools.
- The expected source is captured.
- The expected medium is captured.
- The expected campaign is captured.
- Important events or conversions work on the landing page.
- Someone other than the link builder has reviewed the final setup when practical.
Frequently Asked Questions
What is campaign tracking?
Campaign tracking is the practice of intentionally identifying marketing traffic before visitors reach a website.
It usually involves adding UTM parameters to destination URLs so analytics platforms can associate visits and outcomes with a source, medium, campaign, and optional creative details.
What are UTM parameters?
UTM parameters are campaign identifiers added to the query string of a URL.
The five most commonly used parameters are:
utm_source
utm_medium
utm_campaign
utm_content
utm_term
They provide context without changing the destination page.
Which UTM parameters should I always use?
For manually tagged links, use:
utm_source
utm_medium
utm_campaign
Use utm_content when you need to distinguish a placement or creative variation.
Use utm_term when a keyword or documented targeting value adds useful information.
Should I use UTMs on internal website links?
No.
UTMs should identify a new external campaign interaction. Using them on internal links can overwrite or distort the campaign information associated with the session.
Use event tracking or internal link identifiers when you need to evaluate on-site navigation.
Should every external link use UTMs?
No.
Use UTMs on links you control when you need to identify a marketing campaign sending traffic to a property you measure.
You generally do not need to add UTMs to:
- Ordinary editorial links
- Natural backlinks
- Internal website navigation
- Links to websites whose analytics you cannot access
- Links where campaign identification provides no useful purpose
Do QR codes automatically track visits?
No.
A QR code encodes a URL. Campaign tracking comes from the UTM parameters or redirect structure associated with that URL.
A QR platform may record scans or redirect requests, but that is separate from campaign identification in website analytics.
Is a shortened URL the same as a tracking link?
No.
A shortened URL redirects to another URL.
A tracking link contains campaign identifiers.
A short link can redirect to a tracking link, allowing the two to work together.
Does shortening a URL remove its UTMs?
A properly configured short link should redirect to the full destination, including its UTM parameters.
A poorly configured redirect may remove them.
Always test the final short link.
Can I change UTMs after a campaign launches?
You can change the destination of a managed short link or dynamic QR code when the redirect system allows it.
The change only affects future clicks.
Previously collected campaign data does not change retroactively.
A static URL already published in an email, advertisement, or printed piece cannot be edited unless the source asset itself can be changed.
Can several channels use the same campaign name?
Yes.
That is often the clearest way to identify one coordinated initiative across multiple channels.
For example:
linkedin / paid_social / spring_launch
customer_newsletter / email / spring_launch
partner_association / referral / spring_launch
The shared campaign name connects the work. The source and medium values preserve the channel differences.
Should the source be the platform or the sender?
Either can work if the definition is clear and consistent.
For email, a team might use:
utm_source=klaviyo
or:
utm_source=customer_newsletter
The platform-based structure helps compare sending systems. The publication-based structure can remain stable if the organization changes platforms.
Choose based on the questions the team needs to answer.
Should I use qr as the medium?
You can, but consider what you want the medium to represent.
qr identifies the access mechanism. It does not preserve whether the code appeared on packaging, print, signage, or another offline placement.
An alternative is:
utm_medium=print
utm_content=brochure_qr
or:
utm_medium=offline
utm_content=retail_display_qr
Document whichever model the organization chooses.
Do UTMs make attribution accurate?
They make campaign identification more intentional.
They do not eliminate measurement limitations involving consent, browsers, devices, offline interactions, attribution windows, platform differences, or incomplete analytics implementations.
UTMs are part of a trustworthy measurement foundation, not a complete attribution system.
Why do campaign numbers differ between an advertising platform and GA4?
The systems may measure different units and use different rules.
An advertising platform might report ad clicks. GA4 may report sessions or users.
Differences may also result from:
- Consent choices
- Ad blockers
- Redirect failures
- Time-zone differences
- Attribution windows
- Invalid-traffic filtering
- Repeat clicks
- Session definitions
- Cross-device behavior
A campaign identifier helps compare the records, but it does not make the measurement systems identical.
Why is one campaign split into several rows?
Common causes include:
- Capitalization differences
- Different separators
- Spelling errors
- Platform-generated naming variations
- Mid-campaign naming changes
- Duplicate campaign names
- Inconsistent source or medium values
Compare the exact strings, not only how they appear at a glance.
Can UTM values contain spaces?
Browsers can encode spaces, but spaces make raw URLs harder to read and can be represented differently across systems.
Use a consistent separator such as:
spring_launch
or:
spring-launch
Should campaign names include dates?
Include dates when they help distinguish repeating campaigns.
Examples:
annual_conference_2026
year_end_appeal_2026
Avoid unnecessary dates when they create clutter or become incorrect after scheduling changes.
Does GA4 create UTM parameters?
GA4 reads campaign parameters that arrive with the visit.
A URL builder, marketing platform, advertising platform, template, or marketer creates the values.
Some advertising systems use auto-tagging or dynamic values instead of requiring each UTM to be typed manually.
Can I use one tracking link everywhere?
You can, but you will lose the ability to distinguish the individual placements.
Use one campaign name across related work, then vary source, medium, or content to preserve the context of each channel and placement.
How detailed should campaign tracking be?
Detailed enough to answer meaningful questions, but not so detailed that the system becomes difficult to maintain.
Start with:
source
medium
campaign
Add content or term values when they preserve a distinction you expect to interpret.
A Thought on Tracking
Campaign tracking is not the most visible part of marketing.
The audience sees the advertisement, email, QR code, article, landing page, event sign, or product package. They do not see the naming convention behind the link.
But that quiet structure determines what the organization can understand later.
A thoughtfully identified campaign creates a reference point between the work that was planned and the activity that followed. It gives future reporting a stronger foundation. It helps one marketer understand another marketer’s decisions. It preserves context that would otherwise depend on memory.
The goal is not to build the most elaborate tracking system.
The goal is to build one that can be trusted.
That begins with a few deliberate decisions:
- Use clear source and medium values
- Connect related work with one campaign name
- Preserve meaningful variations
- Apply the same standards across the team
- Test the complete visitor path
- Acknowledge what the data can and cannot explain
Small inconsistencies compound into fragmented reporting.
Small acts of care compound into clarity.
Growth starts before the click.
Summary
Campaign tracking identifies the marketing interactions that bring people to a website.
A reliable foundation usually includes:
utm_sourceto identify where traffic came fromutm_mediumto identify the channelutm_campaignto identify the shared initiativeutm_contentto distinguish meaningful variationsutm_termwhen a keyword or targeting value is useful
Tracking links, shortened links, QR codes, analytics, and attribution each serve different purposes. They can work together, but one does not automatically replace the others.
UTMs will not make analytics perfect. They will make the campaign information supplied to analytics more deliberate, consistent, and useful.
A Practical Next Step
Before launching your next campaign, define three values:
Source
Medium
Campaign
Write them down before building the link.
Then ask:
- Would another marketer understand these values?
- Will they still make sense six months from now?
- Do they match the values used in earlier campaigns?
- Are they specific enough to answer the question without creating unnecessary detail?
That small step creates a stronger foundation for everything that follows.
The free Waytrace Link Builder provides a structured way to build campaign URLs using the principles in this guide. Use it to create your next tracking link, review how the parameters fit together, and begin establishing a system that works consistently across your campaigns.