Adskeeper
Native
Native channel · scored 0–100

Which Adskeeper publishers send bots and invalid traffic?

Not all Adskeeper traffic is equal. ValidVisit scores every visit 0–100 and pins it to the exact publisher that sent it — so you can tell real humans from bots and invalid clicks, worst publishers first.

validvisit · adskeeper cut-list
Exclude the bad widget 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.

Where: 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"
Controls in Adskeeper’s campaign settings
IP lists OS OS version Browser Browser version Language Device Connection

ValidVisit reports the device, OS, browser — down to the version — plus the language and ISP behind every flagged visit, and Adskeeper supports OS version, browser, language, device type and connection type targeting. The segments we flag are segments you can exclude.

4
Adskeeper tokens mapped to attribution
1
sub-source dimensions scored
per-click
unique id — velocity & dedupe checks
0–100
quality score on every visit
01 / SIGNAL

How invalid traffic slips in through Adskeeper publishers.

Adskeeper is a self-serve native-teaser network in the MGID family, distributing recommendation widgets across a broad base of publisher sites. Like other native inventory, quality varies sharply by widget, and the CPC teaser model gives some placements an incentive to maximise clicks over outcomes. Adskeeper passes a {widget_id} on every click — the specific widget/site placement, and the highest-resolution unit you can block — plus {teaser_id}, {campaign_id} and a {click_id}. ValidVisit captures those on arrival and grades each visit on a 0–100 scale, weighing 100+ independent data points — the network it came from, the device behind it and how the visitor actually behaves — into one quality score, so genuine humans pass and bots stand out. The result is reported as invalid traffic per widget, so you can act on the exact placements rather than the network as a whole.

Because Adskeeper syndicates its recommendation widget across thousands of publisher pages in the MGID network, the network can’t fully vet what happens upstream of each {widget_id} — and that gap is where most of its invalid traffic originates. Two mechanisms account for most of it, and they look different once you separate them. Scripted HTTP clients and stripped-down browser builds account for the more mechanical share: a widget click takes several hops to complete, and each hop is a chance for the tooling behind the request to leave a technical or behavioural trace that no real browsing session leaves.

The more common mechanism is commercial rather than mechanical: a publisher buys cheap pop or push traffic, drops it onto a content page carrying the widget, and lets the resulting impressions and clicks pad its numbers. Because that traffic arrives through an actual browser at an actual publisher URL, a plain IP blocklist can’t tell it apart from anything else — ValidVisit instead weighs the connection, the device and the session’s behaviour together, which is what catches it even when the click is routed through a residential-looking proxy. What’s left over is ordinary people who landed on the page and clicked the widget without much real interest; the quality score keeps that group apart from both of the above, since a bot-heavy {widget_id} is worth blocking outright while a merely low-intent one is often better handled with a lower bid. Whichever bucket a click falls into, {widget_id} is what the finding attaches to.

What to watch on Adskeeper

Widget ({widget_id}) IVT distribution

Rank active {widget_id} values by quality score and by the share of visits in the suspect/invalid tier. Widgets above your campaign baseline are block candidates in the Widgets tab.

Proxy / hosting concentration per widget

Publishers padding their widget numbers with bought traffic commonly funnel it through residential or hosting proxy pools. ValidVisit attributes each of those origin reads to the {widget_id}, so you can shut off the offending placement without losing widgets that are actually converting.

Automated-click rate within a widget

When a single {widget_id} shows a spike in visits that score low despite a plausible browser footprint, that points to scripted clickers rather than real people — the kind of pattern that only emerges once you weigh device and behaviour together, not the user-agent alone.

Bot vs low-intent split by widget

The quality score distinguishes automation from involuntary human arrival, so you can block genuinely bot-heavy widgets while only reducing bids on the merely low-intent ones.

02 / SCORED

Pinpoint the bot publishers & placements in Adskeeper.

Adskeeper itself isn’t the problem — bots and invalid traffic concentrate in a handful of its sub-sources: the publisher, site or zone, and the placement or widget within it. So we roll the score up by those Adskeeper tokens, not by creative (which says nothing about whether a click was human).

Bought as one Adskeeper line, a buy reads as a single number. Scored per sub-source, a spread like this illustration runs from 82 down to 21 — the worst is nearly all bots. That’s the leak a blended average hides.

