Skip to main content
Back to Blog

How to Audit Your Google Ads for Bot Traffic (Step-by-Step Guide)

Audit your Google Ads account for bot traffic: check invalid clicks, conversion timing, placements, locations and Smart Bidding trends, then filter bot events server-side.

(Updated )
14 min read
How to Audit Your Google Ads for Bot Traffic (Step-by-Step Guide)

Key Takeaways

  • •Google removes invalid traffic it finds before billing and credits invalid clicks it finds later. It says there is no industry standard for a normal invalid traffic rate, and it cannot report what it did not detect
  • •No source we could verify publishes a bot rate for Google Ads clicks, so an audit has to measure your own account: invalid clicks, conversion timing, placements, locations and Smart Bidding trends
  • •Conversion timing is a useful signal: conversions that complete within seconds of page load deserve a closer look, though a fast return customer can also be quick
  • •Performance Max blends traffic sources and reports by channel less finely than standalone campaigns, which makes suspicious placements harder to spot
  • •Server-side tracking with bot filtering can keep suspect events out of the conversions Google Enhanced Conversions and Smart Bidding learn from; it does not change what Google bills you for clicks

Why you need to audit your Google Ads for bot traffic

Google's invalid click filtering protects what you are billed. It does not tell you what reaches your conversion data.

Google removes invalid traffic it finds before billing and credits invalid clicks it finds later. It says there is no industry standard for a normal invalid traffic rate, and by definition it cannot report the invalid traffic it did not detect. No source we could verify publishes a bot rate for Google Ads clicks, so how much of your own traffic is automated is unknown until you measure it.

This audit guide walks you through five checks to look for bot traffic in your account, see which campaigns it affects, and then fix the part you can control: which events reach Google as conversions.


Step 1: Pull your invalid clicks data

Your first stop is Google's own data on what it has already filtered.

How to access it

  1. In Google Ads, open the Invalid clicks and Invalid click rate columns for your campaigns (add them from the column picker), and set the date range to the last 90 days
  2. Segment by Network and Device
  3. Add Clicks and Cost so you can compare each campaign's filtered share with its spend

What to look for

SignalWhat it meansAction
One campaign with a much higher invalid click rate than the restGoogle is filtering more on that campaignInvestigate its placements and targeting
A very low invalid click rateEither clean traffic or invalid activity Google did not detect; the report cannot tell you whichRun Steps 2 to 5 before assuming clean
Large spikes on specific datesPossible click bombing or automated activityCross-reference with conversion data on those dates
Display or Performance Max invalid rate far above SearchDifferent inventory has different invalid ratesConsider budget reallocation or placement exclusions

There is no published benchmark. Google says there is no industry standard rate, so compare your campaigns with each other and with your own history, not with a universal figure.

The credits check

Open your billing transactions and look for invalid activity credits. Work out what share of your spend they represent and record it as a baseline to track over time. A low share does not show that your traffic is clean. It shows what Google detected.


Step 2: Analyze conversion timing

Timing is one of the more useful signals, because people browse, compare, read reviews and think before converting, while scripts often do not.

Set up the check

If you are running server-side tracking, you may already have timing data. If not, add a custom dimension in GA4 or your analytics platform that tracks time from page load to conversion event.

What to read into the timing

These bands are starting points to tune against your own data, not published thresholds. A fast return customer can also convert quickly.

Time from landing to conversionHow to treat it
Under 3 secondsCheck first. Too fast for a person to read a page and complete a form
3 to 10 secondsReview. Could be a script or a very fast return customer
10 to 30 secondsReview if it clusters. Possible for a short form
30 seconds to 5 minutesTypical for lead generation
5 to 30 minutesTypical for e-commerce, with browsing and comparison

Red flags in your data

  • A noticeable cluster of conversions completing within seconds, especially if it comes from one campaign or ad group
  • A timing distribution with two peaks, one within a few seconds and another at a few minutes. The early peak is worth investigating
  • Specific campaigns or ad groups with consistently faster conversion times than the account average

Step 3: Run a placement audit

Display Network and Performance Max campaigns serve ads across very large numbers of websites and apps. Some of those exist mainly to earn ad revenue and can produce low-quality or invalid traffic.

For Display campaigns

  1. Go to Content → Where Ads Showed → Placements
  2. Sort by clicks (descending)
  3. For each placement with many clicks, check:
    • Does the site have real content or is it a content farm?
    • What is the conversion rate from that placement compared with your average?
    • Does the site appear in Google search results for its own brand name?

