Roof Works

Storm Lead Generation — Pro Forma & AI Outreach Comparison

Roof Works of Texas  ·  Updated March 2026

Business Assumptions

MetricValueSource
Average job revenue$18,000Industry avg (insurance replacement)
Gross margin33%Industry standard 25–35%
Gross profit per job$6,00032.5–35% of job revenue
Net margin11%Industry standard 8–14%
Net profit per job$2,000After overhead & SGA
Target close rate — post-storm leads15–30%Storm leads convert 2–3× warm leads
Target close rate — cold outreach2–5%Industry benchmark
CAD parcels (Dallas County)634,402DCAD ingest, 96% geocoded
Avg DFW storm affected properties500–2,500Based on March 4 2026 event
1

Door Knocking

Baseline

How it works: Sales rep drives to storm-affected neighborhood, walks door to door.

MetricValue
Rep cost (fully loaded)$25–35/hr
Doors knocked per hour20–30
Contact rate (someone home)40–50% → 10–15 contacts/hr
Appointment set rate10–15% of contacts
Appointments per hour1–2
Close rate on appointment30–40%
Jobs per 8-hr day2–6
Revenue per day$36,000–$108,000
Cost per job (labor only)$40–$140
Effective CAC$40–$140

Pros

Highest trust, immediate qualification, rep can assess damage on-site

Cons

Weather-dependent, physically exhausting, geographic limits, rep morale, can't scale without headcount, takes 2–3 days post-storm to mobilize

2

Cold Email

AI-Assisted

How it works: Export enriched parcel list → skip trace for email → send branded sequence via Hostinger SMTP. Already built in admin panel.

Cost Breakdown (per storm event, 300 Tier A+B prospects)

ItemCost
Skip tracing (BatchSkipTracing, $0.15/record)$45.00
Email sending (Hostinger SMTP, included)$0.00
AI personalization (Claude Haiku, ~$0.001/email)$0.30
Rep time to review + send (30 min)$12.50
Total per campaign$57.80

Performance Model

MetricConservativeRealisticOptimistic
Records enriched (Tier A+B)300300300
Email delivery rate85%88%92%
Open rate25%35%45%
Reply / click rate3%6%10%
Appointment set rate1.5%3%5%
Appointments4–5915
Close rate20%25%30%
Jobs closed12–34–5
Revenue$18,000$36,000–$54,000$72,000–$90,000
Gross Profit (33%)$6,000$12,000–$18,000$24,000–$30,000
Net Profit / EBITDA (11%)$2,000$4,000–$6,000$8,000–$10,000
CAC (cost / jobs)$57.80$19–$29$12–$14
ROI311×623–934×1,246–1,557×

Pros

Fully automated after setup, scalable, permanent record in CRM, personalizable with AI

Cons

Email goes to spam for unknown senders, needs 3–5 touch sequence, slower feedback loop, requires valid email (skip trace)

Best For

Initial outreach blast within 24–48 hrs of storm, follow-up sequence over 7–14 days

3

SMS

AI-Assisted via Twilio

Top Pick

How it works: Same enriched list → send storm inspection text → AI-assisted reply qualification. Built in admin panel (pending Twilio activation).

Cost Breakdown (per storm event, 300 prospects)

ItemCost
Skip tracing — same list as email, no extra cost$0.00
Twilio SMS ($0.0083/message outbound)$2.49
AI reply handling (Claude Haiku, ~$0.002/exchange)$1.20
Rep time to close warm replies (1 hr)$25.00
Total per campaign$28.69

Performance Model

MetricConservativeRealisticOptimistic
SMS delivery rate90%93%97%
Open rate90%95%98%
Response rate8%15%22%
Appointment rate from responses20%30%40%
Appointments4–513–1426
Close rate20%25%30%
Jobs closed13–48
Revenue$18,000$54,000–$72,000$144,000
Gross Profit (33%)$6,000$18,000–$24,000$48,000
Net Profit / EBITDA (11%)$2,000$6,000–$8,000$16,000
CAC$28.69$7–$10$3.59
ROI628×1,882–2,510×5,019×

Pros

98% open rate, immediate, conversational, feels personal, fastest response loop

Cons

Opt-out/spam compliance (10DLC registration required), phone numbers harder to obtain than emails, can feel intrusive if messaging is poor

Best For

Same-day follow-up after email, re-engagement of non-openers, time-sensitive "we're in your neighborhood this week" pushes

10DLC Note: Twilio requires A2P 10DLC brand registration (~$4/mo) for business SMS. One-time campaign registration ~$10. Required to avoid carrier filtering.
4

AI Voice Calling

