GUIDE · GOOGLE ADS & LOCAL SERVICES ADS

What a Google Ads Lead Really Costs, Broken Down by Trade

Cost per lead is not one number. It swings by trade, by market, and by how the campaign is built. Here are the honest 2026 ranges and what actually moves them.

Be Seen, Contractors!10 min readUpdated 2026

The short answer

Across home-service trades, a Google Ads lead in 2026 generally runs anywhere from about $25 to $250, and where you land inside that band is decided mostly by your trade and your market, not by luck. High-ticket emergency work (roofing, HVAC, water restoration) sits at the top because the intent is white-hot and every shop in town bids the same terms. Lower-ticket, lower-urgency work (handyman, small landscaping, junk removal) sits lower. There is no single national number worth quoting, because a benchmark that is not broken down by trade hides everything that sets the price. The number that actually matters is not cost per lead, it is cost per booked job, and that depends on your call handling and close rate as much as your bid.

Why cost per lead swings so hard from one trade to the next

Cost per lead is not a Google setting. It is the output of an auction, and the auction is different in every trade because the economics behind it are different. Three things set the price of your lead, and all three move by trade.

First, ticket size. A roof replacement is a five-figure job. A drain snake is a couple hundred dollars. Google's auction does not know or care about your margin, but your competitors do, and the shops selling five-figure jobs will bid a click up to a level a low-ticket trade would never touch. High average ticket pulls cost per lead up because everyone in that trade can afford to chase the same call.

Second, urgency. When a homeowner has no AC in August or water coming through the ceiling, the intent is total and immediate. That buyer is not comparison shopping for a week, they are calling the first credible shop. Emergency intent is the most expensive intent in local search, and the trades built on it (HVAC, roofing, plumbing, restoration) pay for it.

Third, competition density. In a metro with forty roofers all running paid, the auction is a knife fight and every click costs more. In a rural market with two, clicks are cheap. Same trade, different price, purely because of who else is bidding next to you.

Put those together and you get real spread. Two shops in different trades, both running clean campaigns, can post cost-per-lead numbers three or four times apart, and neither one is doing anything wrong. That is why a benchmark you read on some agency blog is close to useless until it is broken down by trade and grounded in your actual market. A single national average hides everything that matters.

There is a fourth factor that quietly moves the price, and it is seasonality. Storm season pulls roofing and tree work up hard for a few weeks; the first heat wave spikes HVAC; the first freeze spikes plumbing and no-heat calls. Your cost per lead in your trade's peak week is a different animal from your cost per lead in a slow month, and comparing the two as if they were the same number is how owners talk themselves into cutting a campaign that was fine. Read your CPL across a full season, not a single week, before you decide the channel is broken.

2026 cost-per-lead ranges by trade

Here is an honest read on where common home-service trades land on Google Search Ads in 2026, as a lead comes in (a real form or call, not a click). These are ranges, not promises: your metro, your seasonality, and how well the campaign is built can push you to either end. Treat this as a map, not a quote.

TradeTypical cost per leadWhat pushes it up or down
Roofing$75 to $250+Storm season, insurance work, and metro density push it high
HVAC$60 to $200Peak summer/winter emergencies spike it; maintenance leads are cheaper
Plumbing$50 to $180Emergency drain/leak calls cost most; scheduled work costs less
Water/fire restoration$100 to $300+Highest urgency and ticket in the mix; auction is brutal
Electrical$45 to $150Panel and emergency work priced above small fixture jobs
Tree service$40 to $120Storm-driven removals spike; routine trimming stays lower
Remodeling$60 to $200High ticket, long sales cycle; leads are pricey but rare and rich
Landscaping/lawn$25 to $90Lower urgency and ticket keep it near the floor
Painting$30 to $100Seasonal, competitive, mid-ticket
Junk removal$20 to $70Low ticket, high volume, one of the cheaper trades

Notice the pattern down that middle column: the trades built on emergencies and big tickets (restoration, roofing, HVAC) sit at the top, and the trades built on planned, lower-ticket work (lawn, junk removal) sit near the bottom. That is not an accident, it is the auction pricing urgency and margin exactly the way you would expect if you thought about it for a minute.

