Most residential roofing contractors are great at the install and stuck in a feast-or-famine top of funnel. Storm seasons fill the calendar; the rest of the year sits empty. HomeAdvisor leads get more expensive every quarter and close worse. Door-knocking teams burn out. The Facebook ads run last year don't run this year because the CPA tripled.
This guide lays out exactly what works in residential roofing marketing in 2026 — in steady-state markets and in storm-response — and what the unit economics look like channel by channel.
Why most marketing fails for residential roofing
Roofing has four properties that break standard small-business marketing:
- It's only urgent when it's leaking. Outside of active storm damage, homeowners postpone reroofs indefinitely. The marketing job is to make the visible problem visible — and to surface a price that makes the postponement feel expensive.
- It's visual. Until the homeowner sees their house with a new roof in their preferred material and color, the upgrade is abstract. Asphalt shingle samples on a sales rep's clipboard don't have the same effect as a rendered photo of the actual house.
- It's high-ticket. An $8,000–$30,000 install means homeowners need a price up front — not "we'll come out and measure." The best-converting roofing marketing surfaces an upfront price range tied to the home's specific square footage.
- It's swarmed during storms. When hail or wind hits, every roofer in a 200-mile radius floods the affected zip codes. Marketing that works in steady-state markets is too slow for storm-response — the playbook has to compress.
The five marketing channels roofing contractors actually use (and which work)
1. Mailed roof quotes — the highest ROI channel in steady-state markets
A mailed roof quote is a 6×9 postcard sent to a specific homeowner showing their actual house rendered with a brand-new roof in three material tiers, plus an upfront price range, plus a QR code linking to a personalized landing page with material/color picker, financing options, and a deposit button. The homeowner doesn't have to imagine anything — they see their own house, new roof on it, price on the front.
The mechanic works because recognition beats imagination. When a homeowner sorts mail over the recycling bin, they have about 1.5 seconds per piece to decide keep-or-toss. A postcard with their own house and a new roof freezes them. A "free inspection" postcard with stock photos doesn't.
Roof Launch is the platform built specifically for this channel. You type in a street name, AI renders every house with a new roof in 3 material options, postcards print and mail automatically, and scans land on a homeowner-specific page with the material picker, upfront pricing, financing partner integration, and a Stripe deposit button. See how it works.
2. Storm-response geo-targeting
When a confirmed hail or wind event hits, the playbook compresses. Mail postcards within 48 hours of the event using NOAA storm maps to define the affected zip codes. The rendered postcard advantage doubles in storm windows: homeowners are already shopping, and the upfront price beats "free inspection" pitches that arrive simultaneously from competitors.
Roofers running mailed roof quotes pre-loaded into their CRM can fire a campaign in 30 minutes when a storm hits — versus competitors who have to design a one-off postcard from scratch and miss the 7-day adjuster window.
3. Door-knocking (D2D)
Door-knocking still works for roofers — especially in storm-response — but the unit economics cap out quickly. A high-performing D2D rep does 80–120 doors a day. In steady-state markets, the close rate to install is 1–2%. In storm-response, it spikes to 4–8% in the first 14 days, then collapses back as adjusters complete their rounds.
The best D2D play in steady-state is same-block follow-up after a reroof completes. The visible new roof drives 3–4× higher engagement on the immediate neighbors. (Roof Launch automates the postcard side of this with a neighbor-follow-up workflow that fires automatically after install completion.)
4. Lead aggregators (HomeAdvisor, Angi, Networx)
Lead-aggregator leads are the easiest channel to start with and the most expensive at scale. Typical pricing is $50–$200 per lead. Close rates run 3–6% because each lead is sold to 3–5 competitors and the homeowner gets called within minutes. Loaded CAC ends up in the $1,000–$2,000 range per closed job.
Aggregator leads have one strong use case: filling capacity gaps when your self-generated channels are still ramping. Once your self-generated CAC drops below your aggregator CAC, shift the budget.
5. Facebook ads and Google ads
Facebook ads underperform for cold roofing acquisition outside of storm windows. Google ads have one strong use case: capturing brand searches and high-intent bottom-of-funnel queries like "[city] roofing contractor" or "metal roof installation near me." Don't try to compete on top-of-funnel terms like "roof repair" — those leads convert poorly and click prices run $15–$40.
Channel-by-channel comparison
| Channel | Typical CAC | Predictability | Scalability | Best for |
|---|---|---|---|---|
| Mailed roof quotes | $300–$600 | High | High | Filling the calendar in steady markets |
| Storm-response direct mail | $150–$400 | High (in event) | High | Storm windows, 7–14 day urgency |
| Door-knocking (cold) | $600–$1,200 | Medium | Low | Storm-response, post-install follow-up |
| Lead aggregators | $1,000–$2,000 | High (volume) | High (\$) | Capacity fill while self-gen ramps |
| Facebook ads (cold) | $800–$1,800 | Low | Medium | Storm-response only |
| Google ads (bottom of funnel) | $400–$900 | Medium | Low | Brand search defense, in-market intent |
Recommended budget allocation for a roofer doing $500K–$5M/year
55–65% mailed roof quotes. This is your acquisition engine. At $1 per quote and a 15–20% scan rate, a 500-postcard campaign costs $500 and typically returns 2–5 closed reroofs at $12K average ticket.
10–15% retargeting + Google brand defense. Anyone who visits the site or scans a postcard gets a low-budget retargeting campaign. Brand-search Google ads catch homeowners ready to call.
10–15% neighbor follow-up. Automated postcards to same-block neighbors after every reroof. Compounds in year 2+.
5–10% aggregator leads. Only to fill capacity gaps — not as the primary engine.
Reserve 20–30% for storm-response. Pre-budget the war chest. When a storm hits, you'll need it immediately.
How to start: the 45-minute first campaign
- Pick a neighborhood with mostly 18+ year-old roofs. Look at Google Street View — asphalt-shingle roofs of that age show curling, granule loss, and color fading. These homeowners are 2–3× more likely to be in-market.
- Render the street. Use a tool like Roof Launch that pulls every house from Google Street View and AI-renders each with a new roof in 3 material options. Free to render — you only pay when you mail.
- Pick a postcard template. The rule: rendered house with new roof at the TOP of the card, upfront price range in bold under it, your logo small and in the corner. Recognition + price before brand.
- Press send. 200 postcards at $1 each = $200 total. Printing, addressing, postage, USPS handoff — all automatic.
- Wait 1–4 weeks. Homeowners scan, see material options + financing, book deposits. Roofing has a faster sales cycle than solar or pools — most deposits land within 14 days.
Average contractor using this workflow returns $32 in install revenue for every $1 spent on mailed roof quotes. Create a free Roof Launch account — you only pay if you decide to mail.
Common questions
How fast does this work in storm-response?
In active storm windows, scan-to-deposit can compress to under 48 hours. Pre-load your CRM with neighborhood targets before storm season; when a hail or wind event hits, you can fire a 1,000-postcard campaign in 30 minutes and beat the door-knockers to the mailbox.
How do I handle insurance-claim coordination?
Roof Launch's customer portal includes line items that align with common insurance scope language (hail, wind). Homeowners with active claims can request claim-assistance coordination at the deposit step. The upfront price they see can be reconciled against an adjuster's scope without a full re-bid.
What if my pricing varies a lot by region?
Set per-region pricing defaults in your Roof Launch settings. The rendered postcards pull from those defaults and homeowner-facing portals show the right number for their zip code. Strong installer override is expected — you can always adjust on-site after final measurement.
Does this work for commercial roofing?
Roof Launch is built for residential reroofs. Commercial roofing has fundamentally different buying dynamics (B2B procurement, RFPs, longer cycles) and the mailed-quote model doesn't fit. Most contractors run separate marketing for residential vs commercial.
The fastest way to start.
Type in a street. Render every house with a new roof. Mail the postcards with an upfront price on the front. Watch deposits roll in. Average return: $32 per $1 spent.
Create my free account →