Outbound AI Agent

Top Pick

How it works: AI agent (Bland.ai or Retell AI) calls the prospect, introduces as "calling on behalf of Roof Works of Texas," qualifies damage, books free inspection if interested. No human needed until appointment confirmed.

Cost Breakdown (per storm event, 300 prospects)

ItemBland.aiRetell AI
Per-minute rate$0.09/min$0.07/min
Avg call duration (qualified + voicemail)2.5 min avg2.5 min avg
Cost per call attempt$0.225$0.175
300 calls$67.50$52.50
Phone number rental$15.00/mo$2.00/mo
Skip tracing (same list, no extra cost)$0$0
Total per campaign$82.50$54.50

Performance Model (shared)

MetricConservativeRealisticOptimistic
Connect rate (live answer)20%30%40%
Qualified (interested in inspection)15% of connects25%35%
Appointments booked by AI60% of qualified70%80%
Appointments5–615–1633
Close rate25%30%35%
Jobs closed1–24–511–12
Revenue$18,000–$36,000$72,000–$90,000$198,000–$216,000
Gross Profit (33%)$6,000–$12,000$24,000–$30,000$66,000–$72,000
Net Profit / EBITDA (11%)$2,000–$4,000$8,000–$10,000$22,000–$24,000
CAC (Retell)$27–$54$11–$14$4.55–$4.95
ROI (Retell)330–661×1,321–1,651×3,633–3,963×

Pros

Scales infinitely, calls within minutes of storm, no human fatigue, consistent pitch every time, works nights/weekends, books directly into calendar

Cons

Some prospects hang up on AI calls, requires well-tuned script, AI can mishandle unusual objections, setup takes 1–2 days

Best For

First contact blast within 4–6 hours of a major storm event while reps are still mobilizing

5

Human Telemarketing

Comparison Baseline

MetricValue
Caller cost$18–$25/hr
Dials per hour30–40
Connect rate15–25% → 5–10 connects/hr
Appointment rate10–15% of connects
Appointments per hour0.5–1.5
Close rate20–25%
Jobs per 8-hr shift1–3
Cost per job (labor only)$60–$200
Effective CAC$60–$200

Pros

Human judgment, can handle complex objections, builds rapport

Cons

Most expensive at scale, turnover, inconsistent quality, limited hours, compliance burden

6

Direct Mail

Reference

MetricValue
Cost per piece (design + print + postage)$0.80–$1.50
500 pieces$400–$750
Response rate1–2%
Appointments from 500 pieces5–10
Close rate20–25%
Jobs1–2
CAC$200–$750
ROI20–75×

Slow (5–10 day delivery), can't time to storm event, no personalization at scale

ROI Summary — Head-to-Head

300 prospects, realistic scenario

ChannelCostJobsRevenueGross Profit (33%)Net / EBITDA (11%)ROISpeed
Door Knocking$200 (1 day)3–5$54K–$90K$18K–$30K$6K–$10K90–150×1–3 days post-storm
Cold Email ★$582–3$36K–$54K$12K–$18K$4K–$6K623–934×< 2 hrs
SMS ★★$293–4$54K–$72K$18K–$24K$6K–$8K1,882–2,510×< 1 hr
AI Calling — Retell ★★$554–5$72K–$90K$24K–$30K$8K–$10K1,321–1,651×< 30 min
Human Telemarketing$800 (1 day)2–3$36K–$54K$12K–$18K$4K–$6K45–67×Same day
Direct Mail$5001–2$18K–$36K$6K–$12K$2K–$4K12–24×5–10 days
Winner by ROI:

SMS > AI Calling > Email >> Telemarketing > Door Knock > Direct Mail

Winner by Speed:

AI Calling > SMS > Email > Door Knock > Telemarketing > Direct Mail

Winner by Lead Quality:

Door Knock ≈ AI Calling > SMS > Email > Direct Mail

Recommended Stack — Storm Day Protocol

A storm hits DFW. Optimal sequence:

T+0 hrs Storm-alert cron detects DFW hail event → sends push notification

T+1 hr Generate Leads in admin panel → 300 Tier A+B prospects scored + tiered

T+2 hrs AI Calling (Retell/Bland) → 300 automated outbound calls begin

"Hi, this is Alex calling for Roof Works of Texas. We noticed your

neighborhood in [city] had significant hail today and we're offering

free roof inspections. Can I book a quick 20-minute visit?"

T+2 hrs SMS blast → 300 texts sent simultaneously (non-call-hours backup)

T+4 hrs Email sequence starts → personalized branded email to all 300

(reinforces AI call, catches those who missed the call)

