MoreJobCalls.com is a marketing company for deck builders and other home-service contractors that books exclusive sales appointments onto the owner's calendar instead of selling shared leads. So I have a stake in how you answer this question, and I'll say so when it comes up. Every market number below is linked to whoever published it, and every number from our side comes out of a named contractor's account, so you can go check.

If you search this, you'll find a handful of blogs quoting a cost per lead by trade and stopping there. That's half the answer. The other half is what a lead turns into once you try to call it, and that's where the price on the invoice stops meaning much.

Cost Per Lead for Contractors in 2026: Published Ranges by Trade

These are published ranges from third-party sources as of September 2026. They disagree with each other, sometimes by a lot, because they measure different things. Some are Google search only. Some blend every channel. Some count ad spend only and leave out management fees. Read them for shape, not as a quote.

TradeGoogle search, average CPLOther published rangesWhat drives it
Roofing$228.15$60–$250+ paid channels (Be Seen). $25–$80 exclusive, ad spend only (Minyona)Storm and insurance demand, heavy bidding on search
Doors & windows$200.34$60–$100 exclusive, ad spend only (Minyona)Long sales cycle, big national advertisers
Sidingn/a$40–$75 exclusive, ad spend only (Minyona)Often sold alongside roofing, same seasonality
Decksn/a$75–$175 shared on Angi/HomeAdvisor, $30–$70 Google search, $18–$45 Facebook (Home Service Direct). $40–$70 exclusive (Minyona)Want purchase, custom build, three quotes almost every time
Fencingn/a$25–$55 exclusive, ad spend only (Minyona)Lower ticket, more urgency than decks
HVAC$129.02$40–$150 paid channels (Be Seen)First heat wave and first cold snap
Landscaping$117.92n/aSeasonal, wide spread between maintenance and install
Remodelingn/a$75–$300+ paid channels (Be Seen)Highest ticket, longest sales cycle

Sources: Google search averages are from LocaliQ's home services search benchmarks (April 2024 to March 2025 campaign data). Paid-channel ranges are from Be Seen, Contractors!. Exclusive ad-spend ranges are from Minyona. Deck figures by source are from Home Service Direct. Across every industry, LocaliQ's 2026 search benchmarks put the average search lead at $66.69 and the average home and home improvement lead at $90.92.

By source, the spread is even wider

The same trade can cost three times as much depending on where the lead came from. Shared marketplaces like Angi sell one homeowner to several contractors. Google search catches people already shopping, which is why it's the most expensive click. Facebook reaches people who weren't shopping yet, so the lead is cheaper and needs more work. LocaliQ's Facebook benchmarks put the average home and home improvement lead at $41.26. None of these is the right answer on its own. Each one has a different contact rate, and that's the number that decides what you really paid.

How Much Should a Contractor Pay Per Lead? Work Backward From the Job

Here's the thing most cost-per-lead articles skip. There is no correct price for a lead in the abstract. There's only a correct price for your job size, your close rate and your ability to reach people. So you work backward, in four steps.

  • Step 1, what you'll spend to win one job. JWeis Agency publishes 3 to 8% of contract value as a healthy acquisition cost for contractors. On a $30,000 job, that's $900 to $2,400.
  • Step 2, multiply by your close rate. If you close 30% of the appointments you actually run, your ceiling per sat appointment is $270 to $720.
  • Step 3, multiply by your lead-to-appointment rate. If one in ten of your leads turns into a sat appointment, your ceiling per lead is $27 to $72. If four in ten do, it's $108 to $288.
  • Step 4, compare that ceiling to what you're paying. Not to what other contractors are paying. To your number.

Notice what just happened in step 3. The same contractor, with the same job and the same close rate, can afford four times more per lead just by reaching more of the people he pays for. That's why two roofers paying the same price for the same source can have completely different opinions about whether it works.

The Reframe: Cost Per Lead → Contact Rate → Cost Per Sat Appointment → Cost Per Signed Job

Every lead you pay for has to survive three filters before it's money: someone has to answer, they have to book, and they have to sign. Here's that chain side by side. The first two columns use round numbers to show the mechanism. The third is a real deck account.

Shared lead, illustrationSame price, exclusive, illustrationE&C Custom Homes, actual
Cost per lead$50$50About $48 per inquiry
Contact rateAbout 2 in 10About 8 in 10Not tracked separately. 106 inquiries became 42 completed appointments
Cost per conversation$250$62.50n/a
Cost per sat appointment (half of conversations book)$500$125About $122 per completed appointment
Cost per signed job (30% close)About $1,667About $417About $426 in ad spend (12 jobs won)

