Roofing lead generation that ends at a signed contract
Most roofing lead generation stops at the form fill and calls it a win. We build the whole path — traffic, page, qualification, follow-up — and report on the only number that pays for anything.
94 signed jobs across eight months, at a $29,002 average contract. Taken from the client's own CRM report, not our dashboard.
See the full case study →A lead is not a job, and most reporting pretends otherwise
Ask most roofing marketing companies how last month went and you will hear a lead count. It is a comfortable number because it goes up when you spend more, and it survives almost any conversation about performance.
The trouble is that a lead count tells you nothing about whether anybody answered the phone, whether the caller was in your service area, whether they owned the property, or whether the estimate you drove out to give ever got followed up. Every one of those is a place the pipeline leaks, and none of them show up in a lead count.
So the first thing we do on any roofing account is instrument the whole path. Not because tracking is interesting, but because until closed revenue is visible, every argument about lead quality is two people guessing.
Traffic, lead, qualified lead, appointment, contract
Five stages, and money leaks between every pair of them. Knowing which gap is yours decides what to fix first — and it is rarely the one contractors assume.
Traffic
Someone searching "roof repair near me" or seeing a replacement offer in their feed. This is the only stage most agencies report on, and on its own it means nothing.
Lead
They call, submit a form, or send a message. The gap between traffic and lead is a conversion problem — usually the page they landed on.
Qualified lead
In your service area, owns the property, has a real job. Unqualified leads are not a failure of marketing; they are a failure to ask the right questions early.
Appointment
Someone is on the roof with a ladder. This is where most roofing pipelines actually leak — the lead was fine, nobody answered in time.
Signed contract
The only number that pays for anything. Once this flows back to Google and Meta, bidding optimises toward contracts instead of cheap form fills.
The free audit measures all five and names the one costing you most. Yours to keep either way.
Where roofing leads actually come from
Six sources. Most roofing companies run one properly and three badly. Which combination makes sense depends on your budget, your season and how fast your team picks up the phone.
The gap nobody budgets for
A homeowner with a leak contacts around three roofers. They fill in two forms, leave one voicemail, then get on with their day. Whoever calls back first with a real answer usually gets the inspection — not because they are better, but because they were there.
Meanwhile your crews are on a roof, and the office is dealing with the job in front of it. The lead you paid $200 for sits for four hours.
This is why more spend often produces the same number of signed contracts. The constraint was never traffic. Fixing the first five minutes raises close rate on leads you have already bought, which is cheaper than buying more of them — see roofing CRM and follow-up or why leads go cold in five minutes.
Storm work and retail work are different businesses
Storm-driven demand
A hail event rewrites your market overnight, and the window is measured in days before canvassers have knocked the neighbourhood. Campaigns and pages built after the storm arrive too late.
We keep paused storm campaigns and matched pages ready per market, with insurance-claim language, so they launch the same day. Claim-driven and cash-buyer intent stay separated, because they convert on different promises.
Retail replacement demand
Quieter, steadier, and the thing that keeps a roofing company solvent between storms. Nobody with a twenty-year-old roof that still works is searching for you.
That demand has to be created — finished-job footage, financing offers, age-of-roof targeting — and it has to be built in the quiet months, when clicks are cheapest and your crews have capacity.
Roofing lead generation questions
Straight answers. Anything not covered here, ask on the phone.
01How much does a roofing lead cost?
In competitive US markets, $150 to $350 per qualified lead is normal for replacement work and lower for repairs. But cost per lead is the wrong number to manage against. What matters is cost per signed contract: at an $11,000 average job and a one-in-three close rate, a $300 lead is healthy economics, while a $90 lead that never gets called back is infinitely expensive.
02How do roofing companies generate leads consistently?
By running more than one source. Paid search captures people already looking, local SEO compounds underneath it, and follow-up automation converts what both produce. Companies that depend on a single channel — usually referrals or storm canvassing — have revenue that swings with things outside their control.
03What is the fastest way to get roofing leads?
Google Ads, typically within days of launch. Local Services Ads if you are eligible, since you pay per lead rather than per click and the Google Guaranteed badge lifts call rates. Neither is cheap, which is why we wire tracking before spending rather than after.
04Why are my roofing leads not converting?
Usually response time rather than lead quality. Homeowners contact around three contractors and tend to hire whoever responds first with a real answer. If your average first response is four hours and a third of leads never get called at all, the leads were fine — the follow-up was the problem.
05How do I get roofing leads outside storm season?
Retail replacement demand does not disappear, it just stops announcing itself. Age-of-roof targeting on paid social, financing offers, maintenance and inspection programmes, and organic visibility built in the quiet months all produce work when the storm map is empty.
06Should I buy roofing leads from lead sellers?
They have a place for filling gaps, but you are buying a lead sold to three or four other roofers simultaneously, and you own none of the infrastructure. Everything we build — ad accounts, pages, tracking, CRM — stays in your name, which means the asset compounds instead of resetting each month.
07How long before roofing lead generation works?
Paid search produces calls in the first week. A reliable read on cost per signed contract takes six to twelve weeks, because that is how long it takes to accumulate enough conversions to prune honestly. Local SEO moves the map pack in three to five months.
08Do you guarantee a number of roofing leads?
No, and we would be careful with anyone who does. Lead volume depends on your market, competition, budget, capacity and how fast your team follows up — several of which sit on your side. What we commit to is tracking that shows exactly what the spend produced.
Other roofing lanes
Roofing PPC
Storm response, insurance intent, tracked to booked inspections.
Roofing SEO
Map pack visibility and city pages that keep producing after ads stop.
Roofing CRM
Speed-to-lead and the unsold estimate folder.
Roofing web design
The page every other lane lands on.
Further reading: generating leads during storm season and how fast to respond to a new lead. Different trade? HVAC lead generation runs on seasonal rather than storm-driven demand. See everything on the roofing marketing hub, or the full service lineup with pricing.