On core Search you can't exclude a publisher. Use ValidVisit's evidence to opt out of Search Partners, apply IP exclusions, and file invalid-click credits — then shift budget off the segments that score dirty.
Google Ads is where search intent meets paid placement — and where that intent is sometimes manufactured. Most clicks from a well-targeted search campaign are genuine. But the search channel carries two IVT pressures that other channels largely don't: patterns consistent with competitor click automation on high-value keywords, and repeat-clicking from the extended inventory that Search Partners and Performance Max campaigns pull in. What makes search IVT hard to catch with simple account-level rules is how tightly it concentrates — often on a handful of exact-match terms, specific time windows, or narrow geographic clusters — while blending into otherwise clean traffic. ValidVisit loads asynchronously on your landing page and, once a click has arrived, weighs it against 100+ independent data points spanning the network it came from, the device behind it, and how the visitor behaves, then folds them into a single 0-100 quality score. For search traffic, the most telling difference is between a session that looks like a person who typed a query and opened a browser, and one that looks like it was generated by a server farm or automation kit — the former earns a high score, the latter stands out as low. Scoring happens entirely after the click lands, so nothing sits in the click path and ValidVisit never blocks or auto-excludes anything; what it gives you is the evidence. The full audit trail ties back to Google's gclid through auto-tagging passthrough — no extra hop touches the click path, so conversion tracking is never disrupted.
https://yoursite.com/landing?utm_source=google-ads&utm_medium=search&vv_campaign_id={campaignid}&vv_adset_id={adgroupid}&vv_creative_id={creative}&vv_keyword={keyword}&gclid=(auto-tagging)Search IVT on Google Ads tends to express itself differently than the bot-farm traffic common on display or native channels. The most frequently encountered pattern is click activity that carries the marks of competitor automation: sessions arriving on high-CPC branded or category keywords, exhibiting near-zero dwell, no scroll, and an overall profile that clusters tightly with other clearly non-human visits. These sessions are not necessarily running at high volume — their impact is on budget pacing and Smart Bidding signal quality rather than on raw impression counts. A second pattern appears in the extended network. Search Partners and Performance Max campaigns reach inventory beyond core Google Search, and some of that inventory originates from sub-sources where the referrer geography or network owner does not align with a plausible search session. ValidVisit's scoring can surface these mismatches — a click whose network and location simply don't add up against the keyword's audience drags its quality score down even when it clears basic behavioral checks. A third pattern worth monitoring on Shopping and PMax campaigns is repeat-click activity: the same device or network range returning to the same product listing multiple times within a session window, adding cost without any additional signal value for your bidding algorithms. None of these patterns announces itself in aggregate campaign metrics. They become visible only when scored at the individual click level and attributed back to the dimension — keyword, campaign, or network segment — where they concentrate.
Pass {keyword} as a ValidVisit parameter and review the score distribution per keyword rather than per campaign. Patterns consistent with competitor automation almost always concentrate on a tight cluster of high-CPC terms — your broad-match or long-tail volume typically looks clean while one or two exact-match terms carry a disproportionate share of low-score sessions.
Use the {campaignid} dimension alongside the click timestamp in your ValidVisit reports. Automation tends to run on a fixed schedule — clicks that already score low on quality often pile up in hours when genuine searchers in your target timezone are unlikely to be active. Comparing those flagged sessions to your known conversion-time distribution is a useful triangulation step.
Segment ValidVisit data by the network source your Google Ads account reports alongside the gclid. If Search Partners inventory produces a consistently higher proportion of low-scoring sessions than core Google Search, the per-click breakdown in ValidVisit shows you how wide the gap is and how consistently it holds — giving you the evidence to justify a Search Partners exclusion at the campaign level, applied manually in your account.
PMax campaigns span multiple inventory types, making the click origin harder to inspect inside Google Ads alone. ValidVisit's per-click view across sessions can reveal when the same network range is generating repeat clicks against the same campaign, adding spend without proportional value to your bidding data — a pattern that is worth surfacing before it tilts your target-CPA or ROAS models.
Each Google Ads macro maps to a normalized parameter, so every scored click is pinned to the right campaign, creative and publisher.
| Token | Google Ads macro | Maps to | Identifies |
|---|---|---|---|
| Campaign ID | {campaignid} | campaign_id | campaign |
| Ad Group ID | {adgroupid} | adset_id | adset |
| Creative ID | {creative} | creative_id | creative |
| Keyword | {keyword} | keyword | keyword |
| Click ID (gclid) | (auto-tagging) | gclid | click |
{campaignid}{adgroupid}{creative}{keyword}(auto-tagging)Google Adsitself 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 Google Ads tokens, not by creative (which says nothing about whether a click was human).
Illustrative example — Google Ads traffic scored 0–100 per sub-source, worst first.
See your own Google Ads sub-sources scored this way.
Google Ads exposes campaign-level tokens; we break invalid traffic down by campaign and per-click id, and surface the offending ASNs, devices and networks behind the bot clicks.
Per-click id: Google Ads passes a unique click id, so we also run velocity, deduplication and repeat-source checks on every click.
Compare bot & invalid-traffic breakdown across every ad network →Every click is weighed against more than a hundred independent data points and reduced to a single, sortable 0–100 quality score.
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.
The detection model is ours and stays that way. What you get is a clear verdict on every click — not a single brittle rule you can game, and not an unexplained number you can't act on.
Every verdict maps to the campaign, publisher and placement that sent the click — so you know exactly which source to cut.
No. ValidVisit loads asynchronously on your landing page and does not touch or divert the click before it arrives. The gclid Google appended to the URL stays intact, and your conversion import pipeline reads it exactly as it would without ValidVisit in place. ValidVisit appends its own session parameter separately, so the two systems coexist without conflict. Smart Bidding continues to receive your conversion events unaltered — the value ValidVisit adds is the scored click log that lets you identify which sources are feeding it low-quality signals.
You're right that Google does not give advertisers a granular placement-level token for Search Partners inventory the way a native or display network would. ValidVisit works around that by scoring each click on its own merits: every visit is weighed against 100+ data points covering the network it arrived on, the device behind it, and how the visitor behaves, all rolled into one 0-100 quality score. Clicks that look like they came from a server farm, an automation kit, or an origin that doesn't match a real search-engine referrer chain score low. You can correlate those scores with the network segment reported in your Google Ads account to decide whether Search Partners is carrying a quality gap worth acting on.
Google's invalid click credits address clear-cut, high-confidence bot traffic that the network can classify and remove from billing. That filtering is genuinely useful. ValidVisit scores the clicks that arrive after that upstream layer — including lower-confidence automation, sessions that look slightly off without ever triggering a credit, and repeat-click patterns that fall below network-level thresholds. And because every click comes with its own quality score and the dimension it concentrates on, the result is directly actionable: you take the flagged keyword, IP range, or network segment and apply a manual exclusion or bid adjustment yourself inside Google Ads, without waiting to see whether a credit materializes.
See which campaigns and publishers send real, converting traffic vs bots — every click scored 0–100.
Free trial at launch · lock in early-access pricing
One script · raw IP never stored · GDPR legitimate-interest basis