How to Get More Roofing Leads Without Cold Knocking
By the TopKnock teamDrafted with AI assistance and reviewed by a person before publishing.
The Door-Knocking Trap
Every roofer starts by knocking doors. It works — you can close 1 in 20 doors on a good day. But here's the problem: it doesn't scale. You can't knock 200 doors a day. You can't knock doors when it's raining. And your best closer can only be in one neighborhood at a time.
The roofing companies doing $2M+ have figured out something different: let the leads come to you.
Facebook Ads: Your 24/7 Sales Team
Per WordStream's 2024 paid-advertising benchmarks for home services + Hibu's roofing-vertical CPL report, a well-tuned Facebook campaign for a roofing company typically generates 30-80 leads per month at $25-45 per lead. That's $750-3,600/month in ad spend producing $50,000-200,000+ in potential revenue at industry-average close rates. Your specific numbers will depend on your service area, season, and how fast you respond to leads — speed-to-lead under 5 minutes typically triples booking rates (per Harvard Business Review's Short Life of Online Sales Leads study).
The key is running multiple campaigns for different services:
- Storm damage — "Storm hit your neighborhood? Free roof inspection. Licensed, insured, certified by [manufacturer]."
- Full replacement — "Your roof is 20+ years old. Before the next storm, get a free inspection and replacement quote."
- Repair — "Leak in your ceiling? Don't wait. Same-week repair. $0 down with insurance claims."
Each campaign targets a different homeowner mindset and converts at different rates.
Storm Response — The Right Way
After a major storm, every roofer floods the area. Instead of competing at the door, be there first — digitally. Run targeted ads within 24-48 hours of the weather event, while the damage is fresh and the homeowner is actively worried about their roof:
The compliant version of this ad: "Hail reported in [City]? Most homeowner policies cover storm-related roof damage after the deductible. Free inspection — we document the damage with photos and walk you through what your specific policy covers."
What to avoid: claiming "$0 out of pocket" (depends on the homeowner's deductible, which you don't know), "we handle the claim" or "we file your insurance" (implies public-adjuster activity, which is illegal without a public-adjuster license in most states), or any "guaranteed approval" language. Those phrases get accounts disabled AND expose you to state-licensing complaints.
The ad works because it's timely and specific to their situation — without you carrying regulatory exposure for what their policy actually pays.
Google Reviews Win the Comparison
A homeowner gets three roofing quotes. Before they decide, they Google all three companies. The one with 150+ reviews and 4.8 stars wins almost every time — even at a higher price.
Systematically ask for reviews after every job. A text with a direct Google review link gets 3-5x more reviews than asking in person.
Content That Educates (and Converts)
Post drone footage of jobs in progress. Post before-and-after photos. Post educational content like "5 Signs Your Roof Needs Replacement" — homeowners share this stuff, and every share is free advertising. The educational angle works because most homeowners don't know what to look for on their own roof; you become the authority by teaching them, and the authority gets the call when they finally notice the problem.
The Granule-Loss Angle (and Why It Outperforms Storm Ads)
The roofing-ad angle most companies leave on the table is granule loss — the brown sandy pile under your downspout after a heavy rain. Most homeowners see it, vaguely wonder if it matters, and move on. The roofer who runs an ad explaining what it actually means owns that homeowner for the eventual re-roof.
The script that works (anchor it in your local market):
"Find a granule pile under your downspout? Your shingles are losing their armor. Granule loss = UV damage = 2-4 years until the shingle mat exposes and the deck soaks. We pull the existing roof and install new shingles, full manufacturer warranty pass-through. Most [city] roofs done in 1-2 days."
Why this outperforms a generic "free roof inspection" ad: the granule-pile signal is ultra-specific and homeowner-observable. They've already noticed it; you're naming what they were silently worried about. Compare that to "free inspection" — a generic ask that doesn't anchor in anything the homeowner is already thinking about.
Specific time framing (2-4 years until decking exposure) is concrete commitment without inventing a price. Manufacturer warranty pass-through is verifiable. The ad teaches and qualifies in the same beat.
Ridge Ventilation: The Quote-Differentiator Most Roofers Skip
Here's a piece of physics that most homeowners and a surprising number of roofers don't think about during a quote conversation:
Homes built before code-required ridge-and-soffit ventilation hold attic temperatures over 140°F in summer. The decking warps, the sheathing nails pop, the shingles brittle out 5 years early. The roofer who quotes a re-roof WITHOUT addressing ventilation is leaving a 5-year lifespan on the table — and the homeowner doesn't know it.
The ad angle:
"Your roof breathes through the ridge. If it can't, the deck rots. We add ridge vent plus balanced soffit intake during the re-roof — same crew, same day, no second trip charge."
This ad converts the educated homeowner (they Googled their problem, found this post, came back) because it teaches the physics in two lines. And it filters: homeowners who DON'T care about ventilation may not be your ideal customer anyway — they're price shoppers, not lifecycle shoppers.
The 48-Hour Storm-Response Window
Roofing is the rare trade where being first to ad in the local feed after a weather event compounds into the season's revenue. The 48-hour window after a hail or high-wind event is when:
- Homeowners are actively worried about their roof for the first time in years
- Insurance adjusters are about to flood the market and the homeowner wants someone who can document damage before the adjuster arrives
- Most local roofers are still scrambling — pulling crews off other jobs, ordering materials — and HAVEN'T launched response ads yet
The contractor whose ads fire within 24-48 hours of the weather event books that season's storm work. The contractor who waits a week shows up to a market where the easy claims are already signed.
What "fired within 48 hours" requires:
- Pre-built storm-response ad templates sitting in Meta Ads Manager, ready to flip live
- A weather-trigger workflow (manual or automated) that flags major events in your zip codes
- A landing page that doesn't need rewriting — generic "free roof inspection after storm damage" framing, with the specific event date filled in dynamically
- A response system on your end — somebody who can answer the phone or text leads within 5 minutes during the storm-response window
This is also the angle where SAC compliance matters most. Storm-response ads that target by zip + age + "home improvement interest" trip Meta's Housing SAC review constantly. The right approach: 15-25 mile radius around the storm path, custom-audience uploads of past customers in that area, and self-selecting copy ("Hail reported in your area?") instead of demographic filters.
The Insurance Conversation, Done Compliantly
Storm-response ads invite the insurance conversation. Done right, it's a credibility builder; done wrong, it's an account-disabled-and-state-complaint waiting to happen. Three rules:
- Don't claim "$0 out of pocket." You don't know the homeowner's deductible. Claiming "$0" creates a bait-and-switch when they find out their deductible is $2,500. Use "most homeowner policies cover storm-related roof damage after the deductible" instead — accurate and lets the homeowner do their own math.
- Don't claim "we handle the insurance claim." In most states, filing or negotiating an insurance claim on behalf of the homeowner is regulated as public-adjuster activity, which requires a public-adjuster license. Saying you "handle the claim" exposes you to state-licensing complaints AND gets your Meta account flagged. Use "we document the damage with photos and walk you through what your specific policy covers" instead.
- Don't promise approval. Words like "guaranteed approval," "insurance always covers it," or "we get every claim approved" are FTC-actionable. The homeowner's policy controls approval, not you.
The roofers who run compliant storm-response ads stay in business through multiple storm seasons. The ones who run "$0 down, we handle everything, guaranteed approval" ads get one season before Meta + state insurance departments + the FTC take the account down. The discipline is the moat.
The Math: Ads vs Door-Knocking
A good door-knocker costs $4,000-6,000/month (base + commission). They generate maybe 20-30 appointments. Facebook ads at $2,000/month generate 50-80 leads. Even at a lower close rate, the volume and scalability wins.
And ads work while you sleep, on weekends, and during storms when nobody's knocking.
Ready to Scale Past Door-Knocking?
TopKnock's team runs roofing campaigns that generate leads while you're on the roof — storm-response ads, seasonal rotations, full-replacement campaigns. AI drafts the variations; a person reviews every ad for SAC + public-adjuster-language compliance before it goes live; you approve every campaign. New to paid ads? Our Facebook ads guide for contractors walks through the basics first. Check if your territory is still open.
Topics