← All posts

Benchmarks

What Should a Lead Actually Cost?

Almost every business owner I talk to can tell me what they're spending on ads. Very few can tell me what a lead is supposed to cost in their trade. That gap is the single easiest way to get taken advantage of, because if you don't know the number, you can't tell whether you're being served well or quietly bled.

So here are the actual figures for 2026, broken out by trade, for both Google and Meta. Then the more important part: why the average is close to useless on its own, and how to work out the only number that really applies to you.

Work it out for your business

What is a lead actually worth to you?

A lead is worth

$120

This is your break-even. Pay more than this per lead and you are working for free.


Comfortable target

under $40

Roughly a third of break-even — that is a 3× return on ad spend.

Nothing is sent anywhere — this runs in your browser

Average job value, times your gross margin, times the share of leads you actually close. That's the gross profit one lead generates on average, and it's the ceiling on what you can afford to pay for one. Everything after this is context for that number.

Google Ads — cost per lead by trade

Google is intent-driven. Someone typed the thing they need, which is why leads cost more and generally close better. These are 2026 search benchmarks across thousands of home-services campaigns.

TradeAverage cost per leadNotes
Roofing$228Highest of the standard home-services categories. Big ticket, brutal competition.
Air conditioning — install & repair$128Heating and furnace work lands about the same.
HVAC (blended)$85Hides a wide spread between service calls and full installs.
Plumbing$76Emergency terms cost far more than scheduled work.
Cleaning & maid services$47Lower ticket, higher volume, repeat revenue.
Pools & spas$45Service and maintenance. New construction runs much higher.
Garage door repair$40–80Residential repair — the bread-and-butter job. Commercial overhead work runs several times higher.
Junk removal$35–50Once optimized. New accounts commonly start at $60–80 before they settle.
Auto detailing (automotive avg.)$33Ceramic coating keywords run $12–22 per click, but tickets of $800–2,500 carry it.
Home services — all trades blended$91Typical range across the category runs roughly $29 to $101.
Google search benchmarks, 2026. Averages across thousands of campaigns — your market will differ.

Google Local Services Ads — the pay-per-lead ones with the green check — are worth a separate look in the trades where they're available. Junk removal, for instance, tends to run $30–65 a lead there, often with better lead quality than standard search, because you only pay for actual calls.

Meta Ads — cost per lead by trade

Meta is interruption-driven. Nobody was looking for you, so leads are cheaper and usually softer — they need faster follow-up and more nurturing to close at the same rate.

TradeAverage cost per leadNotes
Roofing & HVAC installs$115+High-ticket work stays expensive on any platform.
Landscaping$59Published figure.
Painting$45–80Varies hard with market size and creative format.
Plumbing / landscaping / painting$45–80Typical band for mid-ticket trades.
Home services — blended~$34Up from about $31 in 2025.
Average cost per click$2.30Meaningfully cheaper per click than Google.
Meta benchmarks, 2026. The blended average is dragged down by low-ticket, high-volume trades.

The trades nobody publishes numbers for

Here's where I have to be straight with you, because plenty of sites won't be. Garage door, junk removal, auto detailing and boat detailing have no published Meta benchmark. Not a hidden one — it doesn't exist. The benchmark sets everyone quotes cover the big standardized categories, and these trades either get folded into a broader bucket or left out entirely.

You'll still find articles confidently listing a Meta cost per lead for all of them. Those numbers are either invented or lifted from a single agency's client. I'd rather show you the reasoning and let you do the same thing yourself.

The relationship that does hold, consistently, is that Meta lands materially below Google for the same trade — usually somewhere between a third and two-thirds of the Google figure — because you're interrupting rather than capturing intent. Apply that to the Google numbers we do have and you get a working range:

TradeGoogle (published)Meta (our working estimate)Basis
Garage door repair$40–80$25–55Urgent, low-consideration, strong before/after visuals. Meta works better here than most expect. Commercial overhead work is a different story — leave that on search.
Junk removal$35–50$15–35The strongest Meta fit on this list — impulse-friendly, visual, and the before/after sells itself.
Auto detailing / ceramic coating$33 (automotive avg.)$20–45Highly visual, discretionary spend, younger audience. Meta frequently beats Google outright here.
The middle column is published. The Meta column is our estimate from the Google figure and the platform relationship — treat it as a starting hypothesis and replace it with your own data after thirty days.