T+48 hrs Follow-up SMS + email to non-responders (automated, 2-touch)

T+7 days Final follow-up email → "Last chance — free inspection offer expires"

Reps: Only handle calls from AI-qualified leads who said YES. Zero cold dialing.

~$150
Total Spend
per storm event
12–18
Booked Inspections
expected output
3–6
Closed Jobs
expected output
$18,000–$36,000
Gross Profit
from one event

AI Tools for Admin Panel Integration

Tier 1 — Integrate NowLow Complexity, Immediate ROI

Retell AI — Outbound Voice Agent

Recommended
  • Cost: $0.07/min, $2/mo per number
  • Integration: REST API + webhook → post-call webhook fires to /api/admin/prospects/[id] to update status to CONTACTED or INTERESTED
  • What to build: /api/admin/outreach/voice-campaign route that accepts prospect_ids[], dispatches batch calls, receives webhook
  • Timeline: 1–2 days to build + test

Twilio 10DLC Registration — Enable SMS at Scale

  • Cost: ~$4/mo brand fee + $10 campaign registration (one-time)
  • Already coded: lib/sms.ts + TWILIO_FROM_NUMBER env var — just needs credentials
  • Timeline: Hours once Twilio funded + 10DLC approved (1–3 business days)
Tier 2 — Short TermMedium Complexity, High Leverage

BatchData API — Automated Property Enrichment

  • Cost: $500/mo for 20,000 records ($0.025/record)
  • What it adds: Phone + email + storm damage history + equity + roof permit history
  • Integration: Webhook on generate-leads completion → auto-enrich top Tier A prospects
  • Replaces: Manual BatchSkipTracing CSV upload workflow
  • ROI breakeven: 1 job/month covers the subscription

Bland.ai — Alternative/Backup Voice

  • Cost: $0.09/min
  • Advantage over Retell: No-code setup, Zapier/Make integration, simpler for first deployment
  • Use case: Faster to test; switch to Retell at volume
Tier 3 — FutureStrategic, Requires Planning

Clay.com — Hyper-Personalization at Scale

  • Cost: $185–$495/mo
  • Use case: Pull LinkedIn + social data on property owners for ultra-personalized outreach at volume
  • Verdict: Overkill until running 1,000+ prospects/storm

Twilio ConversationRelay — Two-Way AI SMS

  • Cost: $0.05/message + SMS cost
  • What it does: AI reads inbound SMS replies and responds intelligently — converts SMS from broadcast to conversation
  • Build complexity: 4/5 — webhook handler + LLM prompt engineering
  • Timeline: 3–5 days

Tools to Avoid

  • Air.ai: FTC lawsuit filed August 2025, platform inactive — do not use
  • Apollo.io for homeowners: B2B database, poor coverage for residential
  • Attentive / Klaviyo: Built for ecommerce, $8K+ annual minimums, wrong market
  • Vapi.ai: Costs stack with hidden provider fees at scale — Retell is cheaper

CAC Comparison — Full Picture

Cost per Qualified Lead (realistic scenario)

Door Knocking
$40–$140
Direct Mail
$25–$75
Telemarketing
$15–$40
Google Ads
$25–$188
Shared Leads
$100–$200
Cold Email
$6–$29
AI Calling
$4–$27
SMS
$2–$10
Skip Trace Only
$0.15

Property Value Recovery — Why DCAD Appraisal Values Matter

Current state: total_value = $0 for all 634,402 parcels (appraisal file not yet loaded). Scoring model uses sqft as proxy — adequate but not optimal.

To fix: Download ACCOUNT_APPRL_YEAR.CSV from DCAD (separate from RES_DETAIL.CSV). Re-run ingest with: python dcad_ingest.py --skip-geocoding --values-only

Impact: Unlocks proper value-tier scoring — estimated 15–20% improvement in Tier A lead quality.

Five-Year Revenue Projection (Storm Lead Gen Only)

Assumptions: 4 DFW storms/year, 300 Tier A+B prospects per storm, SMS + AI voice stack

YearStormsProspectsJobs (3% close)RevenueLead Gen Cost
2026 (partial)260018$270,000$300
202741,20036$540,000$600
202841,500*45$675,000$750
202942,000*60$900,000$1,000
203042,500*75$1,125,000$1,250

*Growth from adding Tarrant, Collin, Denton CAD data

$3,510,000
5-Year Cumulative Revenue
900×
Total ROI on $3,900 in lead gen costs

Pro forma prepared for Roof Works of Texas internal planning. All projections based on industry benchmarks and modeled assumptions. Actual results will vary based on storm frequency, market conditions, and execution quality.