Skip to content

How AnyTrack uses UTM parameters for campaign attribution and reporting. Includes standard parameter reference, recommended tracking templates, and best practices.

UTM parameters tell AnyTrack which campaign, ad set, and ad brought a visit. AnyTrack tracks every session and every conversion with or without UTM parameters. UTM parameters add the campaign detail to your reports. This guide explains where UTM parameters are located, why AnyTrack provides recommended tracking templates, and how to use them for accurate attribution and reporting.

UTM parameters are appended to the end of your destination URL as query string parameters after the ? character and separated by &.

Example:

https://example.com/landing-page?utm_source=facebook&utm_medium=cpc&utm_campaign=summer_sale&utm_id=123456

When a visitor clicks a link with UTM parameters, the AnyTrack Tracking Tag automatically collects these values and stores them with the visitor session data.

ParameterRequiredPurposeExample
utm_sourceYesIdentifies the traffic sourcegoogle, facebook, newsletter
utm_mediumYesIdentifies the marketing channel typecpc, email, organic
utm_campaignYesNames the specific campaignsummer_sale_2026
utm_idRecommendedHolds the campaign ID of any ad platform. Fills the GA4 Campaign ID123456789
utm_contentNoDifferentiates ad variations or ad setsbanner_ad, sidebar_cta
utm_termNoCollects keywords or ad namesrunning_shoes, ad_v1

UTM parameters are case-sensitive. Use lowercase consistently across all campaigns to avoid data fragmentation.

You add UTM parameters to an ad URL through a tracking template. Ad platforms can also add parameters to the URL on their own, with no tracking template.

ParameterAdded byWhat AnyTrack does with it
gclid, gbraid, wbraidGoogle Ads, when auto-tagging is onReads the Google click identifiers from the landing page URL. Conversion API delivery to Google Ads needs Starter or above
gad_campaignidGoogle AdsUses it as the last fallback for the campaign, when the URL has no other campaign parameter
UTM tagsMicrosoft Ads, when auto-tagging of UTM tags is onReads them as UTM parameters
UTM parameters for the source, the medium, the campaign ID, and the campaign nameTikTok Ads, when Auto-attach is onReads them as UTM parameters

Vendor references: Google auto-tagging, Google gad_* parameters, Google aggregate identifiers, Microsoft auto-tag values, and TikTok URL parameters.

To get the ad set ID and the ad ID in your reports, add the recommended tracking template.

AnyTrack provides platform-specific tracking templates for every supported ad platform in your dashboard under Tracking Pixels → Ads Integration.

Three reasons to use the recommended templates:

  1. Campaign-level attribution: Templates include standard UTM parameters and platform-specific ID parameters (ad_id, adset_id, placement). These ID-based parameters let AnyTrack match session data with campaign data from your ad platform API, producing accurate Campaign Reports.

  2. Cross-platform compatibility: Templates follow Google Analytics best practices so UTM data flows correctly into GA4, AnyTrack, and other analytics tools.

  3. Automatic verification: For Meta Ads, Google Ads, and TikTok Ads, the Verify Ads Settings button checks your ads and flags UTM issues. This works only with the recommended template structure. Microsoft Ads and ChatGPT Ads have no Verify Ads Settings button.

Each ad platform uses different dynamic tokens. AnyTrack provides pre-built templates:

  • Meta Ads: Dynamic tokens and bulk campaign updates
  • Google Ads: Account-level template with auto-tagging
  • TikTok Ads: Platform-specific tokens and Click ID tagging
  • Microsoft Ads: Custom template with platform-specific tokens

AnyTrack maps known platform UTMs automatically. Platforms like HubSpot and Mailchimp use their own UTM conventions. AnyTrack recognizes common patterns and maps them to correct campaign dimensions.

Keep existing UTMs with conditions. Preserve ID-based parameters (utm_id, ad_id, adset_id). You can customize name-based parameters (utm_campaign, utm_content, utm_term) to match your naming.

