Google Ads
Search
Search channel · judged Valid or Invalid

Which Google Ads placements send bot traffic?

Judge every Google Ads visit Valid or Invalid, then exclude the keywords, placements and IPs draining your budget, inside your own account.

Just your email · no card · unsubscribe anytime · privacy policy

Not ready? Estimate your invalid clicks →
validvisit · google-ads cut-list
Exclude the bad placement in Google Ads

The buyer pastes the list of bad placements (URLs, app IDs, YouTube channel/video IDs) as placement exclusions — per campaign or ad group, account-wide, or into a placement exclusion list (65,000 account-level exclusions per account; the account-level page allows 20,000 at a time). Account-level exclusions also cover search partner sites and Performance Max, and typically take effect within 12 hours.

Where: Campaigns menu > Audiences, keywords, and content > Content > Exclusions > Edit Exclusions, at campaign, ad group or account level; account level also under Tools > Content suitability > Advanced settings > Excluded placements; Tools > Shared library > Exclusion lists > Placement exclusion lists; IP exclusions under the campaign’s Settings > Additional settings, or Admin > Account settings for the whole account
Controls in Google Ads’s campaign settings
✓ IP lists✓ OS✓ OS version✕ Browser✕ Browser version✓ Language✓ Device✓ Connection
7
Google Ads macros mapped to report columns
2026-10-02
macros checked against Google Ads’s own docs
no-hop
one script, nothing added to the click path
Valid / Invalid
a verdict on every visit
01 / SIGNAL

How bot traffic slips in through Google Ads placements.

Google defines invalid traffic as traffic that doesn’t represent genuine interest in your business, and its own examples include bots and automated software, accidental clicks, fraudulent ad placements, and competitors who click manually to increase your spend. Google filters what it detects, but a Search campaign also serves beyond Google’s own results: search partners are included by default, and Performance Max reaches all of Google’s inventory from a single campaign. ValidVisit reads Google’s gclid through auto-tagging passthrough, alongside ValueTrack parameters such as {keyword}, {campaignid} and {network}, so each visit’s verdict ties back to the keyword, campaign or network segment where the problem sits.

Google removes the invalid traffic it detects from your campaign metrics and billing, and says it catches most of it shortly after the ad interaction. Those filters run after an ad serves, so, in Google’s own words, they cannot block traffic from your site: the visit can still reach your landing page. ValidVisit judges every visit that arrives there Valid or Invalid, with the evidence shown, and that includes visits Google has already filtered and not charged for.

Where the invalid share sits depends on where the campaign served. {network} returns g for Google search, s for search partners, d for the Display Network and x for all Performance Max traffic, so one parameter splits the verdicts by network. Google itself notes that clicks from search partner sites that list products for sale may not always reflect highly targeted traffic.

{keyword} returns the keyword from your account that matched the search, and comes back blank when the ad matched without keywords, as in Performance Max, Dynamic Search Ads and AI Max. None of this shows in aggregate campaign metrics; it surfaces only when visits are judged one by one and cut by keyword, campaign or network segment.

What to watch on Google Ads

Keyword-level invalid share

Pass {keyword} as a ValidVisit parameter and review verdicts per keyword rather than per campaign. A campaign average can hide one or two keywords that carry a disproportionate share of invalid visits. Google’s checklist for an invalid traffic investigation asks for the suspicious keywords, so the per-keyword view is also the one to bring to that request.

Search Partners vs. core Google network quality gap

Pass {network} and compare the invalid share of “s” (search partners) with “g” (Google search). If Search Partners consistently produces a higher share of invalid visits, the per-visit breakdown shows how wide the gap is and how consistently it holds, which is the evidence for opting that campaign out of Search Partners: in the campaign’s settings, open Networks and uncheck “Include Google search partners”.

Performance Max traffic and what you can exclude there

Performance Max serves across all of Google’s inventory from one campaign. {network} returns “x” for all of its traffic and {keyword} comes back blank, so judge those visits per campaign with {campaignid}. Google manages placement exclusions for Performance Max at the account level, and campaign-level IP exclusions aren’t available for it; account-level IP exclusions do cover it.

02 / VERDICTS

What Google Ads lets you judge by.

Publisher / site / zone

Invalid share broken down by:

  • Network {network}Where the click came from: g Google search, s search partners, d Display Network, ytv YouTube, x Performance Max.
Placement / widget

Invalid share broken down by:

  • Placement {placement}The content site where the ad was clicked, or the matching placement targeting criteria.

Per-click id: Google Ads passes a unique click id, and ValidVisit stores it with each visit, so a verdict traces back to the click in Google Ads’s own reports.

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

