Free UTM Builder for X (Twitter)

X (formerly Twitter) traffic routes to "Organic Social" for organic tweets and "Paid Social" for promoted tweets. X is highly conversational, so utm_content often reflects tweet format (thread, reply, quote-tweet). Case sensitivity is critical—always use lowercase to avoid creating duplicate rows in GA4.

Organic X (Twitter)

Source: x
Medium: social
GA4 Channel: Organic Social

Paid X (Twitter)

Source: x
Medium: paid_social
GA4 Channel: Paid Social

Worked Examples

Build Your X (Twitter) UTM Link

Must start with http:// or https://

Automatically fills source and medium with opinionated defaults

Required Parameters

Where traffic comes from (e.g., instagram, facebook, newsletter)

How traffic arrives (e.g., social, paid_social, email, cpc)

Campaign identifier (e.g., spring-2025-promo, product-launch)

Naming Convention Rules

  • Use lowercase only (GA4 is case-sensitive)
  • Replace spaces with hyphens
  • Use consistent vocab across campaigns
  • Follow a schema: brand-yyq-campaign or prod-yyyymm-promo
  • Never include PII (personally identifiable information)
  • Keep it short and descriptive

GA4 Channel Preview

Fill in the required fields to see which GA4 channel your traffic will appear in.

Generated URL

Fill in the required fields to generate your UTM-tagged URL

Common utm_content Values for X (Twitter)

postthreadprofile-linkcommunity-postreplyquote-tweetspace

Common Pitfalls

Case sensitivity causes duplicate rows

GA4 treats "X", "x", "Twitter", "twitter" as separate sources. Pick one format ("x" is recommended) and stick with it. Uppercase or mixed case will fragment your data.

Using spaces in parameters

Spaces break UTM tracking. Always replace spaces with hyphens: "product launch" becomes "product-launch". This prevents URLs from breaking when shared.

Not differentiating tweet types

Threads, single tweets, and quote-tweets perform differently. Use utm_content to track: "thread", "single-tweet", "quote-tweet" to understand what resonates.

X (Twitter) UTM FAQs

Should I use "x" or "twitter" for utm_source?

Use "x" for new campaigns to match the platform's current branding. If you have historical data with "twitter", keep using it for those campaigns to maintain continuity—but don't mix both.

How do I track X threads vs single tweets?

Use utm_content to differentiate: utm_content=thread for multi-tweet threads and utm_content=post for single tweets. Threads often have higher engagement and this helps you measure that.

Can I use UTMs in X bio links?

Absolutely. Bio links are a great use case. Use utm_content=profile-link to track clicks from your bio separately from tweet links.

Related X (Twitter) Resources