All networks
X Ads (Twitter)
Tracking reference · Social

X Ads (Twitter) tracking tokens & macros

X Ads is the most minimal network in this entire directory: it has exactly one token, an auto-appended click identifier called twclid, and nothing else. Where Google, Meta, and most other platforms give you a stack of campaign, ad group, and creative macros to type in, X provides none of that — twclid attaches itself automatically once click tracking is on, full stop. ValidVisit still attributes and scores each visit 0-100, but the campaign- and ad-level breakdown has to come from your own UTM parameters rather than anything X supplies.

Cross-check any macro against the network’s official documentation. X Ads (Twitter) official docs →

1
X Ads (Twitter) macros mapped to attribution
1
required for attribution
no-hop
one script, no link rewriting
0–100
quality score on every visit

There's genuinely nothing else to configure here. twclid is required, and it isn't a macro you place in a tracking template the way {campaign_id} or {{AD_ID}} work on other networks — it's appended to the destination URL automatically through X's auto-tagging once conversion tracking is switched on in Ads Manager, the same underlying pattern as Google's gclid or Meta's fbclid. X doesn't expose a campaign ID, ad group ID, ad ID, or creative ID macro at all, so if you want that level of detail in your own reporting you have to build it yourself, typically by appending your own UTM parameters (utm_campaign, utm_content, and so on) alongside twclid on the same destination URL. ValidVisit reads whatever's present — twclid for the click-level identity, your own UTM values for the sub-source breakdown — and combines them into the attribution and 0-100 quality score.

Because X itself doesn't hand you a campaign or ad identifier, the sub-source picture only exists if you build it into your own UTM structure before launch — skip that step and every visit collapses into one undifferentiated X number no matter how many campaigns are actually running. ValidVisit will score whatever granularity you give it, but it has no reach into X's own ad platform and can't pause a campaign or reallocate spend on its own; it only ever detects, scores, and reports. If your UTM-tagged breakdown shows a specific campaign or ad group scoring consistently worse, the fix is manual: pause that campaign, tighten its targeting, or shift budget toward the ones whose traffic holds up, all from inside X Ads Manager itself.

MACRO MAP

X Ads (Twitter) macro → ValidVisit param

Click ID (twclid) *click
X Ads (Twitter) macro
(auto-tagging)
ValidVisit param
twclid
Example
abc123xyz

* required for X Ads (Twitter) attribution.

TRACKING URL

Ready-to-use X Ads (Twitter) tracking URL

x-ads tracking URL
https://yoursite.com/landing
?utm_source=x-ads
&utm_medium=social

Append these params to your landing-page URL — X Ads (Twitter) fills the macros at click time, so every visit arrives attributed and ready to score. No funnel hop.

Found a bad app? Exclude it in X Ads (Twitter)

The buyer types the bad publishers' @usernames into the Excluded Publishers field of the pre-roll ad group (max 50 handles for standard Content Categories, 5 for Curated Categories) or checks off the specific third-party apps to exclude in the X Audience Platform section of campaign setup — there is no bulk list upload

Both live in the Ads Manager campaign-creation flow: for website-traffic / app-install / re-engagement campaigns with the "X Audience Platform" box checked there is an optional "exclude your ad from certain apps" step (publisher/app-level exclusion); for Amplify pre-roll campaigns there is a separate Excluded Publishers field for blocking specific @handles
FAQ

X Ads (Twitter) tracking token FAQs

Why does X only have one token?+

X's ad platform simply doesn't expose campaign, ad group, or creative macros the way most networks do. twclid, the auto-appended click ID, is the only one it provides — everything else has to come from your own tagging.

How do I get campaign-level detail if X doesn't provide a macro for it?+

Append your own UTM parameters (utm_campaign, utm_content, etc.) to the same destination URL alongside twclid. ValidVisit reads both together, using twclid for click identity and your UTM values for the sub-source breakdown.

Do I need to add twclid manually?+

No — it's appended automatically through X's auto-tagging once conversion tracking is enabled in Ads Manager, the same pattern as Google's gclid or Meta's fbclid. There's no macro to type in for it.

Is X Ads (Twitter) traffic real? See how ValidVisit scores every X Ads (Twitter) click for bots and invalid traffic.
arb-traffic.example12
zone 549153
city-times.example85

Score every X Ads (Twitter) click — and find the fake ones.

See which X Ads (Twitter) publishers and placements send real buyers vs. bots.

Just your email · no card · unsubscribe anytime · privacy policy

Free trial at launch · just your email

One script · no cookies · no fingerprinting · raw IP never stored