For Performance Max campaigns

PMax makes this harder because Google gives you less placement detail than standalone campaigns. You can still check:

  1. Look at the placement and channel reporting Google provides for your PMax campaigns
  2. Look for YouTube channels and Display placements with high clicks but no conversions
  3. Check asset group performance. If one asset group has a much higher CTR but a much lower conversion rate, review where its traffic comes from

Warning signs in placement data

SignalPriorityAction
Placements with many clicks and no conversionsHighReview, then exclude if nothing justifies them
Placements on sites you have never heard of with oddly high CTRHighInvestigate and exclude
Mobile app placements (mobileapp::2-*) with high clicks and no conversionsMediumReview, and exclude mobile app categories if they never convert
YouTube placements on channels with very few subscribersMediumReview and exclude individual channels

How to exclude bad placements

  • For Display: Content → Exclusions → Add placements to exclude
  • For PMax: use account-level placement exclusion lists in the account settings
  • Maintain an exclusion list and apply it account-wide

Step 4: Check geographic patterns

Invalid activity can cluster in specific regions. Even bots that use residential proxies to appear local can show up as volume patterns.

How to check

  1. Go to Campaigns → Locations → Matched locations
  2. Compare the geographic distribution of clicks with the distribution of conversions
  3. Look for regions with many clicks and almost no conversions

What to look for

SignalWhat it means
A country or region with many clicks and no conversionsPossible automated traffic, a VPN exit cluster, or simply poor targeting
City-level clusters of clicks with no conversionsWorth checking against your audience
Clicks from regions outside your targetingYour location option may be matching people who only show interest in a place
Late-night click spikes in your target geographyPossible automation, or a different audience than you assumed

Location targeting tip

If you target a specific country, check which location option you use. Choosing to target only people in your targeted locations, rather than people who merely show interest in them, can reduce clicks from outside your area. It does not stop visitors who use a VPN.


Smart Bidding (Target CPA, Maximize Conversions, Target ROAS) learns from your conversion data. When bots "convert," the algorithm can treat those events as real signals.

The 90-day trend check

  1. Pull campaign performance for the last 90 days at weekly granularity
  2. Track these metrics week over week:
    • CPA trend (is it gradually rising?)
    • Conversion rate trend (is it gradually declining?)
    • Impression share trend (is it stable while CPA rises?)
    • Cost per click trend (is CPC rising while conversions hold?)

Patterns worth investigating

Bots are one possible cause of each pattern below. Competition, seasonality, creative fatigue and tracking changes cause the same shifts, so use these to decide where to look next, not as proof.

PatternPossible explanations
CPA rising with stable conversion volumeRising competition or seasonality, or conversions of lower quality in the mix
Conversion rate dropping while CTR stays constantMore clicks that do not convert, which can include invalid ones
CPC increasing while Quality Score is stableHigher competition, or bids rising for other reasons
Search impression share declining while budget stays flatHigher CPCs consuming budget faster
Conversion value dropping while conversion count holdsIf you track revenue, events with zero or minimum values may be entering the data

If you confirm contamination

  1. Filter suspect events server-side (see Step 6) before they reach Google as conversions
  2. Consider switching to Manual CPC temporarily while you clean your conversion data, accepting the loss of automated bidding
  3. Return to Smart Bidding gradually once clean data has been flowing for a few weeks
  4. Set a maximum CPC bid limit on your Smart Bidding strategy to cap runaway bids

Step 6: Implement server-side bot filtering

The five checks above help you diagnose the problem. This step controls which events Google learns from.

Server-side tracking captures conversion events on your server before they reach Google. A bot filtering layer then analyzes each event for non-human signals and forwards only validated conversions to Google via Enhanced Conversions.

How it works

User clicks ad → Lands on your site → Triggers conversion event
                                          ↓
                                   Your server captures it
                                          ↓
                              Bot filter analyzes the event:
                              - Session timing
                              - User agent analysis
                              - IP reputation check
                              - Behavioral fingerprint
                              - Device consistency
                                          ↓
                              ┌─────────┴─────────┐
                              │                     │
                          Real user              Bot detected
                              │                     │
                    Send to Google              Block event
                    Enhanced Conversions       (never reaches Google)

How it differs from Google's filter

The two work on different things, so they complement each other rather than compete.

