A Data-Driven Roofing Sales Prospecting Strategy That Actually Books Jobs
On this page
Most roofing companies don't have a prospecting strategy. They have a prospecting habit. The crew knocks where they worked last week, the mailer drops on the same routes the printer set up three years ago, and the sales manager picks the next subdivision off a hunch and a windshield read. It produces jobs, so nobody questions it. But when you actually trace where the wins came from, they cluster in a handful of streets and price ranges, and the rest of the spend — the gas, the postage, the payroll hours spent on doors that were never going to buy — is pure drag nobody's measuring.
A data-driven prospecting strategy is the fix, and it's simpler than the phrase makes it sound. It means deciding who to prospect, in what order, based on signals you can measure instead of where the truck happens to be — and then checking, after the fact, whether the signals were right and adjusting. That's the whole thing. You already do a version of it in your head when a good estimator rolls a street and clocks the three houses worth a knock. A strategy takes that read, makes it explicit, and runs it across hundreds of addresses so a whole team works the right doors — not only your sharpest person on the streets they happen to drive.
What follows is an operator's build-out: the signals that actually predict a re-roof, how to stack them into a prospect score, how to turn that score into a routed list and a mail drop your team can work the same week, how to mine the prospects already sitting in your own files, how to run it as a repeatable weekly system instead of a one-off project, and how to measure whether it's working. Concrete workflows, worked numbers, honest limits — written for the owner or sales manager who has to make a prospecting dollar go further.
What "data-driven prospecting" means in roofing, specifically
Prospecting is the front of the sales funnel: finding and qualifying the addresses worth a conversation, before anyone pitches anything. In roofing, the universe of prospects is enormous and mostly dead weight — every house has a roof, but on any given street the share that's an actual replacement candidate this year is small. The job of a prospecting strategy is to cut that universe down to the addresses with real odds and put them in front of your people in the order they should be worked.
"Data-driven" just means the cut is made on evidence, not vibes. Three kinds of evidence matter, and a real strategy uses all three:
- Property and roof data — how old the roof likely is, what the housing stock looks like, whether it has visibly been re-roofed, what condition it's in. This tells you whether a house can buy a re-roof.
- Storm and weather data — which roofs have absorbed significant hail or wind, and how hard. This tells you whether a roof was worn out faster than its age alone suggests, and whether the timing is right to engage.
- Your own first-party data — old estimates, past customers, declined bids, service tickets. This tells you which prospects already know your name and already have a roof you've laid eyes on.
Gut-feel prospecting uses a sliver of the first kind (what the estimator can see from the curb) and ignores the rest. A data-driven strategy stacks all three, scores each address, and works the list top-down. The gain isn't magic — it's that every door has real odds behind it instead of being a coin flip, and the same discipline runs whether your best closer is on the street or a green hire is.
Prospecting versus lead-buying — not the same thing
It's worth drawing a hard line here, because "prospecting strategy" gets muddled with "where do I buy leads." A lead service sells you a homeowner's contact information — frequently the same lead resold to several competitors — so you pay per lead to race four other roofers to someone already fielding five calls. That's not prospecting; that's renting a contact. Data-driven prospecting is the opposite model: you decide which addresses in an area you're going to work are worth the time, then you go earn the conversation yourself. The doors are yours, the cost is fixed rather than per-lead, and nobody else got sold the same address. For a contractor running the numbers on cost per booked job, that distinction is the entire reason to build a prospecting system instead of refilling a lead subscription every month.
The signals that actually predict a re-roof
A prospecting strategy is only as good as the signals it runs on. Roofers have access to far more property and weather data than they use, and they also trust the wrong sources for the wrong jobs. Here's the straight read on each signal — what it predicts, and where it lies to you.
Roof age — the backbone signal, and the one most often gotten wrong
Remaining roof life is a clock that ticks on every house whether you call or not, which makes roof age the single most useful prospecting signal. A roof you bid four years ago is four years closer to due, and it sat through every storm since. Age is what most directly answers the only question that matters first: can this house even buy a re-roof?
The trap is that the easy proxy lies, and a lot of roofers prospect on the lie. The county assessor's "year built" is the age of the house, not the roof. Re-roofs are frequently invisible in public records — some pull a permit, plenty don't, and county data lags reality by years. A 2001 house can sit under a 2017 roof. So build year is a fine baseline for a whole tract (it tells you the dominant age of original roofs in a subdivision) but unreliable for any single home.
That means roof age in real prospecting is a range, not a date. The honest read is "this roof is roughly 18 to 22 years old," pulled from aerial imagery, historical imagery, and visible weathering — not "installed March 2006." Anyone selling you an exact install year off a satellite photo is overstating what the data can do. The range is plenty. It sorts a roof into strong door, maybe, or skip, and that's all a prospect score needs from it.
What sharpens an age estimate past the build-year baseline:
- Aerial tonal uniformity. A new roof is one even tone; an aging roof goes blotchy as granule loss spreads unevenly.
- Patch contrast. A bright rectangle on a duller field means a prior repair — a roof that already had a problem.
- Historical imagery. A roof clearly new in 2013 imagery and worn now gives you a real install window. One of the most underused age tools roofers have.
- Plane-by-plane wear. South and west faces age faster; when sun-facing planes look more worn, that asymmetry is an age fingerprint.
Storm exposure — what separates a calm roof from a worn one
Age tells you how long a roof has been up. Storm exposure tells you how hard those years were, and it's the signal most roofers handle worst. Two roofs the same age are not the same prospect if one sat through two significant hail events and the other had a quiet decade.
Hail is the dominant accelerant across much of the country. It bruises the shingle mat, knocks granules loose, and fractures the asphalt — sometimes invisible from the ground for months until it opens up and leaks. Wind lifts and creases shingles and breaks seal strips, and a roof that loses its seal ages fast from there. NOAA's Storm Events Database and the Storm Prediction Center record where significant hail and wind occurred, and the Insurance Institute for Business & Home Safety has done extensive research on how hail size and shingle type drive damage.
Here's where most prospecting goes wrong: storm passage is not storm damage. A roofer hears "hail crossed the county" and prospects the whole county. But hail cores are narrow and erratic — one subdivision takes golf-ball impacts and roofs that are genuinely due; the next a mile away got pea hail and nothing. A regional storm map tells you the storm passed through. It does not tell you which roofs it actually wore out.
The signal you want is per roof: did this specific house, at this spot, take meaningful impact, and how does that stack with its age? Resolving a county-wide storm report down to which houses on which streets, then crossing it with each roof's age, is exactly the work that eats a sales manager's evenings and is easiest to get wrong by hand. It's also where a prospecting strategy gets most of its edge.
Build era and housing stock
The dominant build year of a neighborhood is a cheap, reliable baseline for where to prospect. A subdivision built in 2004–2007 with original architectural roofs is now in the 18–22 year window — prime. A 2021 build is a skip unless a serious storm hit it. Census housing data and county assessor records make this easy to pull at the tract level. Use it to pick the area, then refine per roof. Build era alone over-targets because it can't see re-roofs, but it's a sound, no-cost first filter.
Visible condition
What the roof actually looks like — granule loss, curling, rusted flashing, existing patches — is the ground-truth check on the age and exposure estimates. It reads from aerial and street-level imagery to a degree and confirms on the ladder. Condition catches the cases the other signals miss: the roof that looks rough but has years left (often just algae streaking, which is cosmetic), and the clean-looking roof that's brittle and unsealed underneath.
Your own customer data — the most underrated signal
The data you already own is the cheapest and often the most predictive. Old estimates that didn't close, repair customers from five years back, homeowners whose roofs you measured who "weren't ready yet" — every record has an address, a phone number, and a prior roof read. Advance the clock and a chunk of "too new" roofs from years ago have crossed into the window. Cross it against storm history since your last contact and you've got warm, specific reasons to call. There's a full section on this below, because it's the highest-return prospecting list in the building.
A signal-by-signal reference
| Signal source | What it predicts well | Where it misleads |
|---|---|---|
| County assessor / GIS | Build era, parcel footprint, tract age baseline | "Year built" is the house, not the roof; re-roofs invisible |
| Permit records | Sometimes a re-roof date | Many re-roofs pull no permit; data lags reality |
| Aerial / satellite imagery | Roof-age range, tonal wear, patches, install window | A range, never an exact date; can't see under tile |
| NOAA Storm Events / SPC | Where significant hail and wind occurred | Reports are coarse; "in the county" isn't "on this roof" |
| IBHS hail research | How hail size and shingle type drive damage | General research, not a per-address read |
| Street-level imagery | Material ID, ground condition without driving | Often a few years out of date |
| Your own CRM | Prior roof reads, sunk acquisition cost, warm contacts | Notes age at last contact; advance the clock and re-verify |
The pattern: public records are good for build era and storm regions, imagery is good for condition and aging, your CRM is good for warm intent, and none alone resolves to a confident per-roof prospect score. The strategy — and the work — is combining them.
Building the prospect score
A prospecting strategy needs one number you can sort on, or it collapses back into gut feel. You don't need a data scientist to build a score that beats knocking blind — you need to weight the signals that matter and be disciplined about removing the roofs that can't buy. Here's a transparent scoring frame you can run on a spreadsheet or hand to a tool.
Be precise about what you're scoring, because a vague target produces a vague list. You're scoring the probability that an address has a roof that's a genuine replacement candidate and a homeowner who can be moved to an inspection now. Two things both have to be true: the roof has to be physically due (age and storm exposure drive this), and the timing has to be right to engage (recent storm, neighbors getting work, a prior relationship). Most scoring failures optimize one and ignore the other.
A worked prospect-scoring model
Score each address on three pillars, then combine. The weights below are a sensible starting point — tune them to your market.
Pillar 1 — Roof-age odds (weight: 40%). How far through its expected life the roof likely is.
| Estimated roof age (range) | Points |
|---|---|
| Under 8 years | 0 |
| 8–13 years | 1 |
| 14–17 years | 2 |
| 18–22 years | 4 |
| 23+ years | 5 |
Pillar 2 — Storm-exposure odds (weight: 40%). What this specific roof actually absorbed — per roof, not regional.
| Storm exposure | Points |
|---|---|
| No significant events on record | 0 |
| Minor hail/wind, marginal impact | 1 |
| One significant event, likely real impact | 3 |
| Multiple events or one severe core hit | 5 |
Pillar 3 — Condition and intent (weight: 20%). Visible wear plus timing and relationship signals.
| Condition / intent signal | Points |
|---|---|
| Looks newer, no relationship | 0 |
| Mid-life wear, cold address | 2 |
| Heavy visible wear, or prior contact with you | 4 |
| Heavy wear + warm relationship + recent storm | 5 |
Normalize each pillar to its weight and sum to a 0–100 score. A roof at 20 years (4/5 age), one significant hail event (3/5 exposure), and mid-life wear on a cold door (2/5 condition) scores: (4/5 × 40) + (3/5 × 40) + (2/5 × 20) = 32 + 24 + 8 = 64. A 24-year roof (5/5) that took a severe core hit (5/5) with heavy wear and prior contact (4/5) scores 40 + 40 + 16 = 96 — top of the list. A 6-year roof with no storm and no relationship scores 0 and comes off the list entirely.
The exact numbers matter less than the discipline: every address gets the same read, the strong doors float up, and the roofs that physically can't buy get culled. That consistency is the point. A green canvasser working a 64-and-up list sounds like your best estimator, because the list already did the estimator's thinking.
Why the weights look the way they do
Age and storm exposure carry 80% of the weight together because they determine whether the roof is physically a candidate, and no amount of sales skill sells a re-roof to a house that doesn't need one. Condition and intent get 20% because they sharpen order and timing but can't override physics. If your market is hail-driven — Texas, Oklahoma, Colorado, the High Plains — push exposure to 50% and age to 30%; in those markets roofs get replaced because of hail, so a 9-year roof that took a severe event is a stronger prospect than a 20-year roof that's seen only calm weather. In a low-hail, high-UV market like the desert Southwest, do the reverse and let age lead.
Calibrate the age clock to your region
The same shingle doesn't age the same everywhere, so the age pillar needs a regional anchor before you trust it:
- High-UV, high-heat (Southwest, Texas, inland California): intense sun drives faster granule loss; a 3-tab cooked at 13–15 years that might last 18 elsewhere. Bump age scores up.
- Hail alley (TX, OK, KS, NE, CO, the Plains): storm exposure is the dominant clock; age and hail history are tightly linked. Lead with exposure.
- High-wind / coastal (Gulf, Atlantic, open plains): seal failure dominates; roofs that lost their seal age fast afterward, and older roofs are often genuinely under-built versus current wind codes — an honest selling point.
- Wet, mild, shaded (Pacific Northwest, parts of the Southeast): UV aging is slow but moss, algae, and rot do the work; don't let a mild climate color you into under-aging these roofs.
- Cold / snow-load (Upper Midwest, Northeast, Mountain West): freeze-thaw and ice damming concentrate failures at eaves and valleys; weight edge-line wear.
A storm crew that lands in an unfamiliar market and applies its home-market aging curve will misjudge half the street. Anchor the clock to the local climate first, then score per roof.
Don't over-engineer the score
Once a roofer catches the analytics bug, the temptation is to keep bolting on inputs — tract income, length of homeownership, square footage, roof complexity — chasing a few more points of accuracy. Resist most of it. The three pillars carry the vast majority of the predictive signal, and every extra input is another field that can be wrong, stale, or expensive to source. A simple score you actually run beats a sophisticated one that sits unused because it's too fiddly to update. Start with age, exposure, and condition; only add an input once you've measured that it improves your close rate. Most don't.
One addition that earns its place in some markets is roof complexity — but for pricing and crew planning, not for whether to prospect. A steep, cut-up roof with multiple valleys and dormers is a bigger, more profitable job and a different inspection. Note it on the list so the rep and estimator know what they're walking into, but don't let it decide a knock. Whether the homeowner buys is driven by age and storm exposure; how much the job is worth is driven by complexity.
From score to a list your team can work this week
A score sitting in a spreadsheet books nothing. The output that matters is a routed list and a mail drop — the right doors, in geographic order, in a rep's hand the same morning, and the right addresses on a targeted print run. Here's the workflow that turns a score into a working week.
The build-the-list workflow
- Pick the area by build era. Choose streets where the housing stock puts roofs in the replacement window. Cheapest, broadest filter — start where roofs are old.
- Set the age baseline. Pull the dominant build year for the tract from assessor data. This anchors your age expectation before you look at a single roof.
- Refine roof age per address. Use aerial and historical imagery to move from "the tract is ~20 years old" to a per-roof range, and flag homes that already re-roofed so you can remove them. Knocking a homeowner who re-roofed last year is the fastest way to look like you didn't do your homework.
- Layer in storm exposure per roof. Cross the addresses against hail and wind history, resolved as tightly to specific streets as you can. Roofs that are aging and storm-hit jump to the top.
- Score and rank. Run the model. Sort descending. Set a cutoff — say, work everything 60-and-up first.
- Split by channel. Top-tier, high-density streets go to the knockers in route order. Lower-density or rural addresses where knocking is inefficient go to targeted mail. Same score, different motion.
- Route geographically. Order the knock tier so the rep isn't crisscrossing the subdivision. A good list is ranked and efficient.
- Walk and verify. The list gets the rep to the right door; the ladder confirms what's actually up there. The score is for prioritizing, never for promising a homeowner anything before inspection.
A worked example, end to end
A 220-home subdivision built in 2005, architectural shingles, and a hailstorm crossed the north edge eight months ago.
- Blind approach: knock all 220 over a couple of weekends, book maybe 8–12 estimates, burn out a rep.
- Age baseline: ~20-year-old original roofs — the tract is already in the window.
- Remove re-roofs: imagery flags ~40 homes with newer, uniform roofs. Cross them off. Down to 180.
- Storm overlay: the hail core hit the northern ~60 homes hard; the southern 120 got grazed. Tier the north 60 as top priority — hail plus age stacked.
- Condition screen: within that 60, a dozen show heavy granule loss, curling, or existing patches. Those 12 are the A-list.
- Score, split, and route: the 12 A-list doors score 85+ and go to your best knocker first; the rest of the north 60 land 60–80 and route behind them; the aging-but-unstormed south 120 land 40–60 and go to a targeted postcard instead of payroll hours.
Now the rep starts the day on 12 A-list doors, then 48 strong storm-and-age doors, while the slower-odds south gets a cheaper channel. Same neighborhood, completely different week. Estimate rate climbs because nearly every knocked door is a genuine candidate, and the rep stays sharp because they're getting real conversations instead of "we just replaced it."
Matching the channel to the score
A real prospecting strategy doesn't knock everything — it sends each prospect down the channel that fits its odds and density. A rough mapping:
| Prospect tier | Score | Best channel | Why |
|---|---|---|---|
| A — storm-hit + aging, dense streets | 80–100 | Door knock, your best rep first | Highest odds and timing; face-to-face converts these |
| B — aging, cold, dense streets | 60–79 | Door knock by route, then mail backup | Real candidates, no urgency trigger yet |
| C — aging, low-density or rural | 50–79 | Targeted direct mail | Knocking is too inefficient per door out here |
| D — warm CRM records that aged in | any | Phone call first | Already know your name; cheapest conversation you'll have |
| Skip — new or re-roofed | under ~40 | None | Can't buy a re-roof; spending to reach them is leakage |
The point isn't the exact thresholds — it's that the score decides the channel, so expensive face time goes to the highest-odds doors and cheaper channels mop up the rest, instead of treating every prospect the same.
The math: what a prospecting strategy does to cost per booked job
The case for this is money, not elegance. The doors a canvasser can physically knock in a day doesn't change much — what changes is the quality of every door, and that ripples straight through to cost per acquisition and cost per booked estimate.
A canvasser-day comparison
| Knocking blind | Knocking a scored list | |
|---|---|---|
| Doors worked per rep-day | 120 | 120 |
| Share that are real roof candidates | ~25% | ~70% |
| Productive conversations | Low | High |
| Estimates booked per day | 3–5 | 8–12 |
| Can't-buy doors wasted | ~90 | ~36 |
The doors are the same. The wasted ones drop by more than half. In dollars: if a rep-day costs you payroll plus gas and a blind day yields 4 estimates while a scored day yields 9, your cost per booked estimate falls by more than half on the same spend. Stack that across a season and a team and the strategy paid for itself many times over before you count a single closed job.
Where the savings actually come from
Three places, worth naming so you know what you're buying:
- Culled dead doors. A re-roof is worth thousands of dollars; spending payroll and gas to reach roofs that physically can't buy one is pure leakage. Removing them is the biggest single win.
- Better timing. Working storm-hit, age-out roofs while the event is fresh converts at a higher rate than the same roofs cold. Scoring that surfaces both factors books more per conversation.
- Rep retention. A hidden profit center. Green reps quit when every door is a rejection. Reps who knock doors that convert make money and stay, and you stop paying to recruit and train a churning canvass team. Morale isn't a soft factor — it's payroll you don't spend twice.
Why fixed-cost prospecting beats per-lead spend
Run the comparison against buying leads, because that's the alternative most roofers are weighing. A lead service charges per lead, sells the same homeowner to several competitors, and leaves you racing to a contact who's already annoyed. A prospecting strategy on your own target area is a fixed cost — the data, the tooling, the labor to build the list — spread across every door you work, and the doors are exclusively yours. The more you work the list, the lower your effective cost per prospect drops, which is the opposite of a per-lead bill that scales straight up with volume. You still knock, inspect, and earn the job. You're just not paying a toll on every name and not sharing it with four other trucks.
Mining the prospects you already own
Before spending a dollar finding new doors, work the doors you already paid to find. This is the highest-return application of a prospecting strategy, because the acquisition cost is already sunk and the data is already in your system.
The logic is simple. Roof age is a clock that keeps ticking on every house in your book whether you call or not. The 16-year-old roof you bid a minor repair on four years ago is a 20-year-old roof now — and it sat through every storm since. The homeowner who got three bids in 2021 and went with the cheapest patch is exactly the person whose roof is now genuinely due. You don't have to find them. You have their address, their phone, and notes on their roof.
A CRM re-engagement workflow
- Pull every record with an address and a rough roof read. Old estimates, declined bids, repair tickets, maintenance calls. If you noted apparent age or material at the time, better still.
- Advance the clock. Add the years that have passed. A roof you pegged at 14 in 2019 is around 21 now. That alone re-sorts your list — a chunk of "too new" roofs have crossed into the window.
- Cross against storm history. Which addresses sat under hail or high wind since you last talked? An aging roof that's also taken a storm since your last contact is a warm, specific reason to reach back out.
- Score the callbacks. Aging-plus-storm records to the top, aging-only next. These are people who already know your name and already have a roof you've laid eyes on.
- Reach out with a real reason. "We measured your roof back in 2021 — it'd be in the range now where it's worth another look, and your area took hail last spring. Want me to come back out?" Specific and honest, not a generic check-in.
The economics here are the best you'll ever see: no list to buy, no cold canvass, no ad spend — just a phone call to someone already in your system. A season of jobs can be sitting in a CRM nobody's touched since the estimate didn't close. The roofs aged into the window on their own; the strategy just tells you which records to call first.
Segmenting the rest of your book
Beyond the obvious aged-in estimates, your customer data has more prospecting fuel than most owners use:
- Past full-roof customers are not done — they refer, and their neighbors saw your sign and your crew. A satisfied customer's street is a warm canvass area, not a cold one.
- Repair-only customers are future replacements; a roof you patched five years ago is five years older now.
- "Not ready yet" homeowners told you when they'd be ready. If they said "maybe in a few years," the calendar may have arrived.
The move is to enrich every one of those records with a current roof-age estimate and storm history since last contact, then score them like any other prospect. Your book stops being a static archive and becomes a prospecting list that refreshes itself as roofs age and storms hit.
Where RoofPredict fits in this strategy
Everything above you can do by hand. Plenty of good roofers do — they drive neighborhoods, eyeball roofs, pull county build years, and cross-reference NOAA hail reports on a second monitor. It works. It's also slow, it doesn't scale past what one person can eyeball, and the hardest layer — resolving storm exposure per roof and crossing it with age across hundreds of addresses — is exactly the part that takes longest and is easiest to get wrong.
That's the gap RoofPredict is built for. Point it at an area and it reads each roof from aerial imagery and gives you a roof-age range per address — not a guess at an exact install date, a defensible range like "roughly 18 to 22 years" — and it models the storms each roof has actually taken. Not a regional hail map that says the storm passed through, but a per-roof read: did this house, at this spot, take meaningful hail and wind, and how does it stack with its age. Then it ranks the addresses so your crew works the roofs the storm actually wore out and the roofs aging out, and skips the new ones. It can also append that roof-age and storm signal to a list you already have — your CRM, your old estimates, a mailing list — so the records you own get scored the same way.
In practice it collapses the build-the-list workflow into a list you can hand a canvasser or feed a mail house the same week: re-roofs already filtered out, storm-hit-and-aging roofs already on top, in route order. The reps who walk in with the age range and dated storm history show up informed instead of empty-handed.
The honest limits, because a tight trade compares notes:
- It gives a range, never an exact roof birthday. Imagery can't see an install receipt. The range is enough to prioritize; it isn't a certificate.
- The ranking is odds, not proof. It tells you which doors are worth your time. The ladder still confirms what's actually up there.
- It's storm history and modeling, not a forecast you wave at a homeowner as evidence. What fell, fell; what hasn't, hasn't.
- It documents conditions and storm exposure so a roofer shows up prepared — it does not file, handle, or decide an insurance claim. The roofer documents what they find and writes the estimate; the insurer decides coverage; the homeowner owns the claim.
Used that way — a ranked starting point, not a promise — it does the slow part of the strategy for you so your people spend the week on the right doors instead of building the list.
Running it as a weekly system, not a one-off project
The difference between a strategy and a stunt is the cadence. A roofer who scores one subdivision once, gets a good week, then drifts back to gut feel hasn't built anything. The companies that win with this run it as a standing operating rhythm. Here's a workable weekly loop for a sales manager.
A weekly prospecting cadence
- Monday — pick and score. Choose the week's target area off build era, pull the addresses, refine age per roof, layer storm exposure, score, and split by channel. Produce the routed knock list, the mail drop, and the CRM callback list.
- Tuesday–Friday — work the list top-down. Reps knock the A and B tiers in route order. The phone team works the CRM callbacks. Mail goes to print for the C tier. No "let's just go work that street" — the list earns the day.
- Friday — log the loop. Record which scored doors converted to an inspection and which inspections booked. Tag the outcome back to the score so you can see, over weeks, whether your 80s really do close at a higher rate than your 60s.
- After any significant storm — re-score immediately. A serious hail or wind event resets the storm-exposure layer for a whole area. Re-run the affected tracts promptly while intent is high and roofs are fresh.
- Monthly — re-weight. Look at the conversion-by-score data. If the model is sorting well, leave it. If your high scores aren't out-converting your mid scores, your weights are off for your market — adjust and watch the next month.
Roles, so it doesn't all live in one head
The whole reason to make prospecting a system is that it stops depending on your sharpest person being on the street. Split it:
- The sales manager owns the list — picks the area, runs the score, sets the cutoff, and routes. This is the brain of the operation, and it's a desk job, not a windshield job.
- The reps own the doors — they get a list already thought-through, so a green hire works like a vet because the list did the estimator's read for them.
- The phone team owns the book — works the CRM callbacks, the warmest and cheapest prospects you have.
- Whoever owns the data owns the refresh — keeps the inputs current, especially the storm layer after events, so nobody's working last season's prediction.
When those roles are clear, prospecting survives a rep quitting, a slow season, or your best closer being out for a week. The system carries the read, not a person.
Measuring whether the strategy is working
A prospecting strategy you don't measure is just a more organized hunch. The point of going data-driven is that you can close the loop and prove — or disprove — that the score predicts. A handful of metrics tell you everything.
The metrics that matter
| Metric | What it tells you | What "good" looks like |
|---|---|---|
| Contact-to-inspection rate by score tier | Whether high scores actually open doors | 80-tier should beat 60-tier clearly |
| Inspections per rep-day | Whether the list is dense with real candidates | Climbs sharply versus blind canvassing |
| Cost per booked estimate | The headline efficiency number | Falls as dead doors get culled |
| Close rate by score tier | Whether the score predicts buyers, not only inspections | High tiers close higher |
| List freshness (days since last re-score) | Whether you're working a current prediction | Re-scored after every major storm |
| CRM-callback conversion | Whether the warm book is being mined | Should be your highest close rate |
The single most important habit is tagging every outcome back to the score that produced it. If your 80-plus doors convert to inspections at triple the rate of your 50s, the model works and you should trust it harder. If they don't, your weights are wrong for your market and you adjust. That feedback loop is what turns a static scoring sheet into a strategy that gets sharper every month instead of staying a guess.
Don't measure activity, measure outcomes
A common trap is celebrating doors knocked and postcards mailed — activity metrics that feel like progress and prove nothing. A strategy is judged on booked estimates per dollar and jobs per dollar, not effort. A rep who knocks 80 well-scored doors and books 9 beat a rep who knocked 130 blind doors and booked 4, even though the second rep "worked harder." Reward the outcome, route the effort with the score, and your team's energy goes to the doors that pay.
A note on storm-damage prospecting and where the line is
A lot of prospecting energy in this trade chases storm-damaged roofs, and there's nothing wrong with that — a roof the hail genuinely wore out is a real candidate and a real job. But there's a bright line a roofer's prospecting and pitch must not cross, and it's a legal line in many states, not merely an ethical one.
A roofer may inspect a roof, document damage thoroughly with dated photos, and prepare an accurate repair estimate — and state facts about their own scope to the carrier. What a roofer may not do, for a fee, is negotiate or "handle" the homeowner's claim, interpret their policy or coverage, promise a specific payout or approval, say anything about waiving or absorbing the deductible, advertise a "free roof," or represent the homeowner against their insurer. That last cluster is unlicensed public adjusting, and roofers have been penalized for it. So keep your prospecting and your pitch on the document-and-estimate side:
- Prospect on real signals — roof age and actual per-roof storm exposure tell you which homes likely have storm-worn roofs worth inspecting. That's targeting, and it's clean.
- At the door, lead with the inspection, not a verdict. "This area took hail last spring and these roofs are at the age where it's worth a look — I'd like to get up there and show you what I find, good or bad."
- Document thoroughly and write an honest estimate. Dated photos and an accurate, Xactimate-aligned scope are what you hand the homeowner. The homeowner files; the insurer decides coverage; you're the contractor who documented the damage and can do the work.
- Never promise approval, never touch the deductible, never call yourself a claims specialist. Those are the do-not-say items that turn a clean prospecting motion into a compliance problem.
A prospecting strategy makes the targeting precise — which roofs likely qualify on age and storm exposure, and the documentation workflow to walk in prepared. It does not, and should not, turn into claims handling. Keep the line bright and the whole motion stays honest and defensible.
Putting it together
A data-driven roofing sales prospecting strategy isn't a dashboard or a subscription — it's a discipline. Decide who to prospect on signals you can measure: roof age as a range, storm exposure per roof, visible condition, and the warm prospects already in your own book. Stack those into a score, cull the roofs that physically can't buy, route the survivors by channel and by geography, and put the highest-odds doors in front of your people first. Then close the loop — tag outcomes back to the score, re-weight monthly, re-run after every storm — so the prediction sharpens instead of going stale.
The payoff is the same every time it's done right: fewer wasted miles, more estimates per day, reps who stay because they're winning, and a pipeline you own instead of one you rent from a lead site or wait on a storm to deliver. The best estimator in your shop already does this read one roof at a time. The strategy is what lets a whole team do it across hundreds of doors, every week, whether your sharpest person is on the street or not. Build the system once and it works for you in slow seasons and busy ones — which is the difference between hoping for jobs and prospecting for them.
FAQ
What is a data-driven roofing sales prospecting strategy?
It's a system for deciding which addresses to prospect, and in what order, based on signals you can measure instead of where the truck happens to be. The three signal types are property and roof data (likely roof age, build era, whether it's been re-roofed, visible condition), storm and weather data (which roofs actually absorbed significant hail or wind, per roof), and your own first-party data (old estimates, past customers, declined bids). You stack those into a score, work the highest-odds doors first, and then measure whether the score predicted accurately and adjust. It replaces gut-feel canvassing with a repeatable read a whole team can run.
How is data-driven prospecting different from buying roofing leads?
They're opposite models. A lead service sells you a homeowner's contact info, often the same lead resold to several competitors, so you pay per lead to race other roofers to someone already fielding five calls. Data-driven prospecting on your own target area sharpens the outbound you already do — it scores the roofs in an area you're going to work by how likely each is to be due, so your crew works the right doors first. You still knock, inspect, and earn the job. The cost is fixed rather than per-lead, and the doors are yours, not shared with four other trucks.
What data actually predicts whether a roof will sell?
Roof age and storm exposure carry most of the signal, because together they decide whether a roof is physically a replacement candidate. Roof age is a range (not an exact date) estimated from aerial and historical imagery and visible weathering. Storm exposure is best read per roof — did this specific house take meaningful hail or wind — not as a regional map. Visible condition (granule loss, curling, patches) checks the estimate, and your own customer history flags warm prospects whose roofs you've already seen. Build year from the assessor is a useful tract baseline but unreliable for any single home because it's the age of the house, not the roof.
Why isn't the county's "year built" the same as roof age?
Because "year built" is the age of the house, not the roof, and most homes get re-roofed at least once over their life. Re-roofs are frequently invisible in public records — some pull a permit, plenty don't, and county data lags reality by years. A 2001 house can sit under a 2017 roof. Build year is fine as a baseline for a whole subdivision (it tells you the dominant age of original roofs) but it will send you to knock homeowners who replaced their roof years ago, which makes you look like you didn't do your homework. Always screen for re-roofs separately using imagery.
How do I build a prospect score without a data team?
Score each address on three pillars and combine into a 0–100 number. Roof-age odds (40% weight): more points the further through its life the roof likely is. Storm-exposure odds (40%): more points for real per-roof hail or wind impact. Condition and intent (20%): visible wear plus timing and relationship signals. Normalize each pillar to its weight, sum, and sort descending. A spreadsheet handles it. The discipline matters more than the exact numbers: every address gets the same read, strong doors float up, and roofs that can't buy get culled to zero and come off the list.
Should I knock every prospect on the list?
No — match the channel to the score and the density. High-odds, dense streets (storm-hit and aging) go to your best knocker first. Aging-but-cold dense streets get knocked by route with mail as backup. Low-density or rural aging roofs go to targeted direct mail because knocking is too inefficient per door out there. Warm CRM records that aged into the window get a phone call first, since they already know your name. New or re-roofed homes get skipped entirely. The score decides the channel so your expensive face time goes only to the highest-odds doors.
How does prospecting my own CRM compare to finding new doors?
Your CRM is the highest-return prospecting list you have, because the acquisition cost is already sunk. Roof age keeps ticking on every record whether you call or not, so old estimates, declined bids, and repair customers from years ago have roofs that have aged into the replacement window on their own. Advance the clock on each record, cross it against storm history since your last contact, score the callbacks, and reach out with a specific reason. It's no list to buy, no cold canvass, no ad spend — just a phone call to someone who already knows your name and already has a roof you've laid eyes on.
How do I know if my prospecting strategy is actually working?
Tag every outcome back to the score that produced it, then track contact-to-inspection rate by score tier, inspections per rep-day, cost per booked estimate, close rate by score tier, and CRM-callback conversion. The single most telling check: do your 80-plus doors convert at a higher rate than your 50s? If yes, the model predicts and you should trust it harder. If not, your weights are wrong for your market and you adjust. Measure booked estimates and jobs per dollar — outcomes — not doors knocked or postcards mailed, which are activity metrics that feel like progress but prove nothing.
Can I use storm data to prospect for insurance-claim roofs?
You can use roof age and per-roof storm exposure to target homes whose roofs were likely worn by a storm and are worth inspecting — that's clean targeting. But keep your pitch on the document-and-estimate side. A roofer may inspect, document damage with dated photos, and write an accurate repair estimate, and state facts about their own scope to the carrier. A roofer may not, for a fee, negotiate or handle the claim, interpret the policy, promise approval or a payout, say anything about the deductible, advertise a "free roof," or represent the homeowner against the insurer — that's unlicensed public adjusting and roofers have been penalized for it. Document thoroughly, hand the homeowner an honest estimate; the homeowner files and the insurer decides coverage.
How often should I refresh my prospect list?
Treat it as a standing weekly cadence, not a one-off. Pick and score the week's target area on Monday, work it top-down through the week, and log outcomes on Friday. Re-score any affected area immediately after a significant hail or wind event, while intent is high and roofs are fresh. Re-weight the model monthly based on conversion-by-score data. A list you built last spring has drifted — some roofs aged in, some got worked by a competitor, some re-roofed — so a static list quietly turns into yesterday's prediction. The refresh is what keeps the strategy ahead of the street instead of behind it.
The Roofline by RoofPredict
Stay Ahead of Roofing Market Changes
Join The Roofline by RoofPredict for weekly roofing intelligence: material price signals, storm demand, insurance and regulatory updates, sales tactics, and local contractor opportunities.
Sources
- Storm Events Database — ncdc.noaa.gov
- NOAA Storm Prediction Center — spc.noaa.gov
- National Weather Service — Hail — weather.gov
- Insurance Institute for Business & Home Safety — Hail Research — ibhs.org
- IBHS — Roofing Materials and Severe Weather — ibhs.org
- National Roofing Contractors Association — nrca.net
- U.S. Census Bureau — American Housing Survey — census.gov
- International Residential Code (ICC) — iccsafe.org
- OSHA — Fall Protection in Residential Construction — osha.gov
- FTC — Advertising and Marketing on the Internet: Rules of the Road — ftc.gov
- Texas Department of Insurance — Public Insurance Adjusters — tdi.texas.gov
- U.S. Bureau of Labor Statistics — Roofers — bls.gov
- Federal Alliance for Safe Homes (FLASH) — flash.org
- RoofPredict — roofpredict.com
Related Articles
Which Suburbs Have the Oldest Housing Stock for Roofing (And How to Find Them)
How to find the suburbs and subdivisions where the most roofs are aging out, using free public data, build-out windows, and a repeatable ranking method, without buying a list you can't verify.
How to Update Old Roofing Leads With Current Roof Condition Data
Your old lead list is sitting on signed-roof money. Here is the practical workflow for re-scoring dead leads with current roof age and storm data, then working the ones worth calling.
How to Measure Roofing Direct Mail Campaign Results (Without Fooling Yourself)
Most roofers track the wrong number on their mailers. Here is how to measure response rate, cost per job, and true ROI on a roofing direct mail campaign the way a sharp operator does.