Ad content dimension: distinguishing creative variants
Ad content is the dimension fed by the utm_content parameter. Its job is to differentiate links or ad creatives that share the same source, medium, and campaign — for example two buttons in one email or two banner variants in one campaign. It does not affect channel attribution; it is purely a label for distinguishing creative or placement, which makes it ideal for A/B and link-position analysis.
What this means
When several links point to the same place under the same campaign, utm_content disambiguates them. GA4 surfaces it as the 'Manual ad content' dimension. Common values label a position ('header_cta' vs 'footer_cta') or a creative ('blue_banner' vs 'green_banner').
Crucially, ad content does not change which channel a visit is attributed to — it only adds a distinguishing label underneath.
How to use it without fragmenting reports
Because ad content is a free-text label, consistency is everything. If one email calls a variant 'v1' and the next calls it 'variant-1', they will not aggregate. Keep a controlled vocabulary so variants compare cleanly.
Avoid encoding unique identifiers (a per-recipient id) into utm_content: that both pollutes the dimension with high cardinality and risks embedding personal data into URLs.
- Fed by utm_content; labels creative or link position
- Does not affect channel attribution
- Keep values consistent or A/B reports fragment
How it appears in analytics and logs
An ad content value identifies which specific link or creative was clicked. If two variants share one utm_content, you lose the ability to compare them; inconsistent values fragment what should be a clean A/B comparison.
Diagnostic use case
Use ad content to compare creative variants or link positions within a single campaign, without splitting the campaign into separate sources.
What WebmasterID can help detect
WebmasterID parses utm_content at ingest so creative and placement variants can be compared within a campaign, all from first-party campaign tags.
Common mistakes
- Encoding per-user identifiers into utm_content.
- Using inconsistent content labels that never aggregate.
- Expecting ad content to change channel attribution.
Privacy and accuracy notes
Ad content carries a label you author, not personal data — provided you do not encode identifiers into it. WebmasterID reads utm_content first-party as a plain string.
Related pages
- Campaign dimension
The campaign dimension labels a visit with the marketing campaign that drove it. It is populated from the utm_campaign parameter on a tagged link, or auto-tagged by an ad platform's own click ID. Any visit without a campaign tag — most organic, direct, and untagged referral traffic — shows '(not set)', which is the absence of a campaign rather than a campaign named '(not set)'.
- Campaign ID dimension: the machine key for campaigns
Campaign ID is the dimension fed by the utm_id parameter (and by ad-platform IDs on auto-tagged traffic). Unlike the human-readable campaign name, the ID is a stable machine key meant to survive renames and to join analytics with ad-platform cost data. GA4 uses it to reconcile manual tags with imported campaign metadata, which makes it the durable join key for cross-system reporting.
- UTM parameters explained: the five tags and how to use them
UTM parameters are query-string tags you add to a link so analytics can attribute the visit to a campaign even when the referrer is missing. This page explains the five tags, a consistent naming convention, and the hard rule that UTM values are public — so they must never contain personal data or secrets.
- CTA tracking
Label call-to-action variants for clean ad-content comparison.
Sources and verification notes
- Google Analytics Help — [GA4] URL builders / utm parametersDocuments utm_content as the manual ad content parameter.
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.