One caution. A high cost per lead is not automatically a bad deal. A restoration lead at $200 that closes a $12,000 job is a bargain. A landscaping lead at $30 that closes a $400 job might be tight once you count the ones that do not close. The trade with the scariest CPL is often the one where paid pays back the hardest, because the math is run per job, not per lead.

Cost per lead is a vanity number: cost per booked job is the real one

Every contractor asks what a lead costs. Almost none ask what a booked job costs, and that second number is the only one that touches your bank account. A lead is a phone call or a form. A booked job is money. The gap between them is where most paid budgets quietly leak.

Run the math. Say your cost per lead is $80. If half your leads turn into quotes and half of those close, you booked one job for every four leads, so your real cost per booked job is $320, not $80. Now say your CSR misses two of those four calls at 5pm on a Friday. Your cost per booked job just doubled to $640, and Google did not change a thing. You did.

This is the part generic agencies never put on the dashboard, because the leaks are on your side of the fence and they would rather show you cheap clicks. But the clicks are not the job. The job is the click plus a phone that gets answered plus a CSR who books plus a truck that shows up.

  • Answer rate. A missed call in an emergency trade is a lost job, full stop. That buyer dials the next shop before your voicemail finishes.
  • Speed to lead. Call a web lead back in five minutes and it is warm. Call it back in an hour and someone else already closed it.
  • Close rate. Two shops with identical CPL and different close rates have wildly different cost per booked job. The better closer wins the channel.

So before you decide your cost per lead is too high, check whether your cost per booked job is too high for a different reason. Very often the ad spend is fine and the leak is a phone nobody answers after 4pm. We build call-only and call-extension campaigns around dispatch reality for exactly this: getting the ring to a human when the intent is hottest, so the leads you already paid for actually turn into work.

What actually moves your number inside a trade

Your trade sets the neighborhood your cost per lead lives in. How the campaign is built decides which house on the street. Two roofers in the same city can post cost-per-lead numbers twice apart, same auction, same season, purely because one campaign is built and one is just switched on.

The levers that matter most, in rough order of impact:

  1. Negative keywords. The fastest money most contractor accounts waste is paying for clicks that were never a job: "how to," "DIY," "jobs," "salary," "free," "cheapest." A tight negative list cuts junk clicks and drops cost per lead without touching your bid.
  2. Match type and intent. Broad match with no guardrails spends your budget on tangents. Tighter targeting aimed at buying intent ("emergency," "repair near me," "replace," "quote") buys leads, not curiosity.
  3. Landing page. Sending paid clicks to your homepage burns money. A dedicated page for that ad, that trade, that service area, with the phone number huge and one clear action, converts more of the clicks you already bought, which pulls cost per lead down.
  4. Ad copy that pre-qualifies. Say your service area, your specialty, and your terms in the ad. Copy that filters out the wrong caller is copy that lowers cost per booked job, even if it slightly raises cost per click.
  5. Local Services Ads alongside Search. Where LSA (the Google Guaranteed pack at the very top) is available for your trade, it often delivers a cheaper cost per lead than Search because you pay per lead, not per click, and you only pay for leads that fit. It is not a fit for every trade, but where it fits it is usually the first thing to turn on.

None of these is exotic. They are the difference between an account that a generic agency set up once and forgot, and an account that is actually managed against your cost per booked job every week. The trade is the floor. The build decides how far above it you sit.

Where Local Services Ads change the math

For a lot of home-service trades, the cheapest lead on Google is not a Search Ad at all. It is a Local Services Ad, the Google Guaranteed pack that sits above everything else on the page, and it changes the cost-per-lead conversation entirely because you pay per lead, not per click.

The difference is real. On Search Ads you pay every time someone clicks, whether they call, bounce, or were never going to buy. On LSA you pay only when a qualified lead comes through, and Google lets you dispute leads that were plainly out of area or the wrong service. For trades where LSA is available (plumbing, HVAC, electrical, roofing, and a growing list), that per-lead model often beats Search on raw cost per lead, and the badge earns trust that lifts your answer rate on top of it.

