Case Studies / Google Ads Invalid Traffic
Google Ads Search Partners Invalid Traffic Roofing

The Click-Through Rate Was High. The Conversions Were Near Zero. The Fix Had Nothing to Do With Click Fraud Tools.

A roofing client's Google Ads account looked fine on the surface — healthy CTR, traffic coming in. But the conversion rate was almost nothing, and something in the analytics pointed to a traffic quality problem. Here's how we diagnosed it, why we didn't reach for click fraud protection software, and what we did instead that cut wasted spend by 80% without losing a single real conversion.

−80%

Ad Spend Wasted

Same

Real Conversions

$5K–$35K

Value Per Job

The Problem

Good CTR. Terrible Conversion Rate. Something Wasn't Right.

This client runs a roofing business. Each job they win is worth anywhere from $5,000 to $35,000 — so the economics of Google Ads are straightforward: get the right enquiries, and the returns are significant. When the account was referred to us, the surface-level metrics looked reasonable. The click-through rate was healthy. Traffic was coming in. Budget was being spent.

The problem was that almost none of it was converting. The conversion rate was far lower than it should have been for a local service business with a clear offer and a competitive price point. When we dug into Google Analytics, something else stood out immediately: the bounce rate from this traffic was very high, but so was the average time on page.

That combination is a red flag. Normally, a high bounce rate comes with a very short time on page — someone arrives, immediately decides it's not relevant, and leaves. But when time on page is also high alongside a high bounce rate, it suggests the visits may not be real people browsing at all. Sessions that last an unnaturally long time before bouncing are a common characteristic of automated or forwarded click traffic.

The campaign was running with Search Partners enabled. Search Partners extends your ads beyond Google's own search results to partner sites in the network. For some industries and accounts it performs well — but it also introduces significantly less control over where your ads appear and who sees them, and it's a common vector for low-quality traffic.

"High CTR but near-zero conversions, combined with high bounce rate and high time on page — that's not a messaging problem or a landing page problem. The traffic itself was the problem. We needed to understand exactly which traffic, and why."

The Investigation

Why We Ruled Out Click Fraud Protection Immediately

The analytics pattern pointed towards click-forwarding — a form of ad fraud where someone repeatedly clicks your ads, usually from changing IP addresses, to drain your budget without any real intent to buy. The knee-jerk response is to buy click fraud protection software. We didn't.

Why Click Fraud Protection Software Doesn't Solve This

The click fraud protection market sells a compelling story: their software identifies fraudulent IP addresses and blocks them from seeing your ads. In practice, it works against the least sophisticated click fraud — low-effort scripts or competitors clicking from a fixed office IP.

Anyone running a deliberate click-forwarding operation knows this. The standard countermeasure is trivial: use a fresh VPN for every click, and make sure that VPN's exit node is geographically matched to your target location. If the campaign targets roofing customers in a specific metro area, you route every click through a VPN server in that area. To any IP-based detection system, each click looks like a different, locally relevant visitor.

You'd be paying for software that's already been defeated before you install it. Worse, it creates a false sense of security — you assume the problem is handled while the fraudulent spend continues unchanged.

What the Data Actually Told Us

Instead of chasing the source of the fraudulent traffic, we analysed what distinguished converting sessions from non-converting ones. Google Ads provides demographic segment data — age brackets, gender — broken down by conversions, cost, and click volume. When we pulled that data, the pattern was clear.

Users where Google had a confirmed demographic signal — a known age range, a known gender — were converting at normal rates. The cost per conversion from these segments was competitive and in line with what you'd expect for a high-value local service.

Users classified as Unknown or Undetermined — where Google had no demographic signal — were converting at almost nothing. They were generating a large share of clicks and consuming a large share of budget, while delivering almost zero of the actual leads.

Why "Unknown" Demographic = Low-Quality Traffic Signal

Google assigns demographic data based on login status, browsing history, device signals, and various other behavioural indicators. When a user is signed into a Google account and has a browsing history, Google has high confidence in their demographic profile.

Automated traffic — bots, scripts, VPN-cycled click fraud — tends to have none of those signals. Each session looks like a brand-new, unrecognised user with no history, no login, no device continuity. Google can't assign a demographic. It labels them Unknown. That label, it turned out, was the fingerprint we were looking for.