See your own Google Ads sub-sources judged this way.

03 / ATTRIBUTION

How ValidVisit attributes Google Ads traffic

Each Google Ads macro maps to a normalized parameter, so every judged visit is pinned to the right campaign, creative and publisher.

validvisit · tracking url
Tracking URL for Google Ads, ready for ValidVisit
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}&vv_publisher_id={network}&vv_placement_id={placement}
Campaign ID
Google Ads macro
{campaignid}
Maps to
campaign_id
Identifies
campaign
Ad Group ID
Google Ads macro
{adgroupid}
Maps to
adset_id
Identifies
adset
Creative ID
Google Ads macro
{creative}
Maps to
creative_id
Identifies
creative
Keyword
Google Ads macro
{keyword}
Maps to
keyword
Identifies
keyword
Network
Google Ads macro
{network}
Maps to
publisher_id
Identifies
publisher
Placement
Google Ads macro
{placement}
Maps to
placement_id
Identifies
placement
Click ID (gclid)
Google Ads macro
(auto-tagging)
Maps to
gclid
Identifies
click

Macros checked against Google Ads’s own documentation on 2026-10-02. Google Ads docs

The verdict works the same way on every network. ValidVisit never changes your Google Ads account: you make the exclusion there yourself. How the verdict works →

FAQ

Google Ads traffic quality, answered.

Does ValidVisit interfere with gclid-based conversion imports or Smart Bidding signals?

No. The gclid Google appends to the URL stays intact, and your conversion import reads it exactly as it would without ValidVisit. ValidVisit never writes to your Google Ads account, so Smart Bidding keeps receiving your conversion events unaltered. What ValidVisit adds is a judged visit log showing which keywords, campaigns and network segments send invalid visits.

Google Search Partners don’t expose a site or placement token — how does ValidVisit surface sub-source quality there?

Google’s ValueTrack list describes {placement} as the content site where the ad was clicked, and for search partners {network} only tells you the click came from that network (“s”). ValidVisit judges each of those visits and reports the invalid share of the search partner segment as a whole. For the site list, Google’s Search Partner Network placement report (Report editor, under Content suitability) shows the partner sites your Search, Shopping and App campaigns served on, with impressions per site, and placements you exclude at the account level also apply to search partner sites.

My Google Ads account already shows 'invalid click' credits — what does ValidVisit add beyond that?

Google filters the invalid clicks it detects out of your campaign metrics and billing; the Invalid clicks column shows how many. If it detects more after you were billed, it automatically issues a credit, labelled “Invalid activity”, when appropriate and possible. Google does not say which clicks it filtered, so ValidVisit’s verdicts are a separate per-visit record made on your own page, and some visits judged Invalid there will be ones Google already filtered and never charged. Each verdict comes with the keyword, campaign or network segment it concentrates on, so you can apply an exclusion or bid adjustment in Google Ads yourself. If you suspect invalid traffic that wasn’t filtered, Google takes investigation requests through its Click Quality Form for activity within the last 60 days; that request is yours to make, and ValidVisit does not send it.

How many placements can I exclude in Google Ads?

Up to 65,000 account-level placement exclusions per account. Google’s account-level page allows 20,000 at a time, while its limits page says the interface takes 5,000 at one time and the API 20,000. Exclusions can be set per campaign or ad group, account-wide under Tools > Content suitability, or in a placement exclusion list under Tools > Shared library > Exclusion lists; lists created in a manager account can be applied across accounts. New account-level exclusions typically take effect within 12 hours.

Can I exclude IP addresses in Google Ads?

Yes. Up to 500 IP addresses per campaign, under the campaign’s Settings > Additional settings > IP exclusions; an asterisk in place of the last three digits excludes a block of addresses. Account-level IP exclusions, under Admin > Account settings, cover all campaigns including Performance Max. Campaign-level IP exclusions aren’t available for video, hotel, App, Performance Max and Smart Display campaigns. Demand Gen, Display and Video campaigns can also target by operating system, device model, carrier and Wi-Fi.

Detect fraud on other search networks

Weighing a blocker for search traffic? How ValidVisit compares to ClickCease, ClickGUARD, Fraud Blocker and Lunio.

deal-alerts.example71% invalid
zone 447123% invalid
premium-news.example2% invalid

Find the bots in your Google Ads spend.

See which publishers and placements send real buyers vs bots — every visit judged Valid or Invalid, worst first.

Just your email · no card · unsubscribe anytime · privacy policy

Join the waitlist with just your email · 7-day trial at launch

One script · no cookies · no device IDs · raw IP never stored