The catch is that LSA is not open to every trade or every market, and getting the Google Guaranteed badge means passing background and license screening before you can run. That screening is paid, gated setup work, which is why it lives in the same lane as the rest of your paid acquisition. It is also why a lot of contractors give up on it halfway: the screening is fiddly and the payoff is not obvious until the badge is live.

The right play for most established shops is not LSA or Search, it is the stack: LSA at the top capturing the cheapest, highest-trust leads, and Search Ads underneath catching the specific, high-intent queries LSA does not serve. Run together, the two channels lower your blended cost per lead below what either does alone. We set up the badge, handle the screening, and build the Search layer to fill the gaps, so the top of the page is working for you instead of the shop across town. Where LSA is not available for your trade yet, a well-built Search campaign carries the load until it is.

Setting a cost-per-lead target you can actually live with

The honest way to judge your cost per lead is not against a national average, it is against your own math. You do not need a benchmark to know if paid works for you. You need three numbers, and you already have them.

Start with your average job value, your close rate on quoted leads, and the margin you keep. Work backward from the job to the lead you can afford:

  • Average booked-job value: what a closed job is worth to you, not the biggest one you ever landed.
  • Lead-to-job rate: of the leads that come in, what share become paying jobs after your CSR and your close rate have their say.
  • What you will spend to win a job: a comfortable slice of the margin, so paid is buying profit, not renting it.

Run it through: if a booked job is worth $6,000 at 40% margin, and you are willing to spend, say, 10% of that job's value to win it, you can afford up to about $240 to book it. If your lead-to-job rate is one in four, that means you can pay up to roughly $60 per lead and still be ahead. Now compare that ceiling to the trade ranges above. If your trade's typical cost per lead sits under your ceiling, paid is a machine you should be feeding. If it sits above, either the campaign build needs work to pull the number down, or your close rate does, or the channel is genuinely wrong for that service and you should say so.

That is the whole discipline: set a cost-per-lead ceiling from your own job economics, then manage the account down toward it instead of chasing whatever number a blog told you was normal. A shop that knows its ceiling never panics about a headline CPL, because it is measuring the only thing that matters, which is whether each dollar of ad spend comes back with a friend. We build accounts against that ceiling, not against vanity clicks, and we will tell you straight if the math does not close.

Key takeaways

  • Contractor Google Ads cost per lead in 2026 generally runs $25 to $250, set mostly by trade and market.
  • Emergency, high-ticket trades (roofing, HVAC, restoration) sit at the top; low-ticket, low-urgency trades sit near the floor.
  • Cost per lead is a vanity number; cost per booked job is what hits your bank account.
  • A missed call or slow callback can double your cost per booked job while Google's number stays flat.
  • Negative keywords, tighter intent, and a dedicated landing page lower cost per lead without raising your bid.
  • Set your CPL ceiling from your own job value, close rate, and margin, then manage the account down to it.

STRAIGHT ANSWERS

Quick answers.

01Why is my cost per lead so much higher than another contractor's?

Almost always trade and market. High-ticket, high-urgency trades in dense metros pay the most per lead because everyone bids the same white-hot terms. Two shops in different trades or different cities can post numbers three or four times apart and both be running clean campaigns.

02Is a high cost per lead always a bad sign?

No. A restoration or roofing lead at $200 that closes a five-figure job is a bargain, while a low-ticket lead at $30 can be tight once you count the ones that do not close. Judge it per booked job against your margin, not per lead against a blog average.

03Will Local Services Ads lower my cost per lead?

Often, for the trades where it is available, because you pay per qualified lead instead of per click and can dispute leads that were out of area or the wrong service. It requires passing Google Guaranteed screening first, and it is not open to every trade or market, so it is usually run stacked with Search rather than instead of it.

04What is a good cost-per-lead target for my trade?

The one your own math supports. Take your average booked-job value, your margin, and your lead-to-job rate, decide what slice of a job you will spend to win it, and back out a per-lead ceiling from there. If your trade's typical range sits under that ceiling, paid is worth feeding.

WANT THIS HANDLED FOR YOU?

Want to know your real number, per booked job?

Book a strategy call or grab a free audit and we will run your trade, your market, and your job economics into an honest cost-per-lead ceiling, then tell you whether paid closes the math. Since 2008.

Start With the Free Audit
Call (407) 705-2452 Text