Add ID parameters if missing. AnyTrack aligns sessions with ad platform metrics (spend, impressions, ROAS) by campaign, ad set, and ad ID first. Do not rely on names: a name can change, and an ID does not. A missing campaign, ad set, or ad ID can break cost alignment in the Campaign Report. It does not break ad platform attribution.

Verify your setup. For Meta Ads, Google Ads, and TikTok Ads, use the VERIFY ADS SETTINGS button in your AnyTrack dashboard to check for UTM issues and get fix suggestions. See the setup validation checklist for full verification steps.

AnyTrack uses UTM parameters for two functions: campaign-level attribution and campaign reporting. AnyTrack does not need UTM parameters to track a conversion or to send a conversion through the Conversion API.

When a visitor lands from an ad, AnyTrack collects UTM parameters and stores them in the visitor session. When the visitor converts (purchase, lead, registration), AnyTrack links the conversion to the visitor and credits the first or the last ad click. You select the model in the Campaign Report.

This means:

  • AnyTrack reads utm_source and utm_medium to identify which ad platform and channel drove the visit
  • If a visit has no UTM parameters, AnyTrack identifies the source from the ad platform click identifier or the referrer
  • AnyTrack uses utm_id, ad_id, and adset_id to pinpoint the exact campaign, ad set, and ad
  • If a visit has no utm_id, AnyTrack reads the campaign from utm_campaign, then from other campaign parameters in the URL, and last from gad_campaignid

Unlike ad platform self-attribution, AnyTrack applies attribution across all traffic sources, not just one platform. Learn more in the Attribution Explained guide.

The Campaign Report in AnyTrack merges three data sources:

  1. Ad platform data: Impressions, clicks, spend pulled via API
  2. AnyTrack session data: Visitor sessions with UTM parameters and customer journey events
  3. Server-side conversion data: Purchase events, leads, and registrations from conversion sources

UTM parameters connect these datasets. When your template includes utm_id, adset_id, and ad_id, AnyTrack can drill down from campaign level to ad set to ad level with cost and revenue aligned.

AnyTrack aligns cost by campaign, ad set, and ad ID first. Do not rely on names: a name can change, and an ID does not. Google Performance Max campaigns need the campaign ID only.

A missing campaign, ad set, or ad ID can break cost alignment in the Campaign Report. It does not break ad platform attribution. The ad platform shows the conversion in its own reports, and the Attributed Results and Attributed Revenue columns show the same result for Meta Ads, Google Ads, TikTok Ads, ChatGPT Ads, and Microsoft Ads. Taboola and Outbrain do not sync these columns.

  • Use lowercase consistently: utm_source=Facebook and utm_source=facebook are treated as separate sources
  • Do not use UTMs on internal links: Adding UTM parameters to your own website links overwrites the original traffic source
  • Always include utm_source, utm_medium, and utm_campaign: These three are minimum for any analytics platform
  • Add utm_id for ad campaigns: utm_id holds the campaign ID of any ad platform. GA4 fills its Campaign ID from utm_id, and AnyTrack reads utm_id first for the campaign
  • Do not pass unique values in utm_medium: Use standard values (cpc, email, social), not campaign IDs or ad names. Unique values break GA4 channel grouping
  • Test URLs before launching: Click tagged URLs and verify parameters appear in your AnyTrack real-time dashboard
  • Avoid common mistakes: See the UTM Common Mistakes guide for the seven most frequent UTM errors

UTM Parameters FAQ

FAQ was last reviewed on 2026-11-11

