Lead Generation 9 min read Part of the Lead Generation guide

How to Get Roofing Leads: Own the Search, Rent the Storm

Contractor Bear Team

How to Get Roofing Leads: Own the Search, Rent the Storm

Short Answer

How to Get Roofing Leads? Build channels you own first: a complete Google Business Profile, service and city pages on your own website, and a steady review flow. Then rent storm-season demand through Local Service Ads, which in our benchmarks cost about $50 per roofing lead against $65 on Google Ads. Owned channels get cheaper per lead each month; rented leads cost the same every time.

In our compiled 2026 benchmarks, a roofing lead costs about $65 on Google Ads and about $28 from organic search, against a roof replacement ticket of roughly $8,000–$15,000. Those are our estimates from aggregated campaign data, not a quote for your market. But the shape holds: roofing has the highest cost per lead of any trade we track, and the highest ticket, so the channel you pick matters more here than almost anywhere.

Most roofers we talk to are renting their pipeline. Angi, ads, a lead broker after the last hailstorm. It works until the month you stop paying, and then the phone goes quiet. Ten years in business and you still start the month at zero.

This guide covers how to get roofing leads from every source, which ones to build, which ones to rent, and what you actually keep.

Short answer: The most reliable way to get roofing leads is to build channels you own, a complete Google Business Profile, service and city pages on your website, and a steady review flow, then rent storm-season demand through Local Service Ads. Owned channels get cheaper every month. Rented ones cost the same on lead number fifty as lead number one.

What Roofing Leads Cost, by Channel

These are the roofing averages from our 2026 cost-per-lead data across 12 trades. They are our compiled estimates. Your market, season, and close rate will move them.

ChannelAvg. CPLTypical rangeClose rateCost per customerRented or owned
Angi/HomeAdvisor$60$35–$955–9%$670–$1,900Rented
Google Ads$65$35–$1108–14%$465–$1,375Rented
Google Local Service Ads$50$30–$8010–16%$315–$800Rented
Thumbtack$50$30–$806–10%$500–$1,330Rented
Facebook Ads$40$22–$654–8%$500–$1,625Rented
Organic search (SEO)$28$15–$4515–22%$68–$300Owned
Google Business Profile$18$8–$3018–28%$29–$170Owned

A note on that last row, because it is the clearest proof of the ownership argument. A Google Business Profile is free. The $18 is not a price anyone charges you. It is the management cost, your time or a fee, divided by the leads the profile produces. A rented lead has a price, and the price does not fall as you buy more. An owned channel has a management cost, and the cost per lead falls as volume grows.

An illustration, not a measurement: spend $600 a month on your profile and website. At 10 leads, that is $60 each. At 40 leads, it is $15 each. The work did not change. The asset got bigger. Buy 40 leads from a marketplace and you pay the marketplace price 40 times.

Why high CPL can still be fine in roofing. Cost per customer is CPL divided by close rate. At a $65 CPL and a 12% close rate, a customer costs about $540. On a $10,000 roof, that is roughly 5% of revenue. The problem is not the expensive lead. The problem is paying for it forever instead of also building the cheap one.

Step 1: Own Your Google Business Profile

When a homeowner searches β€œroof repair near me” with water coming through the ceiling, Google shows a map pack before most of the page. Getting into it is free visibility to people ready to call.

Do this yourself:

  1. Primary category: β€œRoofing contractor.” Add secondary categories only for work you actually do, such as β€œRoof repair service” or β€œGutter service.”
  2. Complete every field. Service area, hours, services, website, description.
  3. Upload real job photos weekly. Before-and-afters from the same angle, drone or ladder shots of finished roofs, crew and trucks. Skip stock photos. Our GBP photo guide has the schedule.
  4. Ask for a review the day the job finishes. Text the link from the driveway. Reviews attach to your profile, so they stay when you leave a lead platform.
  5. Answer the phone, or call back within minutes. Roofing leads shop several quotes. The first contractor to respond has an edge, which is our experience rather than a published statistic.

Time cost, our estimate: a few hours to set up, 1–2 hours a month after.

Step 2: Put Roofing Pages on a Website You Own

A page on Angi carries your reviews, but it is Angi’s page. A page on your domain is yours, and it is the only place a homeowner reads your story without three competitors next to it.

The roofing pages that earn leads are specific:

  • One page per service: roof repair, roof replacement, storm damage, metal roofing, shingle roofing, leak repair, gutters if you do them.
  • One page per city you really serve, with details that are true of that area: common roof types, typical storm risk, permit notes. Swapping the city name on identical pages is thin content and Google treats it that way.
  • Real project pages. Address-level detail is not needed, but a neighborhood, a roof type, a scope, and photos are.
  • Your license and insurance information, visible.
  • A tappable phone number and a short form above the fold.

Be honest about timing. Plan on 4–6 months before organic search sends real volume, longer in a crowded metro. That is our estimate, and it is the tradeoff of owning instead of renting. The payoff is a lead that gets cheaper the longer the page stays up. More on the organic playbook in our guide to getting leads without ads.

Mid-Article Check: Can You Do This Yourself?

You can do every step above yourself, and many roofers do. The reason most do not is time. The profile, the review asks, the service and city pages, and the tracking come to roughly 6–10 hours a month, every month, and that competes with estimates and crews. If you would rather it just get done, Contractor Bear builds and runs these channels for you starting at $500/mo. The website we build is yours to keep. Not rented. Yours.

