All networks
Adskeeper
Tracking reference · Native

Adskeeper tracking tokens & macros

Adskeeper buys clicks across a wide pool of native widgets, so two clicks from the same campaign can come from very different publishers. Appending these macros to your landing-page URL lets ValidVisit attribute every visit back to its exact widget, then score that traffic 0-100 for quality so you can see which widgets are sending real readers and which are sending invalid traffic.

Cross-check any macro against the network’s official documentation. Adskeeper official docs →

4
Adskeeper macros mapped to attribution
1
required for attribution
no-hop
one script, no link rewriting
0–100
quality score on every visit

On Adskeeper, attribution rides on a handful of URL parameters the platform fills in at click time. The one that matters most for sourcing is {widget_id}, the publisher widget the click came from, and you'll usually pair it with {campaign_id} and {teaser_id} so you can split performance by campaign and creative too. The required token is {click_id}, Adskeeper's auto-generated unique id for each click, which gives ValidVisit a stable key to tie a click to its widget even when everything else looks identical. These are plain query parameters in curly-brace format, no funnel hop or extra hop needed; Adskeeper substitutes the real values as the visitor lands.

Per-widget granularity is the whole point, because Adskeeper's value lives at the widget level, not the campaign level. Once every click is tied to its {widget_id}, ValidVisit reports a 0-100 quality score for each widget so you can see exactly which publishers are padding your numbers with bots and IVT. ValidVisit only scores and reports, post-arrival, after the click has already landed; it never blocks anything. Acting on it is a manual step you take in Adskeeper: open the campaign's Widgets tab and Stop / Block the widgets that score badly, or blacklist the whole site if it's a repeat offender.

MACRO MAP

Adskeeper macro → ValidVisit param

Campaign IDcampaign
Adskeeper macro
{campaign_id}
ValidVisit param
vv_campaign_id
Example
55501
Teaser (Creative)creative
Adskeeper macro
{teaser_id}
ValidVisit param
vv_creative_id
Example
99012
Widget (Publisher)publisher
Adskeeper macro
{widget_id}
ValidVisit param
vv_publisher_id
Example
33044
Click ID *click
Adskeeper macro
{click_id}
ValidVisit param
vv_click_id
Example
ck_77

* required for Adskeeper attribution.

TRACKING URL

Ready-to-use Adskeeper tracking URL

adskeeper tracking URL
https://yoursite.com/landing
?utm_source=adskeeper
&utm_medium=native
&vv_campaign_id={campaign_id}
&vv_creative_id={teaser_id}
&vv_publisher_id={widget_id}
&vv_click_id={click_id}

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

Found a bad widget? Exclude it in Adskeeper

The buyer pastes/sets bad widget UIDs into the campaign’s widget filter (block/stop the widget in the Widget Optimization interface, or set widgetsFilterUid="except" + the UID list via API), or creates an auto-blocking rule that disables widgets/sub-sources meeting loss thresholds.

Campaign → Widget Optimization (Selective Bidding) tab; also rule-based auto-blocking (Create Rule) at widget or sub-source level, and API campaign field widgetsFilterUid with filter type "except"
FAQ

Adskeeper tracking token FAQs

Which Adskeeper token identifies the sub-source I should be watching?+

{widget_id}. It maps each click to the specific publisher widget that served your teaser, which is the unit you can actually act on in Adskeeper. {campaign_id} and {teaser_id} add campaign- and creative-level context, but {widget_id} is what ties a quality score to a sub-source you can stop.

Do I need a funnel hop or tracking link to use these macros?+

No. These are ordinary URL query parameters in Adskeeper's curly-brace format, like {widget_id} and {click_id}. You add them to your destination URL and Adskeeper replaces them with the real values on each click. There's no funnel hop, no extra hop, and {click_id} is required so every click carries a unique id.

Does ValidVisit block bad widgets automatically?+

No. ValidVisit attributes each visit to its {widget_id} and reports a 0-100 quality score after the click arrives. Excluding traffic stays in your hands: open the campaign's Widgets tab in Adskeeper and Stop / Block the low-scoring widgets, or blacklist the whole site if needed.

Is Adskeeper traffic real? See how ValidVisit scores every Adskeeper click for bots and invalid traffic.
stream-cache.example21
zone 887361
city-times.example82

Score every Adskeeper click — and find the fake ones.

See which Adskeeper 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