Google's invalid traffic filteringServer-side bot filtering
What it coversClicks you are billed forConversion events sent to Google
Where it runsGoogle's sideYour server, before events reach Google
CreditYes, for invalid clicks Google findsNot applicable, suspect events are never sent
Smart Bidding impactDoes not remove a bot's conversion events from your own tag dataSuspect events never enter the conversion data Google sees
BillingRemoves or credits invalid clicks it findsDoes not change what you are billed for a click

Setting it up

SignalBridge sets up server-side tracking with automatic bot filtering in 5 minutes:

  1. Connect your domain (one-line DNS change)
  2. Select Google Ads as a destination
  3. Enable bot filtering (on by default)
  4. Google Enhanced Conversions receive only validated events

No code changes, no GTM server containers, no manual configuration. Bot filtering runs automatically on every event.


The audit checklist

Use this checklist to run the full audit:

  • Invalid clicks — Pull 90-day data, note campaigns whose filtered share differs sharply from the rest, and record your credits as a baseline
  • Conversion timing — Check for a cluster of conversions completing within seconds
  • Placement audit — Review top placements by clicks, exclude those with many clicks and no conversions
  • Geographic check — Compare click and conversion distribution, and review your location targeting option
  • Smart Bidding trends — Plot 90-day CPA, conversion rate and CPC trends, and investigate gradual shifts
  • Server-side filtering — Implement bot filtering before conversions reach Enhanced Conversions

What to expect after cleaning up

No source we could verify publishes typical improvements after bot filtering, so we do not quote any. What you can expect is a change in how the numbers read:

  • Reported conversions and ROAS may look worse at first. Removing fake events means you are counting fewer events, and the figures that remain are the real ones
  • If a share x of your reported conversions were fake, your real CPA was your reported CPA divided by (1 - x). At 10% fake, it was 11.1% higher than reported
  • Whether performance improves afterward depends on your account. Record your CPA, conversion rate and ROAS for several weeks before and after, ideally with the method in our guide to testing your tracking setup

FAQ

How do I know if my Google Ads have bot traffic?

Run the 5-step audit in this guide: check your invalid click report and credits, analyze conversion timing for implausibly fast completions, review placement reports for low-quality Display and Performance Max sites, look for geographic anomalies in click data, and check whether your Smart Bidding CPA has been rising without a clear cause.

What percentage of Google Ads clicks are bots?

No source we could verify publishes this. Google says there is no industry standard for a normal invalid traffic rate, and its Invalid clicks column shows only what it filtered. The audit in this guide shows how to estimate your own exposure by comparing your campaigns with each other and with your own history.

Does Google refund for bot clicks?

In part. Google removes invalid traffic it finds before billing from your charges and reports, and credits invalid clicks it finds later. You can see what it filtered in the Invalid clicks column and the credits in your billing. By definition it cannot report invalid traffic it did not detect, and its credits do not remove a bot's conversion events from your own tag data.

How much of my ad spend is wasted on bot traffic?

Nobody has published a verified rate for Google Ads, so it is unknown until you measure it. The direct waste is your ad spend multiplied by the share of billed clicks that were non-human and never credited. At $10,000 a month, each 1% is $100. Fake conversions add a second cost, because Smart Bidding can learn from them.

Can Performance Max campaigns detect bot traffic?

Performance Max blends Search, Display, YouTube, Gmail and Discover inventory into a single campaign, and its reporting by channel and placement is less detailed than in standalone campaigns, so suspicious placements are harder to find. Filtering bot events server-side before conversion data reaches Google keeps them out of the data Performance Max learns from.


Corrections and updates

  • October 7, 2026: We removed figures we could not trace to a primary source or that Google's own documentation contradicts: that Google filters 8 to 12 percent of bot traffic; "true" bot rates of 14 to 22 percent for Search, 25 to 40 percent for Display and 20 to 35 percent for Performance Max; 14 to 30 percent of spend wasted on bots; a claim that total impact is two to three times the direct waste; invalid click rate benchmarks of 3 to 8 percent for Search and 8 to 15 percent for Display; a 60 to 80 percent bot coverage figure for server-side filtering; and a table of typical improvements after cleanup, including ROAS up 15 to 30 percent. We also removed advice to pause campaigns for 48 hours to "reset" Smart Bidding, because we could not find a source for that behavior.

Ready to recover more conversions?

Start tracking what your pixels miss. Set up in 5 minutes, no credit card required.

Start Free Trial