One number in there is worth pulling out: businesses running video creative on Meta report meaningfully lower cost per lead than those running statics — reported gaps of 30–60% in some categories. That isn't a coincidence, and it connects directly to how Meta actually decides who sees your ad. The system reads your creative to do the targeting, and video gives it far more to read.

If your trade still isn't in the table

A few of the trades I work with have no published figure on either platform — land clearing, pressure washing, tree work, dock and seawall. I'd rather say that plainly than invent a number for them.

What to do instead: find the published trade closest to yours on ticket size and urgency, and anchor to it. Land clearing behaves like roofing — big ticket, considered purchase, long cycle. Pressure washing behaves like cleaning services. Dock and seawall work sits near roofing again: permits, contracts, patience.

Then throw the anchor away as soon as you have thirty days of your own data, because your own numbers beat any industry average the moment they exist.

Back to your own number

Now put your figures into the calculator at the top, and watch the industry average stop mattering. A roofer with a $14,000 average job and a 30% close rate can pay $228 a lead all day and get rich doing it. A cleaning company with a $180 job and a 20% close rate cannot pay $47 without going backwards. Same tables, opposite conclusions.

"Our leads cost $90" is not information. "Our leads cost $90 and a lead is worth $310 to us" is a business. The first sentence starts an argument; the second one ends it.

This is also the honest answer to "can you get my leads cheaper?" Sometimes yes. But if your leads already cost a third of what they're worth, cheaper leads is the wrong goal — more of them is the goal, and that means spending more, not optimizing harder.

Why your numbers can look terrible when nothing is wrong

Four reasons, in the order I run into them.

  1. 1

    You judged it too early — and then made it worse

    This is the big one. Every ad set needs roughly fifty conversion events before delivery stabilizes. Until then the numbers genuinely are erratic, and they're supposed to be. What happens instead: the owner watches for thirty-six hours, panics, changes the budget, changes the audience, swaps the creative — and every one of those edits restarts the clock. I'm confident this kills more campaigns than bad creative does. Give it three to five days untouched. It will look wrong before it looks right.

  2. 2

    Your tracking is under-reporting

    Between iOS tracking prompts, browser blockers and privacy defaults, browser-side tracking loses a real share of conversions that actually happened. So the platform under-reports, your cost per lead looks inflated, and the algorithm is also optimizing against incomplete data — which makes it genuinely worse over time. Server-side tracking recovers most of that. If you fix one technical thing before spending more, fix measurement.

  3. 3

    Your market is too small

    Meta needs a meaningful population to optimize against. If your service area holds a small number of reachable people, you'll face structurally higher costs no matter who runs the account. That's a market-size fact, not a strategy failure — and the fix is usually widening the radius or changing platform, not tweaking bids.

  4. 4

    You are comparing the wrong seasons

    Comparing August to your December numbers in a seasonal trade tells you about the calendar, not the campaign. Compare to the same period last year, or to the run rate immediately before a change.

How to tell whether whoever runs your ads is doing a good job

You don't need to learn the platforms to evaluate this. You need to be able to get straight answers to a short list of questions. If the answers are vague, that's your answer.

  • "What does a lead cost us, and what is a lead worth to us?" Both numbers. Anyone running your ads should know the second one, and if they've never asked you for job value, margin and close rate, they can't know it.
  • "How many of last month's leads turned into actual jobs?" Leads are not the product. Booked revenue is. If nobody is closing that loop, you're optimizing for form fills.
  • "Is our conversion tracking server-side?" If the answer is confused, your data is probably understating results and your costs look worse than they are.
  • "What did you change in the last thirty days, and why?" There should be a short, specific answer. "Optimizing" is not an answer. Neither is a list of daily edits, which usually means the learning phase never completes.
  • "How much of the budget went to creative?" On Meta especially, creative is the targeting now. An account with one ad running for eight months isn't being managed.
  • "Show me the search terms we paid for." On Google, this one is unmissable. Ten minutes in that report tells you whether anyone is watching where the money goes.

