Tracking on Meta Ads runs on URL parameters you append to your destination link, with Meta filling in dynamic macros like {{campaign.id}} and {{adset.id}} at click time and auto-tagging the click with an fbclid. Append these macros and ValidVisit can attribute every click back to its exact sub-source inside Meta and score it 0-100 for traffic quality.
Meta resolves its macros server-side, so {{campaign.id}} is the required anchor and {{adset.id}} plus {{ad.id}} let ValidVisit narrow each click down to the specific ad set and creative driving it, while {{placement}} tells you whether the click came from Feed, Reels, or the Audience Network. The fbclid click id is added automatically by auto-tagging rather than as a macro you type, so as long as your URL carries the campaign, ad set, ad, and placement parameters, every arriving click is tied to a real sub-source rather than an anonymous lump of "Meta traffic".
That per-placement granularity matters because Meta is a walled platform with no per-publisher blacklist, so once ValidVisit shows which placements are sending low-quality or invalid traffic (IVT), you can act on the Audience Network opt-out, block lists, and refund claims levers: turn off Audience Network, apply publisher block lists where Meta offers them, pause the worst-performing ad sets, and request invalid-click credits. ValidVisit only reports and scores the traffic after it arrives, it never blocks a click or changes your campaign, so every opt-out, pause, or refund claim is something you do manually in Meta Ads Manager using that evidence.
| Token | Meta Ads macro | ValidVisit param | Example |
|---|---|---|---|
| Campaign ID *campaign | {{campaign.id}} | vv_campaign_id | 120000 |
| Ad Set IDadset | {{adset.id}} | vv_adset_id | 120001 |
| Ad IDad | {{ad.id}} | vv_ad_id | 120002 |
| Placementplacement | {{placement}} | vv_placement_id | feed |
| Click ID (fbclid) *click | (auto-tagging) | fbclid | IwAR… |
{{campaign.id}}vv_campaign_id{{adset.id}}vv_adset_id{{ad.id}}vv_ad_id{{placement}}vv_placement_id(auto-tagging)fbclid* required for Meta Ads attribution.
https://yoursite.com/landing?utm_source=meta-ads&utm_medium=social&vv_campaign_id={{campaign.id}}&vv_adset_id={{adset.id}}&vv_ad_id={{ad.id}}&vv_placement_id={{placement}}&fbclid=(auto-tagging)Meta is walled — no per-publisher blacklist. Use ValidVisit's per-placement evidence to turn off Audience Network, apply publisher block lists where offered, pause the worst ad sets, and request invalid-click credits.
There is no per-publisher token because Meta is walled, but {{placement}} tells you whether a click came from Feed, Reels, or the Audience Network, and {{campaign.id}}, {{adset.id}}, and {{ad.id}} pin each click to the exact campaign, ad set, and creative. Together they are the closest thing to a sub-source on Meta, and ValidVisit scores quality for each combination.
No. These are plain URL parameters appended to your destination link; Meta substitutes the macro values at click time and adds the fbclid via auto-tagging. No funnel hop, link wrapper, or extra hop is required.
Add them in the URL parameters or destination URL field at the ad level in Meta Ads Manager. Make sure auto-tagging is on so the fbclid is captured, and that {{campaign.id}} is present since it is the required anchor for attribution.
See which Meta Ads publishers and placements send real, converting traffic vs. bots.
Free trial at launch · lock in early-access pricing
One script · raw IP never stored · GDPR legitimate-interest basis