Where are UTM parameters located in a URL?
UTM parameters are located at the end of your destination URL, after the ? character. Each parameter is a key-value pair (like utm_source=google) and multiple parameters are separated by the ampersand character. When a visitor clicks this URL, the AnyTrack Tracking Tag automatically reads these parameters from the browser address bar and stores them with the visitor session.
Why should I use the recommended UTM template instead of my own?
The recommended templates include both standard UTM parameters and platform-specific ID parameters (utm_id, ad_id, adset_id). These ID parameters are essential because AnyTrack uses them to match your visitor session data with the campaign data pulled from your ad platform API. Without them, your Campaign Report can fail to align spend, impressions, and clicks with conversions and revenue at the ad set and ad level.
What if I am already using my own UTM parameters?
AnyTrack maps known platform UTM conventions automatically (including HubSpot, Mailchimp, and other common tools), so in many cases your existing UTMs will work. The key requirement is that your UTMs include ID-based parameters (utm_id, ad_id, adset_id) alongside the name-based ones. If your current setup does not include these, add them from the recommended template. For Meta Ads, Google Ads, and TikTok Ads, use the VERIFY ADS SETTINGS button in your dashboard to check for issues.
How does AnyTrack use UTM parameters for attribution?
AnyTrack collects UTM parameters when a visitor lands on your site and stores them in the visitor session. When a conversion happens (purchase, lead, registration), AnyTrack links it to the visitor and credits the first or the last ad click. It uses utm_source and utm_medium to identify the channel, and utm_id, ad_id, adset_id to pinpoint the exact campaign, ad set, and ad. Without UTM parameters, AnyTrack still tracks the conversion and reports its source and medium.
Do I need UTM parameters for the Conversion API to work?
No. Conversion API delivery does not depend on UTM parameters. Ad platforms add their own click identifier to each ad click: gclid for Google Ads, fbclid for Meta. AnyTrack collects the click identifier and tracks the conversion. AnyTrack then sends the conversion to the ad platform through the Conversion API with the click identifier, the client identifiers, and hashed customer data that it has collected. The ad platform attributes the conversion and shows the conversion in its ads manager. For Meta Ads, Google Ads, TikTok Ads, ChatGPT Ads, and Microsoft Ads, the Attributed Results and Attributed Revenue columns reflect the ads manager results. The Campaign Report still reports the conversion and traffic at the source and medium level. A conversion with a gclid reports as google / cpc. A conversion with an fbclid reports as facebook / social, because Facebook passes fbclid on both organic and paid clicks. UTM parameters add campaign-level attribution: AnyTrack matches conversions and traffic to the exact campaign, ad set, and ad, and aligns sessions with the campaign metrics AnyTrack imports from Meta Ads, Google Ads, TikTok Ads, ChatGPT Ads, and Microsoft Ads (cost, impressions, link clicks). Without UTM parameters, campaign fields show (not set) and campaign performance is not available. On Google Ads, AnyTrack reads the campaign from gad_campaignid when the URL has no other campaign parameter. The ad set and ad fields still show (not set). Add the recommended UTM template from Tracking Pixels → Ads Integration.
Do ad platforms add URL parameters on their own?
Yes. Google Ads adds gclid when auto-tagging is on, and also adds gbraid, wbraid, gad_source, and gad_campaignid. Microsoft Ads auto-tagging can add UTM tags. TikTok Auto-attach adds UTM parameters for the source, the medium, the campaign ID, and the campaign name. To get the ad set ID and the ad ID in your reports, add the recommended tracking template.
What happens if a campaign, ad set, or ad ID is missing from the URL?
AnyTrack tracks the session and the conversion, but the Campaign Report can fail to align them with cost at that level. For reliable alignment, use the recommended template with ID parameters. Ad platform attribution does not break. On Google Ads, AnyTrack reads the campaign from gad_campaignid when the URL has no other campaign parameter. The ad set and ad fields still show (not set).
Can I use UTM parameters alongside third-party tracking tools?
Yes. AnyTrack uses standard UTM parameters that are compatible with Google Analytics, HubSpot, and virtually all marketing platforms. Most third-party tracking tools use custom parameters (like tw_id or h_adid) that do not conflict with AnyTrack UTM parameters. You can safely append third-party parameters alongside the recommended template.