validvisit · console
0–49 invalid50–79 suspect80–100 valid
stream-cache.example21
zone 887361
city-times.example82

Illustrative: Adskeeper traffic scored 0–100 per sub-source, worst first — down to the placement you buy.

Publisher / site / zone

Bot / invalid-traffic score broken down by:

  • Widget (Publisher) {widget_id}The widget / site the click came from — the unit you block in the campaign Widgets tab.

Per-click id: Adskeeper passes a unique click id, so we also run velocity, deduplication and repeat-source checks on every visit.

Compare bot & invalid-traffic breakdown across every ad network →

See your own Adskeeper sub-sources scored this way.

03 / ATTRIBUTION

How ValidVisit attributes Adskeeper traffic

Each Adskeeper macro maps to a normalized parameter, so every scored click is pinned to the right campaign, creative and publisher.

validvisit · tracking url
A Adskeeper tracking URL ValidVisit can score
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}
Campaign ID
Adskeeper macro
{campaign_id}
Maps to
campaign_id
Identifies
campaign
Teaser (Creative)
Adskeeper macro
{teaser_id}
Maps to
creative_id
Identifies
creative
Widget (Publisher)
Adskeeper macro
{widget_id}
Maps to
publisher_id
Identifies
publisher
Click ID
Adskeeper macro
{click_id}
Maps to
click_id
Identifies
click
04 / DETECTION

How the detection works.

100+
Scale

Data points → one score

Every visit is weighed against more than a hundred independent data points and reduced to a single, sortable 0–100 quality score.

1 verdict
Depth

Many angles, combined

Each data point is combined rather than checked in isolation, so a genuine human almost never trips enough of them to be flagged — and bots that beat one rarely beat the rest.

0–100
Model

Proprietary, not a black box

The detection model is ours and stays that way. What you get is a clear verdict on every visit — not a single brittle rule you can game, and not an unexplained number you can’t act on.

per source
Action

Pinned to the source

Every verdict maps to the campaign, publisher and placement that sent the click — so you know exactly which source to cut.

05 / THE CUT-LIST

How ValidVisit helps you cut fraud and bad widgets on Adskeeper.

Scoring and attribution are the means — the point is cutting the Adskeeper traffic that wastes your spend. Here’s how ValidVisit gets you a list you can act on.

  1. Score

    See what’s actually landing

    You buy Adskeeper clicks; what arrives are visits. ValidVisit scores each one 0–100 so real humans stand out from bots and invalid traffic — one script, no funnel hop, no fingerprinting.

  2. Attribute

    Pin the fraud to its source

    Every scored visit is tied to the exact Adskeeper widget and zone via the network’s own tokens — so the bad traffic has an address, not just a headline percentage.

  3. Cut

    Take the widgets off your buy

    You get the worst offenders as a ready-to-use list plus postbacks to your tracker — so you can exclude them in Adskeeper and put your next dollar behind the traffic that converts.

FAQ

Adskeeper traffic quality, answered.

What does setting ValidVisit up on Adskeeper actually require?

Put ValidVisit’s script on the landing page and pass Adskeeper’s macros — {widget_id}, {teaser_id}, {campaign_id} and {click_id} — through your destination URL. The pixel picks them up on arrival and stores a per-visit score broken out by widget and campaign. Scoring is a post-arrival step, so it doesn’t touch the click path at all.

How do I know which specific Adskeeper widgets to shut off?

ValidVisit ranks every {widget_id} you’ve run by quality score and surfaces what’s dragging the low ones down, since the widget ID is captured on every click. From there you either stop the individual placement in the campaign’s Widgets tab or blacklist the whole publisher site if it’s bad throughout. ValidVisit produces the ranking; the actual stop happens in your Adskeeper account.

Won’t cheap native clicks just naturally read as low quality?

No — price per click isn’t a scoring input. The score comes from over 100 objective signals about the click’s origin, the device and the visitor’s on-page behaviour, not from engagement proxies that would naturally be thin on teaser traffic regardless. A real, briefly-engaged visitor looks nothing like a scripted client or a proxy-routed click across those signals, so an honest cheap click still passes.

Detect fraud on other native networks

Back to how it works
stream-cache.example21
zone 887361
city-times.example82

Find the bots in your Adskeeper spend.

See which publishers and placements send real buyers vs bots — every visit scored 0–100, worst first.

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