The Solution

One Audience Exclusion. Immediate Results.

Once we understood the pattern, the fix was straightforward: exclude the Unknown demographic segment from the campaign entirely. This is done through Google Ads' audience and demographic settings — you set the Unknown gender segment to "Excluded," and Google stops serving your ads to sessions it can't profile.

1

Segment the Data Before Touching Anything

We pulled conversion data segmented by demographic in Google Ads, cross-referenced against the GA4 engagement signals (bounce rate, session duration, pages per session). The disparity between known and unknown demographic segments was significant enough to act on with high confidence.

This step matters. If the unknown demographic segment had been generating a meaningful share of real conversions, the exclusion would have been too blunt. In this case, the conversion rate from unknown segments was so low that excluding them carried almost no risk of losing real customers.

2

Exclude Gender: Unknown Across the Campaign

We applied a demographic exclusion for Gender: Unknown at the campaign level. This is a native Google Ads setting — no scripts, no third-party tools, no ongoing cost. The campaign immediately stopped serving to unprofilable sessions.

We left Age: Unknown active initially to isolate the effect. Subsequent analysis confirmed Gender: Unknown was the primary driver — it was sufficient on its own to address the problem.

3

Reallocate the Recovered Budget Toward High-Performing Segments

With the wasted spend removed, the account had meaningful budget headroom. Rather than simply reducing the overall spend, we redirected toward the demographic and geographic segments that had consistently produced conversions — concentrating the budget in the areas where it demonstrably worked.

For a roofing business with jobs worth $5,000–$35,000, even a modest improvement in conversion volume from qualified traffic has a significant revenue impact. The efficiency gain created room to grow.

The Results

80% Less Spend. The Same Number of Real Leads.

−80%

Cost Reduction

Ad spend dropped by 80% after the exclusion was applied, with no reduction in the number of genuine enquiries received.

Same

Real Conversions

Conversion volume held steady. The excluded traffic had never been converting — removing it just made that visible in the numbers.

5×+

Conversion Rate

With the low-quality traffic removed, the campaign's measured conversion rate reflected the true quality of the remaining audience.

What This Meant for a Roofing Business

  • The same leads for a fraction of the cost — every roofing job worth $5,000 to $35,000 was now being acquired at a dramatically lower cost per lead, substantially improving the return on every marketing dollar.
  • Freed-up budget to scale what was working — the recovered spend could be redirected into the geographic areas, dayparting windows, and keyword segments that were producing the best-quality enquiries.
  • Accurate conversion data going forward — with the inflated click volume removed, bidding algorithms had clean, accurate signals to work from — which compounds over time as Smart Bidding learns from better data.
  • No third-party tools, no ongoing subscription — the fix is a native Google Ads setting. No software to maintain, no monthly cost, no dependency on a vendor's IP blocklist staying current.

Does This Sound Familiar?

This situation — good CTR, poor conversion rate, wasted budget that doesn't respond to the usual fixes — is more common than most advertisers realise. It's especially prevalent when Search Partners is enabled. Some indicators that your account may have a similar problem:

High click-through rate but conversion rate that doesn't match your expectation for the offer

GA4 showing high bounce rate alongside high average session duration — both at the same time

Demographic segment data shows "Unknown" or "Undetermined" taking a large share of clicks with near-zero conversions

Search Partners is enabled, particularly in a competitive or high-value local service category

Conversion rate has declined over time despite no changes to the landing page, offer, or keyword strategy

You're in a high-value trade (roofing, construction, legal, finance) where each lead is worth significant money — making your ads a more attractive fraud target

The demographic exclusion approach works because it addresses the symptom at the right level — not by trying to identify and block specific fraudulent IPs, but by removing the entire class of unprofilable traffic that invalid clicks belong to. It doesn't require any third-party tools, and it's free to implement in any Google Ads account.

Common Questions

Is Your Google Ads Budget Going to Real Customers?

If your conversion rate doesn't make sense given your CTR, or your Analytics data looks off, there may be a traffic quality issue we can identify and fix. We'll analyse your account and tell you exactly what we find.