A tagged TrafficJunky destination URL looks like yoursite.com/landing?clickid={ACLID}&site={SiteName}&spot={SpotName}&camp={CampaignID}&ad={AdID}&ban={BanID}. Six tokens cover the click, the site, the ad spot, the campaign, the ad and the banner. TrafficJunky replaces them with real values when the ad is served, and ValidVisit reads them on arrival, so every visit is attributed to the site and spot that served it, then judged Valid or Invalid, with its evidence.
Cross-check any macro against the network’s official documentation. TrafficJunky official docs →
You add the tokens in Step 5 of campaign creation, where TrafficJunky lists the available ones below the target URL field; click one to insert it. {ACLID} is TrafficJunky's click ID. It's added to each click, and TrafficJunky asks that it be kept through the visitor's session and sent back on the postback, so the conversion is attributed to the original click. ValidVisit stores it on the visit. {CampaignID}, {AdID} and {BanID} name the campaign, the ad and the banner. {SiteName} names the site that sent the traffic, which TrafficJunky's own UTM example uses as the source, and {SpotName} names the ad spot, the placement on that site.
Site and spot are the two levels to read verdicts at. One site can carry several spots, so ValidVisit's invalid share per {SpotName}, beside its {SiteName}, shows whether to drop one spot or the whole site. TrafficJunky's FAQ also lists {SourceName}, {Location} and {BidValue}, and invites advertisers to ask if a tracker needs other tokens. ValidVisit doesn't touch your TrafficJunky campaign; dropping a spot or a site is yours to do.
| Token | TrafficJunky macro | ValidVisit param | Example |
|---|---|---|---|
| Click ID *click | {ACLID} | vv_click_id | a1b2c3d4e5f6g7h8 |
| Campaign ID *campaign | {CampaignID} | vv_campaign_id | 1002392921 |
| Ad IDad | {AdID} | vv_ad_id | 55012345 |
| Banner / Creative IDcreative | {BanID} | vv_creative_id | 7890123 |
| Publisher Site Namepublisher | {SiteName} | vv_publisher_id | pornhub.com |
| Spot nameplacement | {SpotName} | vv_placement_id | Header Banner 300x100 |
{ACLID}vv_click_id{CampaignID}vv_campaign_id{AdID}vv_ad_id{BanID}vv_creative_id{SiteName}vv_publisher_id{SpotName}vv_placement_id* required for TrafficJunky attribution.
https://yoursite.com/landing?utm_source=trafficjunky&utm_medium=banner&vv_click_id={ACLID}&vv_campaign_id={CampaignID}&vv_ad_id={AdID}&vv_creative_id={BanID}&vv_publisher_id={SiteName}&vv_placement_id={SpotName}Append these params to your landing-page URL — TrafficJunky fills the macros at click time, so every visit arrives attributed and ready to judge. No funnel hop.
Carries a per-click id, stored with each visit so a verdict traces back to the click.
Tokens last verified against TrafficJunky’s docs on 2026-10-02.
With a list of bad {SiteName}/{SpotName} pairs, the buyer edits the campaign, sets Source Selection to Manually in Step 3 and leaves those sources unselected (the default, Automatically (All), runs on every available source), or adds a Rule that excludes underperforming sources.
{ACLID}. TrafficJunky calls it the most important parameter for conversion tracking: it's the click ID its postback needs to attribute a conversion. {CampaignID} identifies the campaign; the other tokens add detail.
{SiteName} names the site that sent the traffic; {SpotName} names the ad spot on it. TrafficJunky's own UTM example uses {SiteName} as the source and {SpotName} as a content tag.
Yes. TrafficJunky's FAQ suggests utm_campaign={CampaignID}, utm_source={SiteName}, utm_medium=TrafficJunky and utm_content={BanID} or {SpotName}. ValidVisit reads the UTM tags and the tokens on the same visit.
TrafficJunky lists {SourceName} among its common tokens next to {SiteName}, but its FAQ doesn't spell out how the two differ. If you add it, compare the values on your first visits before choosing which one to report on.
See which TrafficJunky publishers and placements send real buyers vs. bots.
Join the waitlist with just your email · 7-day trial at launch
One script · no cookies · no device IDs · raw IP never stored