Step 3: Rent Storm Demand, On Top of What You Own

Roofing demand is lumpy. After hail or wind, search volume in an affected area can jump several hundred percent. Our benchmarks put it at 500–1,000% in the hardest-hit zones, which is a rough figure that varies a lot by event. Rank-building cannot respond that fast, so this is where renting makes sense.

Local Service Ads

In our data, LSAs beat standard Google Ads for roofing on both cost and close rate: about $50 per lead versus $65, and a 10–16% close rate versus 8–14%. You pay per lead, not per click, and the Google Guaranteed badge builds trust. If one paid channel goes first, this is it. Availability and eligibility vary by market.

Highest CPL, most scalable. It works best when you prepare before the storm: campaigns built, service-area targeting tight, negative keywords loaded, call tracking on. Setting it up after the hail is how you pay premium prices for sloppy clicks.

Angi, HomeAdvisor, and Thumbtack

Shared leads mean the homeowner may call several roofers at once. That is why close rates sit at 5–10% in our table and cost per customer reaches $670–$1,900 on Angi. They can fill a schedule if you are new and have no reviews or rankings. But look at what you own when the month ends: some jobs, and nothing else. Use them as scaffolding while owned channels come up.

Door knocking and storm chasers

Canvassing after a storm is a legitimate lead source, and it is also a source of complaints against roofers in general. Check your state and local rules on solicitation and on what you may say about insurance claims, which vary. Whatever you do, collect contact details so the customer ends up on a list you own.

Step 4: Work the List You Own

A roof is a once-in-a-couple-decades purchase, but the people on your customer list have neighbors, relatives, and gutters.

  • Referral ask at job completion. Make it a specific ask: β€œDo you know anyone on your street who has been putting off a roof inspection?”
  • Inspection follow-ups. If you did a free inspection and the homeowner said β€œnot yet,” that is a lead with a date. Put it in a CRM and follow up in 6–12 months.
  • Post-storm outreach. A text to past customers after a major storm is the cheapest lead you will get.

Track It or You Are Guessing

Use a separate tracking phone number per channel, and log the source of every form. Each month, divide spend or time cost by leads for each channel, then divide by close rate for cost per customer. Our cost-per-lead guide shows the method, and how our lead generation system works shows how we apply it across a client’s channels.

A Realistic 90-Day Plan

WindowOwned channel workRented channel work
Week 1Claim and complete your Google Business Profile; set up review requests by textTurn on call tracking
Weeks 2–4Upload 20+ real job photos; build pages for repair and replacementStart Local Service Ads if available
Month 2City pages for your top 2–3 service areas; start a CRM list for inspection follow-upsAdjust budgets by cost per customer
Month 3Add storm-damage and material pages; review profile insightsPre-build storm-season Google Ads campaigns, paused
Month 4–6Expect organic traffic to build (our estimate)Switch storm campaigns on when demand spikes

Frequently Asked Questions

How can I get roofing leads?

Combine owned and rented sources. Rent fast leads through Local Service Ads and storm-season Google Ads. Build owned channels in parallel: a complete Google Business Profile, service and city pages on your own website, and a review habit. Add a CRM list of past customers and inspection follow-ups. Rented leads arrive in days. Owned channels take months, then cost less per lead and stay yours.

How much do roofing companies pay for leads?

In our 2026 benchmarks, roofers pay roughly $35–$110 per lead on Google Ads, $30–$80 on Local Service Ads, and $35–$95 on Angi/HomeAdvisor. Organic search runs about $15–$45. These are our compiled estimates and move with season, storm activity, and market competition. Cost per customer, not cost per lead, is the number to judge.

What is the average cost per lead for roofing leads?

Our blended roofing averages are about $65 for Google Ads, $60 for Angi/HomeAdvisor, $50 for Local Service Ads and Thumbtack, $40 for Facebook, and $28 for organic search. A Google Business Profile has no lead price, since it is free, but works out to about $18 per lead in management cost. Those are estimates, and your close rate decides what they really cost.

Where do contractors get leads?

Contractors get leads from marketplaces (Angi, Thumbtack), paid ads (Google, Facebook), Local Service Ads, and owned sources: their Google Business Profile, website rankings, reviews, referrals, and their own customer list. The first group is rented and stops when payment stops. The owned group takes longer to build, then compounds and stays with the business.

What to Do Next

Finish one thing from Step 1 this week. If your Google Business Profile is incomplete, that is usually the best hour you can spend. If you want the whole system built and run for you, Contractor Bear starts at $500/mo, with the free custom website included from the $1,500/mo tier. The pricing page has the details. Tiers move up only when we deliver more attributed leads, with no revenue share. And the point of this whole article: the website, the profile, and the rankings we build are yours. If you leave, you keep all of it.

how to get roofing leadsroofing leadsroofing marketingcost per leadlead generation

Keep going

Read the full Lead Generation guide →

Where booked jobs actually come from. Real cost per lead by channel and trade, which sources you own, and how to stop paying for the same customer twice. From $500/mo.

FREE DOWNLOAD

Free: Local SEO Playbook for Contractors

The exact strategies top contractors use to dominate Google Maps. Get it free β€” delivered to your inbox.

No spam. Unsubscribe anytime.

Get Free Audit