The contact rates in the first two columns aren't made up. Chip Paynter is a 33-year veteran general contractor out of Loomis, California. Buying shared leads, he was reaching about 2 of every 10. After we moved him to an exclusive qualification funnel he was talking with at least 8 of 10. I wrote up what that did to his real cost per deck lead, including the bid he drove out to on a lot with no house on it.

The third column is Chris Walters at E&C Custom Homes in Gulf Shores, Alabama. He spent $5,109.15 on Meta ads between June 25 and September 1 at $100 a day. That produced 106 inquiries, 42 completed appointments and 12 jobs won in the CRM. Divided out, it's about $48 per inquiry, about $122 per completed appointment and about $426 in ad spend per signed deck job. The full E&C breakdown has the rest, including why we paused the ads when he got booked out ten weeks. That's one account over one stretch, not a rate card.

Look at the bottom row. The $48 inquiry and the $50 shared lead cost almost the same. The signed job costs about four times less. If you only ever compared cost per lead, you'd call those two sources a tie.

Why Contact Rate Moves Your Real Cost More Than Price

Most contractors think they have a lead cost problem. Usually they have a reach problem. Three things kill contact rate, in this order.

  • The lead was shared. The same homeowner got three or four calls in ten minutes. By the time you dial, they've already picked someone or stopped answering unknown numbers.
  • The form asked for nothing. A one-tap form is cheap because it filters nobody. Cheap forms produce cheap cost per lead and expensive cost per appointment.
  • You called too late. Forty minutes after the form is a different call than forty seconds after. If you're running jobs all day, this one isn't a character flaw, it's a staffing problem, and it's worth fixing before you buy more of anything. I wrote more on why contractor leads don't answer.

A higher price per lead is often the cheaper option once you account for this. A homeowner who answers a few qualifying questions and picks a time on your calendar costs more to generate and a lot less to turn into a job.

What Changes by Trade

Ticket size and urgency decide which sources make sense.

Small, urgent, similar-price jobs like a drain clog, a furnace repair or a garage door spring are where shared leads hold up best. The homeowner wants it fixed today and there isn't much to compare, so being first to call wins.

Big, custom, want-purchase jobs like decks, patio covers, pools, remodels and full roof or siding replacements are the opposite. Nobody's in a hurry, two honest bids can be $20,000 apart, and the homeowner is going to collect three quotes no matter what. On those jobs, a shared lead buys you a seat in a price fight. That's why deck builders tend to outgrow the marketplaces first, which I went through source by source in Angi alternatives for deck builders.

Fencing and gutters sit in between. Lower ticket, lower published cost per lead, and more tolerance for shared sources if you answer fast.

Justin Wylie at All Pro Decks & Patios in San Antonio is what the wrong source looks like at deck ticket sizes. After six marketing companies, he was paying around $400 per lead at maybe 15 a month, almost all from Google, with the homeowner already talking to three or four other builders. Fourteen days after switching to a system built around his own ad account and calendar, his cost per inquiry was under $30 at about 30 a week, and he put out almost a million dollars in quotes in the first week. That's Justin's 14-day breakdown, in his words.

How to Set Your Own Number This Week

  • Pull 90 days of data from every source. Spend, leads, how many you actually reached, how many booked, how many showed, how many signed.
  • Divide spend by each stage. You want cost per lead, cost per conversation, cost per sat appointment and cost per signed job for each source.
  • Set your ceiling from the job. Pick the share of contract value you'll spend per signed job, then work it back through your close rate and contact rate.
  • Cut or fix on cost per signed job. Not on cost per lead. A source with a scary per-lead price can be your cheapest channel.
  • Ask vendors for the last two numbers. Any vendor worth paying can tell you what a sat appointment costs. Watch how they answer.

If you run a deck or outdoor living company, the long version of how the whole system fits together, ads through booked calendar, is on the deck builder marketing page. For every channel ranked on cost per booked appointment instead of cost per lead, see deck builder lead generation, every channel ranked.

And if you are weighing vendors rather than channels, the five categories of lead generation company a contractor can buy from explains what each one is actually paid on, which is usually the tell.

The Short Version

Published 2026 cost per lead for contractors runs from about $20 to $250 for most trades, with roofing, windows and remodeling at the top and fencing, gutters and small-ticket service at the bottom. Those ranges are useful for spotting a vendor who's way off market. They're useless for deciding what you should pay, because they leave out the two numbers that decide it: how many of those people you actually reach, and how many you close. Work it backward from your job, track the whole chain, and let cost per signed job pick the winner.

For what it's worth on our side: we run roughly $250K a month in managed ad spend across about 20 active builders, $10M+ lifetime, tracked across 100+ contractor accounts since 2024, with $100M+ in client-booked jobs behind it. The numbers on this page from our side came out of those accounts and recorded calls with the owners.