WonFlo← Resources

Resources · Google Ads

Why your Google Ads keep finding tire-kickers (and how to fix it)

You're not bad at running ads. You're telling Google to find form-fillers — and it's doing exactly what you asked.

By Chris Milner · WonFlo5 min read
Short version

Google optimizes for whatever you tell it counts as a win. If a win is a form fill, it finds you more people who fill out forms — renters, bargain-hunters, tire-kickers. The fix isn't more negative keywords. It's closing the loop: telling Google which leads became paying jobs, so it goes hunting for more homeowners like them.

The leaky bucket nobody warns you about

In a competitive market, a single roofing click can run $30–60. A $100 daily budget can disappear on two or three clicks with no call to show for it. And the leads that do land? Half are renters, bargain-hunters, or someone who wanted a $200 patch.

Here's the uncomfortable part: that's not a targeting accident. That's the system working exactly as designed.

It's not your ads. It's the signal.

Running standard Google Ads is like paying a door-knocker a commission for every name they bring back — without ever checking whether those people own a home, can afford a roof, or even need one. The canvasser here is Google's bidding algorithm. It quickly learns the easiest names to collect are the ones least likely to buy. So that's what it brings you.

Standard tracking stops at the form submit. Google never learns which of those leads signed a $20,000 contract and which one ghosted. To the algorithm, a junk lead and a clay-tile replacement look identical. It optimizes for the cheapest, easiest conversion — because that's the only thing you ever told it to count.

The fix most roofers miss: close the loop

The fix isn't another round of negative keywords. It's feeding outcomes back. When a lead books an inspection or signs a contract, you tell Google. Now the algorithm can see which keywords, ads, and neighborhoods produced real jobs — not just clicks — and it starts bidding toward homeowners who look like your actual buyers, and away from the ones who waste your time.

Google's modern version of this is called Enhanced Conversions for Leads. It matches your sold jobs back to ad clicks using hashed, privacy-safe customer data instead of fragile cookies.

Heads up
Starting June 15, 2026, Google blocks the legacy way of uploading these conversions and moves it to its Data Manager API. If your setup relies on the old method, it stops sending data. (WonFlo already runs on the new one.)

Feed it two signals, not one

Google's bidding needs data — generally around 30+ conversions a month to optimize well. Most roofers don't close 30 jobs a month, especially starting out. So you feed the loop at two points:

One gives the algorithm enough data to learn. The other tells it what a good outcome is actually worth.

Standard vs. closed-loop, side by side

Standard ads
Closed-loop
Google optimizes for
Form fills & calls
Booked jobs & revenue
What it learns
Who fills out forms
Who actually buys
Your budget goes to
Whatever's cheapest
High-ticket jobs & better areas
Your sales time goes to
Sorting junk
Pre-qualified buyers
Attribution
Breaks past ~2–4 weeks
Holds across long journeys

What does a lead actually cost you?

A $124 lead isn't a $124 customer. See your real cost per booked job — and what a few more points of close rate is worth — in about 30 seconds.

Google's already rewarding this

In late 2025, Google rolled out an "Online Estimates" filter for local home-service searches. When a homeowner uses it, Google surfaces contractors who offer instant online pricing and quietly pushes down the ones who don't. The direction is clear: homeowners expect a number before a callback, and Google is building its results around that. An instant-quote funnel isn't just a better experience anymore — it's becoming a visibility requirement.

Quick answers

Why are my Google Ads roofing leads so bad?+
Because standard tracking counts a form fill as the goal, so Google's bidding finds more people likely to fill out forms — not more people likely to buy a roof. Until you feed real job outcomes back to Google, it can't tell the difference between a tire-kicker and a $20,000 replacement.
What is Enhanced Conversions for Leads?+
It's Google's privacy-safe way to match your closed jobs back to the ad clicks that created them, using hashed customer data instead of cookies. It lets Google's bidding optimize toward the leads that actually become paying customers.
What changes on June 15, 2026?+
Google blocks the legacy method of uploading offline conversions and moves it to its Data Manager API. Setups built on the old path stop sending data unless they migrate to the new one.
Do I need a CRM and a developer to set this up?+
Traditionally, yes — a website tag, a CRM, a Zapier connection, and conversion-tracking configuration you have to maintain. WonFlo does the whole loop for you: it captures the ad click at the funnel, scores and verifies the lead, and reports booked and sold outcomes back to Google automatically.

Keep reading

For the mechanics behind the fix, see offline conversion tracking for roofers, in plain English — what it is, how to set it up, and the June 15 change.

WonFlo exists because too many good roofers pour money into ads and drown in junk leads — not because their ads are bad, but because nobody is telling Google what a good customer looks like.

If you want to see it work, walk through the funnel your homeowners would.

— The WonFlo team

Try the funnel →