May 18, 2026

7 minute read

Roofing Leads: Pay-Per-Lead vs Inbound (The Real Math for 2026)

SEO Guides

Every roofer eventually faces the same decision. You can buy leads from Angi, HomeAdvisor, Networx, or one of the dozens of pay-per-lead services that have your phone number. Or you can spend the same money on SEO, paid search, and content — and own your lead flow.

The marketing for pay-per-lead is sharper, the sales reps are louder, and the leads start showing up the same week you sign. So most roofers default to it.

This article is the math. Not the philosophy. After running the numbers, you may still pick pay-per-lead — but at least you'll know what you're buying.

TL;DR

  • Pay-per-lead averages $80–$250 per lead in 2026, with close rates between 8–14%. True cost per closed job: $700–$2,800.
  • Inbound (SEO + your own website + Google reviews) averages $40–$120 per lead with close rates of 25–40%. True cost per closed job: $200–$500.
  • Pay-per-lead gives you volume in 7 days. Inbound gives you compounding cost-per-lead reduction over 18 months.
  • The right answer for most roofers: use pay-per-lead as a stopgap while you build inbound. Don't pick one forever.

How pay-per-lead actually works

You sign up with a lead aggregator. They sell you "exclusive" or "shared" leads. Most are shared — meaning the same homeowner is sold to 3–4 contractors at the same time.

Costs in 2026 typically look like this:

  • Shared leads: $40–$120 per lead
  • Exclusive leads: $150–$400 per lead
  • Live-transfer leads (the homeowner is on the phone now): $200–$600

What aggregators don't print in big font:

  • 20–35% of leads are wrong number, wrong service area, or already serviced.
  • "Exclusive" sometimes means "exclusive within 24 hours" — after that, the lead may be resold.
  • Refund/credit policies are real but tight. You have a 24–72 hour window to dispute bad leads, and approval is not guaranteed.

Close rate on shared leads averages 8–14% across roofing in 2026. On exclusive: 18–25%. On live-transfer: 30–40%.

Math for a typical $5M roofing company buying shared leads:

  • 100 leads/month × $80 = $8,000 spend
  • 11% close rate = 11 jobs closed
  • True cost per closed job = $727
  • Average job revenue: $12,000 → cost as % of revenue: 6%

That's not terrible. But here's the part that hurts: that $8,000 evaporates every month. Stop paying, leads stop. You own nothing.

How inbound actually works

"Inbound" for a roofer is some combination of:

  • A website that ranks for "[city] roofer" and "roof replacement [city]"
  • Google Business Profile with 80+ reviews
  • Google Local Service Ads (LSA — Google's version of pay-per-lead, but cheaper)
  • Some Google Ads / Meta Ads on top
  • Content (blog posts, video) that captures longer-tail searches
  • A direct referral engine from past customers

Setup cost is higher and slower. Most roofers spend $2,000–$6,000/month on inbound (website, SEO, content, ads, review automation), and the system takes 6–12 months to mature.

Once mature, the math is brutally different:

  • Google Business Profile + reviews: leads cost nothing once you have them
  • SEO blog/website: typically delivers leads at $20–$60 each
  • LSA: $40–$120 per lead (similar to pay-per-lead, but Google does the matching)
  • Direct Google Ads: $50–$150 per lead with good landing pages

Close rate on inbound is 2–3× pay-per-lead because the homeowner found you, they're not being sold to four contractors, and they're already partway through the trust-building process.

Math for the same $5M company shifted to inbound:

  • $5,000/month spend (website maintenance + SEO + LSA + reviews)
  • 80 leads/month (lower volume than pay-per-lead at first)
  • 32% close rate = 25 jobs closed
  • True cost per closed job = $200
  • Cost as % of revenue: 1.7%

The volume is initially lower. The unit economics are dramatically better. And — this is the part that matters most — once it's running, the cost per lead drops every year as your domain authority and review count compound. Pay-per-lead's cost rises every year.

When pay-per-lead actually makes sense

Pay-per-lead isn't wrong. It's a financial instrument with specific use cases:

  • You just started. You have no Google reviews, no domain authority, and you need leads this week. Buy them while you build.
  • You're entering a new geography. Same logic. Buy leads while your local SEO and reviews catch up.
  • You have excess crew capacity to fill. Marginal job is profitable, so any closed lead is gravy.
  • Storm chasing. Speed matters more than cost. Buy live-transfer leads aggressively, deal with margins later.

What pay-per-lead is not: a sustainable customer acquisition strategy for a stable, growing roofing company. It's rent. Useful, but rent.

When inbound is non-negotiable

  • You want to sell the company in 3–5 years. Buyers pay multiples on inbound revenue, not pay-per-lead revenue. One is an asset. The other is an expense line that disappears with the seller.
  • You're in a competitive metro. Pay-per-lead prices in dense markets (Dallas, Phoenix, Tampa) have crossed $200/lead. Math gets worse every year.
  • You're insurance/storm focused. Insurance customers don't tend to buy from Angi. They Google "storm damage roofer [city]." If you don't rank, you don't exist.

The hybrid that actually works

The smartest roofers don't pick. They run:

  1. Pay-per-lead at a controlled monthly cap. Treat it as a volume floor.
  2. Local SEO as the long-term investment. (Local SEO services for roofers is exactly this play.)
  3. Storm lead response automation for when weather creates demand spikes. (Storm lead response.)
  4. Owned website that converts both kinds of traffic. (Custom website.)
  5. AI receptionist + fast follow-up so neither channel leaks. (AI voice agent.)

The single biggest mistake roofers make is buying leads and then dropping them. Pay-per-lead at 14% close rate becomes pay-per-lead at 28% close rate when you respond in under 5 minutes with an AI receptionist or text-back system. That alone doubles your ROI on the channel before you change anything else.

How to decide for your company (quick framework)

Answer three questions:

  1. How fast do you need volume? If "this month" — pay-per-lead. If "this year" — inbound.
  2. What's your monthly marketing budget? Under $2,000: focus on Google Business Profile + reviews + pay-per-lead. $2,000–$10,000: build inbound while running pay-per-lead. Over $10,000: lean inbound and use pay-per-lead opportunistically.
  3. What's your close-rate problem? If you're under 20% on inbound, fix that first. No lead source is worth optimizing if you're dropping the leads after they come in. (See the CRM buyer's guide.)

FAQ

Are pay-per-lead services for roofers worth it? At moderate volumes and with fast response times, yes — typically a 3–6% revenue cost. At high volumes or with slow follow-up, no. Treat it as rent, not an asset.

What's the average cost per roofing lead in 2026? Shared pay-per-lead: $40–$120. Exclusive: $150–$400. Live-transfer: $200–$600. Inbound (mature): $20–$60. LSA: $40–$120.

Which is the best pay-per-lead service for roofers? There isn't a single winner — performance varies dramatically by metro. Angi, HomeAdvisor (now Angi Leads), Networx, and Modernize are the big four. Test two or three at a controlled spend for 60 days before committing.

How do I get cheaper roofing leads near me? Three biggest levers: a Google Business Profile with 80+ reviews, a fast-loading website that ranks for "[city] roofing", and a 5-minute response time on every inbound. Those three alone push your effective cost-per-lead below $50 in most markets.

How long does it take to build inbound roofing lead generation? 6–12 months to see meaningful volume from SEO. Google Business Profile + reviews can move leads in 60–90 days. Google Ads can deliver leads in week one.

Stop renting leads. See how Klerq builds the inbound + automation stack →

Tags:SEO Guides