The short version

  • Benchmarks tell you if you're in the right universe. They don't tell you if your ads work.
  • Job value × margin × close rate = what a lead is worth. That's your real ceiling.
  • Home services lead costs rose about 10.5% year over year — roughly double the all-industry rate.
  • Google leads cost more and close better. Meta leads cost less and need faster follow-up.
  • Give a new campaign three to five days untouched, and about fifty conversions, before you judge it.
  • If your leads cost far less than they're worth, the answer isn't cheaper leads. It's more of them.

Questions I get asked about this

What is a good cost per lead for HVAC?

Google search benchmarks for 2026 put HVAC around $85 per lead blended, with air conditioning install and repair closer to $128. On Meta, HVAC installs can run past $115. But whether that is good depends entirely on your job value, margin and close rate — an HVAC company with a $9,000 average install can pay far more than one doing $180 service calls.

What is the average cost per lead for roofing?

Roofing is the most expensive home services category on Google at roughly $228 per lead in 2026, and $115 or more on Meta. Given typical roofing job values, that is frequently still very profitable — high cost per lead is not the same as bad cost per lead.

What does a plumbing lead cost?

About $76 on Google search in 2026, and roughly $45 to $80 on Meta. Emergency-intent keywords cost considerably more than scheduled maintenance work.

What does a garage door lead cost?

It depends heavily on the job and campaign type, which is what makes the blended average misleading. On Google in 2026: residential repair runs roughly $40 to $80 per lead, non-branded search averages about $173, branded search about $66, and commercial or overhead door work runs $300 to $600. The blended figure across all campaign types is around $145. On Meta there is no published benchmark; we work from an estimated $25 to $55 for residential repair, and we would not run commercial door campaigns on Meta at all.

What does a junk removal lead cost?

On Google search, roughly $35 to $50 per lead once a campaign is optimized, with new accounts commonly starting around $60 to $80 before they settle. Google Local Services Ads tend to land between $30 and $65 with good lead quality. There is no published Meta benchmark; junk removal is one of the strongest Meta fits in home services because the before-and-after visual does the selling, and we estimate $15 to $35 there.

What does an auto detailing or ceramic coating lead cost?

The published automotive average sits around $33 per lead on Google. Ceramic coating keywords specifically run $12 to $22 per click, which sounds alarming until you weigh it against typical tickets of $800 to $2,500. There is no published Meta figure; detailing is highly visual and discretionary, so Meta frequently outperforms Google outright — our working estimate is $20 to $45.

What does a boat detailing lead cost?

There is no published benchmark for boat detailing on either platform, and anyone quoting one is guessing. The nearest published marine data covers boat dealerships, which is a different business. Anchor to auto detailing and expect to pay more for fewer leads — the audience is far smaller, concentrated near water and heavily seasonal. Our working estimate on Meta is $35 to $70. Coastal markets like Southwest Florida carry a genuine structural advantage here.

What about pool service or land clearing?

Pools and spas run about $45 per lead on Google for service and maintenance work, with new construction much higher. Land clearing has no reliable published benchmark — anchor it to roofing, since both are big-ticket considered purchases with long sales cycles, then replace the anchor with your own data after thirty days.

How do I work out what I can afford to pay for a lead?

Multiply your average job value by your gross margin, then by the percentage of leads you close. That is the average gross profit a single lead produces, and it is your break-even. Paying meaningfully less than that number means ads are profitable; paying more means you are working for free.

Why did my cost per lead go up this year even though nothing changed?

Because for most home services businesses it did. Cost per lead rose for 69% of home services advertisers year over year, averaging around a 10.5% increase — roughly double the all-industry rate. A campaign performing identically to last year is losing ground in real terms.

Are Facebook leads worse than Google leads?

They are different, not worse. Google captures existing intent, so leads cost more and generally close at a higher rate. Meta interrupts people who were not searching, so leads cost less but need much faster follow-up and more nurturing. Judge each on cost per booked job, not cost per lead.

How long before I can tell if a campaign is working?

Three to five days minimum without touching it, and realistically thirty days for a stable read. Each ad set needs roughly fifty conversion events before delivery settles, and editing budget, audience or creative resets that clock. Judging at thirty-six hours and then making changes is the most common way campaigns get killed before they ever had a chance.


Want this working on your business?

I work with a small number of businesses at a time. If something here sounds like your situation, let's talk.

Let's Talk