TrackFunnels

UTM Parameters

Chapter 4 β€” Additional & Custom UTM Parameters (utm_id and more)

Shad Malik
By Shad Malik Updated on Feb 14, 2026

GA4 includes new UTM fields that make your channel and creative analysis more accurate. You should use the utm_id parameter as the primary label to connect your campaign data across different platforms. Only add custom UTM parameters if they answer specific, recurring questions and your team can use them consistently.

GA4 adds fields that remove ambiguity in channel and creative analysis

Support for these parameters evolves. Confirm availability in your GA4 property and wire them to custom dimensions if needed.

Parameter What it captures GA4 availability (2026) Example values
utm_id Durable campaign identifier used for joins/imports Populates Campaign ID; available for non-Google cost import and as a dimension cmp-2026-013, lnkd-abm-t1-042
utm_source_platform The actual platform/vendor within a channel Custom dimension; may not appear in default Acquisition linkedin, meta, dv360, tiktok, hubspot-email
utm_creative_format Creative format taxonomy Custom dimension; best in Explorations/BigQuery single_image, carousel, video, native, ctv
utm_marketing_tactic Strategy label across buys Custom dimension; not in all canned reports abm, retargeting, prospecting, webinar, content_syndication

Notes:

  • These fields complement the five standard UTMs. Deep GA4 reporting specifics live in Chapter 14.
  • Some platforms auto-append tags. If you standardize on these GA4 additions, include them explicitly in final URLs.

Campaign ID (utm_id) is the single reliable join key

utm_id is a unique, durable identifier. GA4 stores it as Campaign ID and uses it as the join key for imported datasets such as LinkedIn, programmatic, or offline cost files.

Why it pays off in B2B:

  • Cross-vendor spend joins: Different exports, one key. utm_id keeps campaigns aligned across LinkedIn, content syndication, and programmatic when you import costs.
  • Offline-to-online stitching: Use the same utm_id on tradeshow QR codes and the surrounding digital campaign to roll up performance.
  • Safe experiments: Run multiple creative variants under the same campaign name while separating them with distinct utm_id values to avoid collisions in imports and reporting.

Implementation snapshot (parameter mechanics only):

  • Pick a consistent ID pattern you can generate reliably (for example, cmp-YYYY-SEQ).
  • Append utm_id to every campaign URL. Match the same value in cost/import files.
  • Maintain a lookup for utm_id β†’ campaign attributes in your warehouse or BI. Keep utm_campaign human-friendly; let utm_id carry the joins.

Consider a Q3 ABM push running on LinkedIn and a syndication vendor. Both use utm_id=cmp-2026-045. Weekly cost files reference cmp-2026-045. GA4 merges spend with sessions on that ID instead of fragile name-matching.

Myth Debunk:
Treating utm_campaign as your β€œcampaign ID” breaks cost joins.
GA4 uses utm_id as the Campaign ID for joining imported data. Keep utm_campaign human-readable; let utm_id be the stable, unique key.

Disambiguate platform, creative, and tactic without polluting standard fields

  • utm_source_platform clarifies the vendor when you standardize source for channel mapping. If you use utm_source=paid_social to keep channel grouping clean, add utm_source_platform=linkedin to compare LinkedIn vs. other social buys without breaking channel rules.
  • utm_creative_format captures the creative type without stuffing values into utm_content or utm_term. For a whitepaper launch, tag single-image and carousel variants and inspect CTR and CVR in Explorations.
  • utm_marketing_tactic labels the strategy behind the click. For mid-funnel sequences, use retargeting; for Tier 1 account outreach, use abm. This enables funnel velocity analysis later without renaming campaigns.

Sample URL:

https://example-b2b.com/pricing?utm_source=paid_social&utm_medium=paid&utm_campaign=q3_abm_t1&utm_id=cmp-2026-013&utm_source_platform=linkedin&utm_creative_format=carousel&utm_marketing_tactic=abm

Custom UTM parameters reflect your operating model

Analytics tools do not auto-capture custom utm_* fields. Plan to map them to custom dimensions or route them into your data pipeline.

Common B2B parameters that earn their keep:

UTM Possible Value/s Purpose
utm_region na / emea / apac Route performance by geo program. Example: Compare APAC webinar ROI vs EMEA field event ROI under the same core campaign.
utm_persona cfo / ciso / vp_it Track how messaging performs by buying role without embedding roles into campaign names.
utm_segment abm_tier1 / abm_tier2 / smb Separate account tiers or market segments for pipeline analysis.
utm_industry finserv / healthcare / manufacturing Attribute content resonance by vertical when running verticalized landing pages.
utm_partner_id pnr-019 Attribute partner-sourced clicks in co-marketing initiatives.
utm_content_theme zero_trust / genai_security Group content families across dozens of assets.

Capturing custom parameters (focused on mechanics):

  • In GA4, create custom definitions that match the parameter name without the utm_ prefix (for utm_persona, define β€œpersona”). Use session scope for session-level reporting; use event scope for hit-level analysis.
  • Validate in Realtime, then confirm population in standard reports, Explorations, or BigQuery export.
  • If you use a non-GA4 stack, create equivalent custom dimensions/event properties to ingest these parameters.

An ABM team can tag utm_persona=cfo and utm_segment=abm_tier1, register both as session-scoped dimensions, then review demo rate by persona within Tier 1 accounts to guide creative refresh.

Only add custom parameters that will survive your next planning cycle

Use them when:

  • A recurring reporting question cannot be answered with standard UTMs.
  • Values can be standardized and enforced by the team.
  • The parameter will stay stable for months or quarters to protect historical reporting.
  • The dimension is useful across multiple channels or vendors.

Keep the parameter layer lean to prevent reporting noise

  • Keep parameter names short and consistent (utm_persona, not utmTargetPersonaRole).
  • Use controlled lists for values (naming rigor is in Chapter 8; apply only the final lists here).
  • Do not include personally identifiable information in any UTM value.

Quick reference: configurations to get inspired from

Use case Parameter(s) Capture method B2B payoff
Cross-channel cost joins utm_id Native Campaign ID + cost import Clean spend-to-session attribution across vendors
Vendor granularity within a channel utm_source_platform Custom dimension Compare platform efficiency while preserving channel groupings
Creative testing utm_creative_format Custom dimension Fast, readable views of creative impact
Strategy/tactic labeling utm_marketing_tactic Custom dimension Separate ABM, retargeting, prospecting outcomes
Audience/region insights utm_persona, utm_region, utm_segment Custom dimensions Reliable breakdowns by role, geo, and segment

A campaign dictionary turns utm_id into a universal key

Maintain a simple campaign dictionary outside your analytics tool, keyed by utm_id. Map attributes you care about: readable campaign name, product line, budget, segment, region, tactic, and flight dates.

  • You can change naming conventions later without breaking joins.
  • GA4 imports, BI models, and your warehouse all reference the same immutable key.
  • Your link builder can auto-fill utm_source_platform, utm_creative_format, and utm_marketing_tactic from the dictionary to cut tagging errors.
TrackFunnels Expert Tip:
Reserve utm_source for stable channel mapping and push vendor detail into utm_source_platform. This keeps channel groupings intact while giving you head-to-head platform comparisons in Explorations and BigQuery.
Try This Now Assignment

Build a 60-second GA4-ready URL and validate capture:

1) Pick any public page of your site. Append:

  • utm_source=paid_social
  • utm_medium=paid
  • utm_campaign=q3_abm_t1
  • utm_id=cmp-2026-999
  • utm_source_platform=linkedin
  • utm_creative_format=carousel
  • utm_marketing_tactic=abm
HTML
?utm_source=paid_social&utm_medium=paid&utm_campaign=q3_abm_t1&utm_id=cmp-2026-999&utm_source_platform=linkedin&utm_creative_format=carousel&utm_marketing_tactic=abm

2) Open the URL in a fresh browser session.

3) In GA4 Realtime, confirm:

  • Session campaign ID shows cmp-2026-999.
  • Your custom dimensions (if configured) populate for source_platform, creative_format, and marketing_tactic.

If Realtime does not show custom fields, create matching custom definitions and retry.

Test your knowledge

Loading quiz questions...