Builtward/Blog/Google Ads for plumbers and HVAC, when the leads don't become jobs
Blog

Google Ads for plumbers and HVAC, when the leads don't become jobs

Cost per lead looks fine, the jobs never show up, and the agency's report keeps improving. Here's how to tell whether the problem is the ad account or what happens after the click.

September 2, 20263 min readUpdated September 6, 2026

There’s a conversation we have most weeks. An owner is unhappy with their marketing company. Leads cost $80, which sounds reasonable, and the agency sends a report every month showing the number going down. Revenue is flat.

The agency usually isn’t lying. The leads are real. They just aren’t becoming jobs, and nobody in the chain is measured on whether they do.

2 failures that look identical from the owner’s chair

“The marketing isn’t working” covers 2 problems with completely different fixes.

A demand problem. Not enough of the right people are seeing you. Budget, targeting, keywords, creative, service-area coverage.

A capture problem. The right people are already calling and you’re losing them between the click and the booked appointment.

Agencies are built to solve the first one. It’s what the tools do and what the report measures. So when the second is the real problem, the response is to buy more of the first, which makes the leak bigger.

You can tell them apart in about 20 minutes.

Pull 3 numbers for the last 90 days

Leads. Every call, form and chat the marketing generated. Booked appointments that trace back to those leads. Completed jobs from those appointments.

If leads are low but most of them book, you have a demand problem and the money belongs in media.

If leads are healthy and under about 40% reach a booked appointment, the money is leaking in capture, and more spend won’t fix it. You’re paying full price for traffic and converting a fraction of it.

Most of the companies we scan are in the second bucket. They’re usually surprised, because nothing in the monthly report was built to show it.

Why the report looks fine

Ad platforms count conversions, and a conversion is whatever got configured on setup day. 9 times out of 10 that’s a form submit or a call that connected for more than a few seconds. Neither means a job.

So the account can look genuinely excellent while the business sees nothing. The agency is optimising hard toward a number that stops mattering 4 steps before revenue.

That’s rarely malice. The agency can see the ad account and can’t see your dispatch board, and nobody ever connected the 2.

What the demand is actually worth

This is worth putting a number on, because it changes how much the leak costs.

In San Antonio, homeowners run about 11,090 searches a month for HVAC help, and the busiest single term, “ac repair san antonio”, carries 2,900 of them on its own. Buying that traffic costs roughly $66.94 a click right now.

That’s the market you’re advertising into. Every point of booking rate you give away is measured against that price, not against a hypothetical.

The 5 places it leaks

Speed to answer. The biggest one, most of the time. Covered in what a missed call actually costs you.

A form standing in for a booking. It converts an urgent caller into a callback task, and in an emergency trade that’s most of the way to losing them. Across the 9,509 HVAC and plumbing companies we’ve scanned, 65.4% had no way to book online at all, and for plumbing specifically it was 70.7%.

No after-hours path. You’re advertising 24 hours a day and answering 8 to 5. 61.1% had no after-hours capture.

A landing page that asks too much. 15 fields, no phone number above the fold, no sign you serve their town. 57.2% had no clear call or booking action above the fold.

Nobody owning the handoff. The lead lands in an inbox checked between jobs.

Fix capture before you touch the account

Get the 3 numbers first. Everything else is guessing.

Then fix the biggest gap before you touch the ad account, because the account is the expensive place to experiment and the booking path is the cheap one. A company converting 30% of its leads that gets to 50% has made its existing budget worth 67% more without spending another dollar on media.

That’s usually a better trade than anything an ad platform can do for you in the same quarter. Once capture is solid, more spend actually turns into more revenue, which is when scaling the budget starts to make sense.

The Revenue Leak Scan measures your booking path, after-hours coverage and map-pack position against your real site. Market-level figures are in the 2026 demand-capture benchmark and the regional reports.

Quick answers

Is $500 a month enough for Google Ads for a plumbing business?

It buys very little in this category. Click costs on core plumbing and HVAC terms commonly run $30 to $100, and in some markets higher, so $500 is a few dozen clicks. It's enough to test whether your booking path works, and not enough to hold position on emergency terms.

How do I advertise a plumbing business on Google?

Local Services Ads first, since they sit above everything and charge per lead rather than per click. Then search ads on emergency terms, where intent is highest and the customer isn't comparison shopping. Do both only after someone can actually answer or book the resulting call.

Why are my Google Ads leads not turning into jobs?

Usually the leak is after the click. Ad platforms count whatever was set as a conversion on setup day, normally a form fill or a call that connected for a few seconds, and neither is a booked job. Pull leads, booked appointments and completed jobs for 90 days and see which number falls off.

What is a good lead-to-job rate for a contractor?

Treat anything under about 40% of leads reaching a booked appointment as a signal to look at intake before media. Getting from 30% to 50% makes the budget you already spend worth roughly 67% more without adding a dollar.

Find the money you’re already leaking.

The Revenue Leak Scan is free. You keep the findings whether or not we ever work together.

Get your free Revenue Leak Scan →