Your ads dashboard shows calls coming in. Maybe a healthy click-through rate too. And yet, at the end of the month, you're not sure the math actually worked — did those leads turn into paying customers at a cost that made sense, or did the agency fee and the ad spend together eat more than the jobs were worth?
That question is harder for HVAC than for most industries, because HVAC Google Ads costs vary enormously depending on which campaign type generated the lead — branded search, non-branded search, Local Service Ads, and Performance Max all price completely differently, and a single blended "cost per lead" number hides which ones are actually working.
This guide covers how to check Google Ads ROI for an HVAC business specifically — why blended cost per lead misleads, and how to calculate your true cost per paying customer once your agency fee and job close rate are both factored in.
Why "Cost Per Lead" Isn't the Same as "Cost Per Customer"
A lead isn't a sale. Someone who calls or fills out a form still has to book a job, and the job still has to close. Two numbers matter more than raw cost per lead:
- Book rate — what percentage of leads actually turn into a scheduled job. This varies significantly by campaign type and by how fast your team responds.
- Average ticket value — what a typical HVAC job is actually worth to your business, since that's what determines whether a given cost per lead is profitable or not.
Blended average (all campaign types)
$104
cost per lead, HVAC industry average
Non-branded search (new customers)
$149
the number that reflects real acquisition cost
Branded search — someone typing your company's actual name — is cheap because they already know you. It's a fine metric to track, but it's not acquiring new customers the way non-branded search or Local Service Ads are. If your reporting blends all three into one number, you can end up thinking your acquisition cost is far lower than it actually is.
How to Calculate Your True Cost Per HVAC Customer
Step 1: Separate your spend by campaign type if your agency's report doesn't already break it out — branded search, non-branded search, Local Service Ads, and Performance Max each need their own number.
Step 2: Add your agency management fee to whichever campaign type it's tied to (or split proportionally if it covers all of them).
Step 3: Divide by booked jobs, not raw leads — a lead that never turned into a job cost you money without producing revenue.
Step 4: Compare against your average ticket and margin — not just whether the lead was "cheap."
A related option worth knowing about: Google Local Service Ads (LSAs) — the "Google Guaranteed" listings that appear above standard search ads — have averaged around $51 per lead for HVAC specifically, with strong book rates, since Google only charges for leads within your defined service area and trade. Many HVAC contractors run LSAs alongside standard search rather than instead of it.
Questions to Ask If the Math Doesn't Add Up
- Is spend concentrated in non-branded search, or spread thin across many campaign types? A blended low number can hide an unprofitable non-branded campaign propped up by cheap branded clicks.
- How fast does your team respond to leads? Response speed has an outsized effect on book rate in home services — a lead that sits for hours before a callback books at a much lower rate than one answered immediately.
- Is the agency reporting leads, or booked jobs? These are very different numbers, and the gap between them is exactly where "the ads are working" claims tend to fall apart.
Frequently Asked Questions
What's a good cost per lead for HVAC Google Ads?
Industry data puts the blended average around $104, but non-branded search (the campaign type actually acquiring new customers) averages closer to $149, and Performance Max around $72. There's no single "good" number — what matters is whether your cost per booked job stays comfortably under your average ticket value.
Should I use Local Service Ads or standard Google Ads?
Many HVAC contractors run both. Local Service Ads tend to have lower cost per lead and only charge for leads matching your service area and trade, while standard search campaigns offer more control over targeting and messaging. Comparing true cost per booked job across both is the only reliable way to know which is earning its budget.
Why is my cost per lead so much higher than the industry average?
Common causes include heavy reliance on non-branded search (which costs more than branded or PMax), highly competitive local markets, or campaigns that haven't been segmented by campaign type — meaning slow, expensive non-branded clicks are mixed in with fast, cheap branded ones in the same reporting.
Does seasonality affect HVAC ad costs?
Yes — demand and competition both spike heading into peak cooling and heating seasons, which tends to push cost per lead up during those windows. Comparing your costs only within the same season year-over-year gives a more accurate read than comparing a summer month to a winter one.
How is this different from checking Google Ads ROI for other businesses?
The core calculation is the same — total spend divided by paying customers, compared to what a customer is worth — but HVAC has genuinely different campaign-type economics (branded vs. non-branded vs. LSA vs. PMax) that most other industries don't need to separate out as carefully.
The Bottom Line
"Is Google Ads working for my HVAC company?" isn't answered by a single blended cost-per-lead number. It's answered by looking at cost per booked job, broken out by campaign type, compared against your average ticket and margin.
You can pull this together yourself from your ads report and agency invoice, or run both through an audit tool that calculates blended true cost automatically. Your first audit is free; audit packs are available after that with no subscription.
What does your true cost per booked job look like once the management fee and campaign mix are both accounted for?