Blog › Lead costs
Lead costsNov 15, 2026·6 min read

What's a Good Cost Per Lead for Roofing, Plumbing, Landscaping & Concrete?

Lead costs
$30–47
per lead
The short versionIn the contractor accounts I run, quality Facebook leads cost about $45–47 for roofing, $40–45 for attic and insulation, $35–40 for concrete and $30–35 for plumbing and landscaping. But the number that matters is what each paying job costs you.

"Is $40 a lead good or bad?"

It's the first question most contractors ask me. And the honest answer is: it depends on your trade, your area and what happens after the lead comes in.

But you still deserve real numbers. So here's what I see in the contractor ad accounts I run right now.

Real cost per lead by trade

These are quality leads from Facebook and Instagram ads: real homeowners who filled in their details, not just clicks.

Roofing
$45–47
Attic & insulation
$40–45
Concrete
$35–40
Plumbing
$30–35
Landscaping
$30–35
$0$20$40$60
Typical cost per quality lead in the contractor accounts I manage.

Your numbers can land higher or lower. Location, competition, your creatives and your offer all move it.

One example: with a price-first funnel, one of my roofing clients got leads at $25–50, after the old setup spent $100+ for zero leads. Here's that story.

Real ad account
Meta Ads Manager · last 30 days
Meta Ads Manager showing 38 leads at $39.81 per lead
A Bay Area home-service account I manage: 38 leads at $39.81 each in 30 days. Client details blurred.

Why the cheapest lead isn't the goal

A $15 lead sounds great. Until none of them pick up the phone.

The number that pays your bills is cost per customer, not cost per lead.

Don't ask "how cheap are my leads?" Ask "how much does it cost me to get a paying job?"

In my landscaping case study, leads cost about $26 each. But what mattered was this: 16 paying customers from $10,500, about $656 per customer, and $78,000 in revenue.

Looks good, isn't$15per lead · nobody answers · no jobs
Looks pricier, pays$40per lead · real homeowners · booked jobs

How much can you afford per lead?

Most contractors can pay far more per lead than they think. Here's a quick way to work it out:

Average profit per job$3,000
You close 1 in every…8 leads
Break-even cost per lead$375
Example numbers. Swap in your own: profit per job ÷ leads needed per job.

If your break-even is $375 and you're paying $45, every lead has plenty of room to make money. The real risk isn't the cost per lead. It's leads you never follow up on.

Not sure if your cost per lead is healthy?Send me your numbers. I'll tell you honestly how they compare.
Get my free audit →

What pushes your cost per lead up or down

  • Location: big, busy metros cost more than smaller towns.
  • Competition: when every roofer in town is running ads, prices rise.
  • Creatives: tired ads that people have seen 10 times stop working. Fresh videos and images bring costs down.
  • Your offer: "Get a free quote" is weak. Giving homeowners something useful first, like a price estimate, gets more of them to respond.
  • The page after the click: if lots of people click but few fill in the form, the problem is your landing page, not your ad.
Real ad account
Meta Ads Manager · last 30 days
Meta Ads Manager showing 61 leads at $24.86 per lead
Another home-service account: 61 leads at $24.86 each in 30 days. Client details blurred.

Common questions

What is a good cost per lead for roofing Facebook ads?

In the roofing accounts I manage, quality leads typically cost about $45–47. With a price-first funnel, one roofing client got leads at $25–50. Your area, competition, creatives and offer all move the number.

What is a good cost per lead for plumbing?

Around $30–35 per quality lead in the plumbing accounts I run. Emergency plumbing and big cities usually cost more.

Is a cheap cost per lead always better?

No. A cheap lead that never answers costs you more than a $40 lead that books a job. Track cost per paying customer, not just cost per lead.

Why is my cost per lead going up?

The most common reasons are tired creatives, more competition in your area, a weak offer, or a landing page that loses people after they click.

Want me to look at your ads?

Send me your ad account or website. I'll review it personally and tell you the first 3 things I'd fix. Free, no strings attached.

Usually replies the same day · 151 client reviews

Keep reading

Roofing
Clicks…
but no
leads?
Roofing5 min read

Why Your Roofing Ads Get Clicks But No Leads

Homeowners want a price, not a sales call. How $100+ for zero leads became $25–50 per lead.

Follow-up
5 min
or the lead goes cold
Follow-up5 min read

Speed to Lead: Why the First Contractor to Call Back Gets the Job

The lead that waits until tomorrow is already talking to someone else.

Case study
$10.5K
→ $78K revenue
Case study6 min read

From $10,500 in Ads to $78,000 in Revenue: A Landscaping Case Study

401 leads, 22 appointments, 16 paying customers. The numbers at every step.