How to Get Roofing Leads in 2026 Without Buying Them


Key takeaways:
Roofing is one of the few trades where a single week of weather produces more roofing leads than the previous quarter did. That makes the usual lead-generation advice fit badly. Averages smooth out exactly the thing that defines the work, and a cost per lead calculated across a quiet March tells you nothing useful about the Tuesday after a hailstorm.
This guide works through where roofing leads actually come from, what each channel costs in practice, and how to decide which inquiries are worth a truck roll. We make Procured, which is field service software rather than a lead source, so nothing here is going to end with a pitch to buy leads from us. We do not sell them.
Two things separate roofing from the trades around it. The first is the ticket. A full replacement is a five-figure decision for most homeowners, which means a longer consideration window, more quotes collected, and a buyer who will check your reviews properly rather than calling the first result.
The second is weather. Demand does not arrive evenly. It arrives in bursts tied to storms, and then it stops. A business built around a steady weekly lead count will be understaffed in the burst and overspending in the lull.
Scale matters to how you read that. Bureau of Labor Statistics figures count 32,299 roofing contractor establishments in the US in the first quarter of 2025, employing 244,581 people between them, which averages about 7.6 people per business. The competitor you are bidding against is usually a small crew, not a regional operation with a marketing department.
The same data set explains why speed wins so often. With that few people, nobody is sitting by the phone. The call that gets answered is the one that reaches somebody who happens to be free, unless you have built something that catches it when you are on a roof.
Most roofing businesses end up with four or five sources of roofing leads running at once, and the mix matters more than any single channel. Here is what each one realistically costs and how fast it starts producing.
Channel | What it costs | Time to first lead | What it suits |
|---|---|---|---|
Google Business Profile | Free, plus the time to maintain it | Days | Every roofer, before anything else |
Local Service Ads | Per lead, set by your market | Days | Replacement and repair demand |
Google Search ads | Per click, roofing is expensive | Days | Filling a quiet month deliberately |
Organic search | Months of content and site work | 3 to 6 months | Long-term flow with no per-lead cost |
Referrals and past customers | Free, plus follow-up discipline | Immediate, if you ask | Highest close rate of anything here |
Purchased leads | Per lead or per close | Immediate | Covering a gap, not building a business |
Read that table by the third column rather than the second. A business that needs work this month and one planning next year's pipeline should not be looking for leads for roofing companies in the same places, and the common mistake is funding the slow channels during a panic and the fast ones during a boom.
This is the number most roofing businesses never calculate, and it is the one that should drive every decision below.
A cost per lead of $80 sounds manageable until you follow it through. If a quarter of those leads turn into inspections that were never going to close, each one takes a truck, fuel, roughly two hours of someone's day, and a slot that a real job could have filled. Count it honestly and the picture changes.
Low-qualification approach | Qualified approach | |
|---|---|---|
Leads in a month | 25 | 25 |
Cost per lead | $80 | $80 |
Inspections booked | 20 | 12 |
Jobs closed | 4 | 5 |
Total lead spend | $2,000 | $2,000 |
Hours spent inspecting | 40 | 24 |
Cost per booked job | $500 | $400 |
The second column does not spend less. It books fewer inspections and closes more jobs, because the inspections it does run are on roofs that were actually in play. Sixteen hours come back as well, which at a crew's billable rate is usually worth more than the lead spend itself. Working out your own cost per billable hour turns that row from an abstraction into a number you can act on.
Qualifying roof leads has a bad reputation, because it sounds like turning down work. It is not. It is deciding which roofs get a two-hour visit this week.
Four answers tell you whether a roof is worth a visit, and none of them needs a ladder.
None of those requires a roof inspection to answer, and all four can be asked in the first two minutes of a phone call or collected on a web form. The roofs that pass are the ones worth the ladder.
For most roofing searches the map pack decides the outcome before anyone reaches a website. Three listings sit above the organic results, and an incomplete profile means you are absent at the exact moment somebody is ready to act.
Getting that right is unglamorous and mostly free. Fill in the service area properly rather than leaving a radius the software guessed, and add real photographs of completed roofs rather than stock images.
Keep the hours accurate, including whether you genuinely answer after hours, because a listing that claims availability it does not have converts a lead into a bad review. List gutters as a separate service if you run them, since the two get searched differently and our gutter business software page covers how that work is scheduled.
Local Service Ads sit above the map pack and charge per lead rather than per click, which suits roofing well. The Google Guaranteed badge carries weight on a purchase this size, and the screening process is a genuine barrier to the low-end competition. The catch is that disputed leads need claiming promptly, and nobody does that unless it is somebody's job.
Storm response is where roofing lead generation stops resembling other trades entirely. After a significant hail or wind event, demand in an affected zip code can multiply for a few weeks and then return to baseline.
Three things decide whether you capture it. The first is being already visible, because nobody builds a Google Business Profile during a surge. The second is capacity, which means knowing in advance which subs you can call. The third is the one most businesses skip: a way to log and route a volume of inquiries that your normal week never produces.
Insurance work layers on its own complications. The homeowner is not the only decision-maker, the adjuster's scope and yours will differ, and payment arrives in stages tied to documentation rather than on completion.
BLS figures put 166,900 roofer jobs in 2025 with 20% of them self-employed, the highest self-employment share of the major construction trades, and a one-person operation carrying an insurance job is carrying the paperwork alone. Getting the deposit and progress terms clear up front is what keeps that from becoming a cash-flow problem.
Chasing late payments is slower on an insurance job than a cash one, because the homeowner is waiting on a carrier before they can pay you at all.
Marketplaces selling leads for roofing companies are not inherently a bad idea, and they are a reasonable way to cover a quiet month. The problem is that the pricing models hide their real cost in different places. For how one marketplace actually charges, see our breakdown of Thumbtack pricing.
Shared roof leads are sold to several contractors at once, so you are racing three or four others to the phone. Exclusive leads cost more and remove the race, but the qualification is still somebody else's. Pay-per-close sounds like the safest of the three, and it introduces a problem the others do not have.
In a r/Roofing thread about exactly that model, one contractor pointed out that verification is where it falls apart: without data flowing back automatically, the lead seller depends on the roofer remembering to report a closed job, and "even if they don't intentionally lie, people forget." That is one thread's view and should be read as anecdotal, but the mechanism is real.
The lesson is to own your own record of which inquiry became which job, rather than relying on anyone else's. That record is also how to judge an exclusive pay-per-lead source, such as our Home Lead Wire partnership.
Referrals close at a rate no paid channel matches, and almost every roofing business under-works them. The reason is not laziness. It is that the moment to ask arrives on the day the job finishes, which is the day everyone is busiest. The yard sign and review habits behind them are in our roofing marketing guide.
The fix is to stop treating it as a thing you remember and start treating it as a step in the job. A completed job triggers a thank-you, a review request a day or two later, and a note in the calendar for a seasonal check-in. None of that is clever. It just has to happen every time, which is why it belongs in software rather than in somebody's head.
On a replacement decision, the first roofer to reply usually controls the conversation. Not because the homeowner is impatient, but because the first conversation sets the terms everyone else gets compared against.
Closing that gap is mechanical rather than clever, and it comes down to three things happening reliably.
That third step is where most of the delay hides. A roofer writing each estimate from scratch on a laptop in the evening is competing against one who sent a priced document from the driveway, and our quote template covers what that document needs to contain.
On our own system, quoting, scheduling and invoicing run on one thread, so an accepted estimate becomes a scheduled job without anyone retyping it. A roofing business running crews usually sits on our Business tier, which covers fifteen users at $145 a month and then $9 for each one beyond that.
Most roofing businesses track cost per lead because it is the number the ad platforms show them. It is the least useful figure available.
Metric | What it tells you | Why it beats cost per lead |
|---|---|---|
Cost per booked job | What a job on the schedule really cost to win | Counts the leads that went nowhere |
Inspection-to-close rate | Whether your qualifying is working | Isolates the expensive step |
Response time to first contact | Whether you are winning the first conversation | The one input you fully control |
Revenue by source | Which channels bring the jobs worth having | A cheap lead on a small repair is not a win |
Repeat and referral share | Whether the back end of the job is working | Free demand you already paid to earn |
Attribution only works if the source of every roofing lead gets recorded at the moment the inquiry arrives, which nobody does reliably by hand. Tracking the sales pipeline only survives contact with a busy week if logging a source takes one tap as the call ends. Anything slower gets skipped on exactly the days that produce the most leads.
Every section above assumes something catches the inquiry. That assumption is where most roofing businesses lose more work than any channel decision costs them.
The leaks are predictable. A form submission that lands in an inbox nobody owns. An estimate promised on site and written four days later. A storm week where forty calls arrive and six get logged. A completed job that never produces a review request. None of these are marketing problems and no amount of extra lead spend fixes them.
What closes them is a single path from inquiry to paid invoice, where each step hands off to the next without re-entry. We built Procured for exactly that, and our roofing business software page covers how it handles the trade specifically.
The app keeps working with no signal on a roof and syncs when it reconnects, which is a practical requirement rather than a feature claim. Card and ACH payments are handled by Stripe at its own published rates, with nothing added by us.
The honest limit is worth stating. We do not generate leads, we do not sell them, and no software will make a quiet February busy. What it can do is make sure that when the weather turns, you are not losing jobs to the thirty-ninth call you never wrote down.
If you take one thing from this, make it the inspection number. Work out what a truck roll genuinely costs you, including the crew slot it consumes, and then look again at how many of last month's inspections were never going to close. For most roofing businesses that single calculation changes more than any channel decision.
After that, fix the two cheapest things in order: the Google Business Profile you already own, and the time between an inquiry arriving and somebody replying. Both are free. Both move more revenue than an ad budget increase. Everything else on this page is worth doing after those two are genuinely handled.
Start a free trial and run a fortnight of real inquiries through it before deciding anything.