How to Prequalify a Roof Before Driving Out: A Field-Tested System for Roofing Crews
On this page
Every roofing company I've ever worked with measures the wrong thing. They count appointments set, doors knocked, or inspections booked. Almost none of them track the number that actually decides whether the month is profitable: how many miles their sales reps drove to roofs that were never going to sell.
A storm rep in a metro market burns somewhere between 60 and 120 miles a day. A retail rep doing scheduled inspections covers less ground but spends 30 to 45 minutes on a ladder per stop. Either way, the constraint on a roofing sales operation is not leads and it is not closers. It is windshield time. You have a fixed number of productive hours per rep per day, and every one of them spent driving to, climbing, and walking away from a roof that wasn't due is gone for good. You don't get it back.
Prequalifying a roof before you drive out is the discipline of doing the cheap desk work first, so that the expensive field work only happens on addresses that can pay for themselves. It's the difference between a rep who runs eight stops and closes one, and a rep who runs five stops and closes three. Same labor cost. Wildly different output. The second rep didn't get better at selling. The dispatcher got better at deciding where to send them.
This is a full operational walkthrough of how to build that decision into your process: what signals to read from your desk, how to score them, where to find them for free and where you'll need to pay, how to turn a scored list into a driving route, and the specific mistakes that quietly bleed margin out of an otherwise healthy company. It's written for the person who actually has to make payroll on Friday, not for a theory of sales.
What "prequalify" actually means in roofing
Let's get the definition straight, because the word gets used loosely and that's part of why crews skip the step.
To prequalify a roof is to estimate, before anyone physically goes there, whether that specific address is likely enough to convert into profitable work to justify the cost of a visit. It is a probability call, not a verdict. You are not deciding whether the roof is bad. You are deciding whether the odds of it being bad, multiplied by the odds of the owner being a buyer, multiplied by the value of the job, clear the cost of finding out.
Three distinct questions hide inside that one decision, and good prequalification answers all three:
- Is the roof physically near the end of its service life or recently storm-exposed? A 6-year-old architectural shingle roof in a county that hasn't seen hail since 2019 is a near-certain no. A 19-year-old three-tab roof under the footprint of a verified 1.75-inch hail core from six weeks ago is a near-certain yes. Most addresses sit between those extremes, and your job is to sort them.
- Is there a buyer behind the door? Owner-occupied versus absentee landlord. Length of ownership. Whether the property recently sold (new owners rarely replace a roof in year one). These change conversion odds as much as the roof itself.
- Is the job worth the truck roll? A 1,100-square-foot ranch and a 4,800-square-foot custom home both take one appointment slot. One produces a $9,000 ticket and one produces a $38,000 ticket. When two addresses are equally likely to be due, the bigger roof wins the route every time.
Prequalification that only looks at the roof and ignores the buyer and the ticket size is half a system. I'll come back to all three, but keep them in your head as the three axes you're scoring on.
Why this matters more now than it did ten years ago
The economics of a roofing visit have gotten worse, and most owners haven't repriced their process around it. Fuel is up. Loaded labor for a competent sales rep — base, commission draw, fuel card, phone, vehicle, insurance — runs a real company $45 to $80 an hour all-in depending on market. A blown inspection isn't a free "at least we got our name out there." It's a $40 to $120 hole, and that's before you count the opportunity cost of the appointment slot.
Meanwhile the data you need to avoid those holes has gotten dramatically cheaper and more accessible. High-resolution aerial imagery that used to require a flyover now sits in free and low-cost web tools. Storm verification that used to live inside an insurance adjuster's software is partially public through the National Weather Service. Property and ownership records that used to mean a trip to the county courthouse are queryable online in most jurisdictions. The desk work got cheaper at the same time the field work got more expensive. Companies that haven't moved budget from the second to the first are running an outdated cost structure.
The prequalification stack: signals from cheapest to most expensive
Think of the signals you can gather as a stack, ordered by how much they cost you to obtain. You always work top-down: spend the free signals first, and only spend the expensive ones on addresses that survived the free filters. This is the single most important principle on the page. The cheapest qualifier is the one that lets you stop early.
Here's the stack, with rough cost and what each one tells you:
| Tier | Signal | Cost to obtain | What it tells you |
|---|---|---|---|
| 1 | Storm history for the area | Free (NWS/SPC archives) | Whether a damage event even plausibly happened |
| 2 | Aerial / satellite imagery | Free to low | Roof material, condition, complexity, size |
| 3 | Property records | Free to low | Ownership, year built, last sale, owner-occupancy |
| 4 | Roof-age estimate (modeled or imagery-dated) | Low to mid | Where the roof sits in its service life, as a range |
| 5 | Storm exposure modeled per address | Mid | Whether THIS roof was under damaging weather |
| 6 | Physical visit / inspection | High | Ground truth — the thing you're trying to ration |
Everything from Tier 1 through Tier 5 is prequalification. Tier 6 is the thing you're trying to spend less of. A mature operation gets so good at Tiers 1 through 5 that by the time a rep climbs a ladder, the inspection is mostly a formality to confirm what the desk already concluded — and to give the homeowner the in-person, document-everything experience that actually closes the deal.
Let's go through each tier with the actual workflow.
Tier 1: Did a storm even happen here?
For storm-restoration work, this is the master filter and it's free. There is no point scoring individual roofs for hail damage in an area that didn't get hail.
The authoritative public source is the National Weather Service's Storm Prediction Center, which maintains a storm reports archive, plus the broader NOAA Storm Events Database. These give you, by date and rough location, reports of hail (with estimated stone size) and damaging wind. The Storm Events Database lets you pull historical events by county going back decades.
Your workflow at this tier:
- Define your service polygon. Know the counties and ZIP codes you'll actually drive to. Everything outside it is noise.
- Pull the event history for that polygon. For each significant hail or wind event, note the date and the estimated hail size or wind speed. Hail at or above roughly 1 inch starts to matter for asphalt shingles; 1.25 inches and up does real, documentable damage. Straight-line wind above about 58 mph is the threshold the NWS uses for a severe thunderstorm warning and a reasonable floor for wind claims.
- Stack events over time. A neighborhood that took 1.5-inch hail four years ago AND 1-inch hail last spring has a compounding-damage story. Roofs there are more likely to have accumulated functional damage even if no single storm totaled them.
A critical honesty point, and one that keeps you on the right side of the law: storm reports are estimates of what fell in an area, not proof that a specific roof was damaged. Public hail reports are notoriously coarse — they come from spotters, law enforcement, and trained observers, and a single report can represent a wide area. They tell you where to look, not what you'll find. A roof can sit a half-mile from a 2-inch hail report and have nothing, because hail cores are tight and patchy. Treat Tier 1 as the question "is it even worth modeling this neighborhood?" and nothing more.
A note on hail size and what it does to a roof
Knowing the rough damage threshold by material helps you set your storm filter intelligently. General field-observed thresholds — not guarantees, because impact angle, shingle age, and underlayment all matter:
| Hail size | Common reference | Typical effect on asphalt shingles |
|---|---|---|
| 0.75 in | Penny | Usually cosmetic; granule loss on aged roofs |
| 1.0 in | Quarter | Functional damage possible on older/brittle shingles |
| 1.25 in | Half dollar | Functional damage common; bruising, mat fracture |
| 1.5 in | Ping pong ball | Widespread functional damage likely |
| 1.75 in+ | Golf ball and up | Severe damage; full replacements common |
Older shingles fail at smaller stone sizes because the asphalt has lost flexibility — the same 1-inch stone that bounces off a 4-year-old roof can fracture the mat on a 17-year-old one. That interaction between age and storm exposure is exactly why prequalification has to look at both, not either alone.
Tier 2: Reading the roof from the air
Once a neighborhood survives the storm filter (or, for retail/age-based work, always), you go to imagery. This is where a sharp estimator separates from a button-pusher, because a high-resolution aerial tells you a startling amount about a roof if you know what to look for.
Free and low-cost imagery sources include the standard mapping platforms' satellite and aerial views, and several roofing-specific measurement tools that also surface recent oblique (angled) imagery. For prequalification you don't need a paid measurement report yet — you need eyes on the roof.
What to read, in order:
Material. Asphalt shingle, metal, tile, flat/low-slope membrane, wood shake. This sets the entire conversation. A standing-seam metal roof is almost never a storm-replacement target. A 3-tab asphalt roof from the early 2000s is your bread and butter. Tile and shake are specialty conversations. Don't drive a generalist asphalt crew to a clay tile roof and find out on the ladder.
Condition cues visible from above:
- Streaking and discoloration — dark streaks are often algae, but uneven, blotchy fading and visible granule-loss patterns suggest an aged surface.
- Patching and mismatched planes — a section of shingle that's a different shade than the rest means a prior repair, which means a known problem area and an owner who's already spent money on this roof.
- Sagging ridgelines or deck deflection — visible waviness in what should be straight lines suggests deck or structural issues. That's either a bigger job or a walk-away, depending on your shop.
- Surface granule wash at valleys and downspout exits — heavy granule accumulation patterns can indicate an aging surface shedding its protection.
- Moss/vegetation — north-facing or shaded sections holding moisture; ties to age and a maintenance-neglected owner.
Complexity. Count the facets, valleys, hips, dormers, penetrations, and skylights. A simple gable roof is fast and cheap to replace; a cut-up roof with eight valleys, three dormers, and a turret is slow, dangerous, and high-margin if you price it right — but you need to know that before you bid it, not after. Complexity also affects your crew assignment.
Size and pitch. Aerial measurement tools estimate squares (1 square = 100 sq ft) and slope. Even a rough eyeball — "that's a 30-something square roof, walkable pitch" — lets you forecast ticket size and labor. Steeper pitches (over 7:12) change crew, safety setup, and price.
Access and staging. Can a dump trailer and a materials delivery get to this house? Tight urban lots, long shared driveways, and tree cover all affect job cost and sometimes feasibility. You can see a lot of this from above.
A practical move: keep a running screenshot folder per route. When a rep is about to head out, they should have already seen the roof. Walking up to a door with the roof already in your head — "this is a 28-square architectural roof, one prior repair on the south slope, two skylights" — changes the conversation entirely.
Worked example: scoring one street from the desk
Say you're looking at a 14-house cul-de-sac in a neighborhood that took 1.5-inch hail seven weeks ago. From imagery alone, before anyone drives out:
- 3 houses have standing-seam metal or newer-looking architectural shingle (clean, uniform, no streaking). Score low. Skip or low-priority.
- 2 houses are clearly recently re-roofed (bright, uniform, different shade than neighbors — someone already got these). Skip.
- 6 houses have aged-looking 3-tab or older architectural, visible streaking, one with a prior patch. Score high. These are your targets.
- 2 are tile. Specialty — route to your tile estimator if you have one, otherwise skip.
- 1 is ambiguous — could be a mid-life architectural roof. Score medium; visit if it's on the way.
You just turned a 14-house street into a 6-house priority list with 2 maybes, without leaving your desk. A rep who knocks all 14 spends most of the afternoon on no-hope doors. A rep who knocks the 6 plus the 2 maybes runs the same street in a third of the time and talks to better prospects. That is the entire game, played on one street.
Tier 3: Who owns it, and are they a buyer?
The best-looking roof in the world is a bad target if there's no buyer behind the door. Property records, mostly free through county assessor and recorder sites and consolidated by various property-data platforms, give you the buyer-side signals.
What to pull and how to read it:
Owner-occupied vs. absentee. Compare the property address to the tax-bill mailing address. If they differ, it's likely a rental or second home. Absentee owners convert differently — slower decisions, more price sensitivity, sometimes no urgency at all because they don't live under the roof. Not a disqualifier, but it changes your pitch and your odds. Some owner-occupied-only campaigns will simply filter absentees out.
Year built. This is your single best free proxy for original-roof age. A house built in 2003 with no permit history of a re-roof has a roof that is plausibly 20-plus years old (if original) — squarely in replacement territory for asphalt. A house built in 2019 almost certainly has a roof with a decade-plus of life left. Year built isn't roof age — roofs get replaced, additions happen — but combined with imagery it's powerful.
Last sale date and price. Recent buyers (within ~18 months) are statistically poor roof-replacement prospects unless storm-driven — they just spent their cash on the purchase, and a roof that passed inspection during the sale rarely gets touched soon after. Long-tenure owners (10-plus years) who've been deferring maintenance are riper.
Permit history, where available. A re-roof permit pulled in 2016 tells you that roof is ~8 years old regardless of when the house was built — that's a definitive no for age-based targeting, and a meaningful data point even for storm work. Conversely, a house built in 2001 with zero roofing permits on file is a strong age signal.
Property value / improvement value. Helps you forecast ticket size and the owner's ability to pay. A higher-value home in a desirable area is both a bigger job and a more financeable customer.
Put Tiers 2 and 3 together and you can build a genuinely sharp picture from your desk: "24-square architectural roof, moderate streaking, built 2002, no re-roof permit, owner-occupied, owned since 2009, in a 1.5-inch hail footprint from this spring." That address gets driven to today. You knew almost everything before you turned the key.
Tier 4: Estimating roof age — and why it's a range, not a date
Roof age is the spine of prequalification, and it's where people most often fool themselves. You cannot know the exact installation date of a roof from your desk in most cases. Anyone who tells you they can read an exact roof age off a satellite photo is overselling. What you can do — and what's genuinely useful — is bracket the age into a range with a confidence level.
Three desk methods, used together:
1. Historical imagery comparison. Several mapping tools expose a time slider of past satellite/aerial captures. If you can see the roof go from old-and-streaked to bright-and-new between a 2014 and 2016 capture, you've bracketed the replacement to that window. The roof is ~8-10 years old. This is the most reliable desk method when the imagery history is good, but coverage and capture frequency vary a lot by location — rural areas may have years between usable captures.
2. Year-built minus permit history. As above: if the house is from 2003, there's no re-roof permit, and the imagery shows a continuously aged surface, the working estimate is "original roof, ~20+ years, high confidence it's due." If a permit exists, that resets the clock.
3. Surface-condition inference. An asphalt roof's appearance ages in somewhat predictable stages — granule loss, color fade, curling, streaking. A heavily weathered, blotchy, streaked surface reads as late-life even without a date. This is the softest signal and should never stand alone, but it corroborates the other two.
The honest output of all this is something like: "Roof age 16-21 years, high confidence it's past mid-life." Not "this roof is 18 years old." That range is enough to make a routing decision. The typical service life of an asphalt shingle roof runs roughly 15-25 years depending on product, ventilation, and climate, with 3-tab on the shorter end and laminate/architectural longer. A roof whose estimated range overlaps that failure window is worth a visit; a roof comfortably below it usually isn't, absent a storm.
Why the range framing matters for your reps and your liability: if you train reps to believe the desk gave them an exact age, they'll walk up to a door and say something they can't back up. Train them on ranges and probabilities. "Our records suggest this roof is likely in its replacement window, and a free inspection will confirm it" is true, defensible, and sets up the inspection as the value-add it should be.
Tier 5: Modeling storm exposure per roof (not per region)
Tier 1 told you a storm hit the area. Tier 5 is the harder, more valuable question: was this specific roof under the damaging part of the storm? This is where regional storm history turns into a per-address signal, and it's where most companies either guess or pay an adjuster's tool to find out one address at a time.
The physics: hail and damaging wind are spatially tight and uneven. A hail core might be a mile wide and ten miles long, with the most damaging stones concentrated in a narrow band. Wind damage clusters by exposure direction, terrain, and microbursts. Two houses three streets apart can have completely different damage realities from the same storm. Regional reports flatten all of that into a single dot on a map. Per-address modeling — using radar-derived hail size estimates, storm track data, wind field reconstruction, and the roof's own characteristics — tries to recover the resolution that the regional report threw away.
What per-roof storm modeling considers:
- Estimated maximum hail size at that exact location from radar-derived products (MESH and similar), rather than the nearest spotter report alone.
- Number of significant impacts over time — accumulated exposure across multiple events, which is what turns a borderline roof into a failed one.
- Wind exposure given storm track, gust estimates, and the roof's orientation and pitch.
- The roof's own vulnerability — age, material, and condition modulate how a given storm translates into actual damage. The same storm does more to an old 3-tab than a new architectural roof.
The output you want is a probability, not a promise: "this roof had an elevated likelihood of functional hail damage given a modeled 1.6-inch max hail size and an estimated 17-year-old asphalt surface." That's a forecast — odds, not proof. The roof still has to be inspected to confirm. But it lets you rank an entire storm footprint by likelihood instead of knocking it door by door.
Where RoofPredict fits in this stack
Doing Tiers 4 and 5 well, at scale, by hand is the bottleneck. Pulling historical imagery for one roof is doable; doing it for 4,000 addresses across a storm footprint, cross-referencing year-built and permits, and reconstructing per-roof hail exposure is a full-time job you don't have. This is the specific gap RoofPredict was built to close.
RoofPredict takes a list of addresses — your service area, a storm footprint, or your own existing CRM and mailing list — and returns, per house, a roof-age range estimated from aerial imagery plus a storm-exposure model for that specific roof. Instead of a single regional storm dot, you get each roof ranked by how likely it is to be due: the ones the storm physically wore out, and the ones simply aging out of their service life. It enriches your own list rather than selling you someone else's leads, so the prospects stay yours and your CRM gets smarter.
What that does to the workflow on this page: Tiers 4 and 5 stop being manual desk labor and become a sorted list. Your dispatcher opens the morning with addresses already ranked, and the rep's day is built from the top of that ranking down. The honest limits matter and we state them plainly: roof age comes back as a range, not an install date, and storm exposure is a probability, not a guarantee of damage — the inspection still decides. It moves the line on which roofs are worth driving to; it doesn't replace the ladder. Used that way, it directly attacks the number that runs your business — windshield time spent on roofs that were never due — which is what pulls customer acquisition cost down and makes pipeline predictable instead of streaky.
The reason it lowers CAC isn't magic, it's arithmetic. If your reps currently close 1 in 8 inspections and a better-sorted list moves them to 1 in 5 on the same number of stops, your cost per acquired customer drops by roughly 38% with zero new spend on labor or leads. That's the whole pitch, and it's just the stack on this page automated for the two tiers that are too slow to do by hand.
Building the score: turning signals into a go/no-go
Signals are useless until they roll up into a single decision a dispatcher can act on in five seconds. Here's a simple, defensible scoring model you can run in a spreadsheet today, then automate later. Adjust the weights to your market — a pure storm market weights exposure heavily; a retail replacement market weights age.
Score each address 0-100 across three buckets and apply a go/no-go threshold.
Roof bucket (0-50 points):
- Estimated age range overlaps the 15-25 year failure window: up to 30 pts (the deeper into the window, the higher)
- Visible condition cues (streaking, prior patch, granule loss): up to 10 pts
- Material is asphalt (your wheelhouse): 10 pts; specialty material: 0 and flag for specialist
Storm bucket (0-30 points) — for storm campaigns:
- Modeled per-roof hail size at/above your threshold: up to 20 pts
- Accumulated multi-event exposure: up to 10 pts
- (For pure retail campaigns, redistribute these 30 points into the roof and buyer buckets.)
Buyer/value bucket (0-20 points):
- Owner-occupied: 6 pts
- Tenure over ~7 years (not a recent buyer): 6 pts
- Forecast ticket size / property value above your route median: up to 8 pts
Decision thresholds (example):
| Total score | Action |
|---|---|
| 70-100 | Priority drive — top of route, today |
| 50-69 | Drive if it's on the way or fills a route gap |
| 30-49 | Mail/call only; don't spend a truck roll yet |
| 0-29 | Suppress — do not drive |
The specific numbers matter less than the discipline. The point is that a score below your threshold means the rep does not go there, full stop, and that rule survives a slow week when reps want to pad their stop count with easy-to-reach long shots. Cheap stops on bad addresses are the most common way a process like this gets quietly abandoned.
A worked end-to-end example
Address: 1428 Sycamore. Storm campaign, neighborhood took 1.6-inch hail nine weeks ago.
- Imagery: 26-square architectural asphalt, moderate streaking, one prior patch on the rear slope, walkable pitch, simple gable-and-hip. Roof bucket: age range modeled 16-20 yrs (28) + condition cues (8) + asphalt (10) = 46/50.
- Storm: modeled max hail 1.6 in, one prior 1-inch event two years back. Storm bucket: size (18) + accumulation (6) = 24/30.
- Buyer: owner-occupied, owned 11 years, property value above route median. Buyer bucket: 6 + 6 + 7 = 19/20.
- Total: 89/100 → Priority drive, top of route.
Contrast: 1502 Sycamore, four doors down. Newer architectural roof, uniform and bright in imagery, built 2018, owned since 2019. Storm modeled the same 1.6 in, but the roof is young and resilient. Roof bucket ~12, storm bucket ~14 (young roof discounts the exposure), buyer bucket ~12. Total ~38 → mail only, don't drive. Same street, same storm, opposite decision — and the rep never wastes a climb on 1502.
From scored list to driving route
A scored list is still not a plan. The last mile is turning it into an efficient route, because a perfect target 40 minutes away can be worse than a good target you pass on the way to three other good targets. Routing is where windshield time gets won or lost a second time.
Principles for building the route off your scores:
- Cluster first, score second within clusters. Group priority addresses by geographic density. A tight cluster of seven 70+ addresses beats one scattered 90 across town. Drive the dense pockets.
- Sequence to minimize backtracking. Order stops so the rep flows through a neighborhood rather than crisscrossing it. Any decent route-optimization tool does this; even ordering by street within a cluster helps.
- Fill gaps with mid-scores. When two priority clusters are 12 minutes apart, the 50-69 addresses along that drive are your gap-fillers. They cost almost nothing extra because the rep is already passing them.
- Time-box the route. Build a realistic day — a storm canvasser might run 25-40 doors of pre-qualified targets; a retail inspector might run 5-7 scheduled inspections. Don't overstuff; an over-long route just means the bottom stops never happen and your sequencing was for nothing.
- Front-load the best. Put the highest-probability, highest-value stops early, when the rep is fresh and the day has slack to spend extra time closing.
A dispatcher who hands a rep a clustered, sequenced, pre-scored route has done more for that rep's close rate than any sales training. The rep's job becomes "go here, then here, then here, and you'll like what you find at each one."
Prequalifying for retail and age-based campaigns (no storm required)
Most of what's above leans storm because that's where the urgency and the volume usually are, but the same machine runs for retail replacement work — the kind that doesn't depend on a hailstorm to exist. In a retail campaign you simply pull the storm bucket out of the score and redistribute its weight onto roof age and buyer signals. The logic is identical: do the cheap desk work, rank the addresses, drive the best ones.
The retail play is, in some ways, a steadier business than chasing storms. Storm work is feast or famine — you're slammed for ten weeks after a big hail event and starving the rest of the year, and you're competing with every out-of-town chaser who follows the radar into your market. Age-based replacement demand, by contrast, is always there. Roofs installed during the housing booms of the early 2000s are aging into their replacement window continuously, neighborhood by neighborhood, whether or not the sky cooperates. A contractor who can identify those roofs from a desk has a pipeline that doesn't go quiet between storms.
Here's how the desk work shifts for retail:
- Year built becomes your lead signal. Find the subdivisions in your service area built 18-24 years ago and you've found streets where a large share of original roofs are now due. Tract neighborhoods are gold here because the homes went up within a year or two of each other, so an entire street tends to age out together. Knock the right subdivision at the right time and you can re-roof a dozen houses on one street over a season — and each signed job becomes a yard sign and a referral engine for the next.- Permit history is your disqualifier. In a retail campaign you're not racing a storm, so take the time to check permits and suppress the houses that already re-roofed. Nothing wastes a retail rep's day faster than pitching a replacement to someone whose roof is six years old.- Imagery confirms the age story. Historical captures showing a continuously aged, streaked surface on a 2002 tract home with no re-roof permit is about as strong an age signal as you'll get from a desk. That address is a near-certain late-life roof.- Buyer tenure and life-stage matter more. Without storm urgency, the buyer's readiness drives the deal. Long-tenure owners who've deferred maintenance, and owners preparing to sell (a new roof is a strong resale lever), are your warmest retail targets.
The same scoring sheet handles both modes — you're just turning dials. A shop that runs storm campaigns when storms come and falls back to age-based retail canvassing in the quiet stretches has smoothed out the single worst feature of the roofing business: its seasonality. Prequalification is what makes the retail fallback efficient enough to be worth doing, because blindly knocking old subdivisions without scoring them is the same low-yield grind as blindly knocking a storm footprint.
The door conversation that a good prequalification sets up
Prequalification doesn't end when the rep parks. The desk work changes what happens at the door, and reps who don't adjust their pitch leave the advantage on the table. When you already know the roof's likely age range, its material, its complexity, whether there was a prior repair, and the storm story, you walk up as someone who did their homework rather than a stranger guessing.
What that sounds like at the door, staying inside the legal lines from the next section:
- Lead with specific, true observations, not a sales script. "I was reviewing roofs in this neighborhood — yours looks like it's likely in the range where shingles start failing, and I noticed what might be a prior repair on the back slope. Mind if I take a quick look and document the condition for you?" That's specific, honest, and it positions the free inspection as a service, not a foot in the door.- Speak in ranges and likelihoods, never certainties. "Our records suggest this roof is probably in its replacement window" is defensible. "Your roof is 19 years old and shot" is a claim you can't back up and a credibility risk the moment the inspection says otherwise.- Let the inspection confirm the desk. The whole point of ranking from the desk is that by the time you're on the ladder, you mostly expect what you find. The inspection becomes the documentation step that earns trust and produces the estimate, not a fishing expedition.
A rep armed with pre-drive intelligence converts better not because they're a slicker closer but because every interaction starts from a place of competence and specificity. The homeowner can tell the difference between someone reading a script and someone who clearly knows their roof. That difference is worth more than any rebuttal training.
What pros get wrong
After watching a lot of these operations, the failure modes are remarkably consistent. Avoiding them is most of the value.
Treating the regional storm report as per-roof truth. Knocking an entire ZIP because "the area got hail" wastes most of your effort on roofs that sat outside the damaging core. The area got hail; many individual roofs didn't get damaged. Per-roof modeling exists precisely to fix this.
Confusing roof age range with a date. Reps who think the desk handed them an exact age make claims they can't support and lose credibility when the roof turns out younger than they implied. Always speak in ranges and likelihoods. The inspection confirms; the desk only ranks.
Ignoring the buyer axis. Beautiful old roofs on properties owned by absentee LLCs that won't return a call will eat your season. Score the buyer as well as the roof.
Skipping prequalification when the schedule is light. The temptation on a slow day is to send reps to "just go knock something." That's exactly when discipline matters most, because cheap, low-odds stops feel productive and aren't. A light day is for working your mid-score mail list and tightening next week's routes, not for burning fuel on suppressed addresses.
Letting the data go stale. Imagery captures age. A roof that was "new" in the 2019 capture is five years older now. Storm footprints are time-stamped — a footprint you worked hard six months ago is picked over. Refresh your inputs; a prequalification stack is a living system, not a one-time list buy.
Over-trusting condition cues from imagery. Streaking is often just algae, not age or damage. Shadows read as deterioration. Imagery condition is corroborating evidence, never a sole basis. When imagery and records disagree, trust records and let the inspection break the tie.
No feedback loop. The reps who climb the ladders know which desk calls were right and which were wrong. If you never feed inspection outcomes back into your scoring weights, your model never improves. Log every visit's outcome against its pre-drive score and tune quarterly.
Keeping it legal: the claims and insurance line
Much of this work touches storm damage, which means it touches insurance, which means there are bright lines you do not cross. These rules vary by state, and several states regulate roofing contractors' conduct around claims specifically, so confirm your own state's law — but the general posture is consistent and worth burning into every rep's brain.
A roofing contractor may: inspect and document a roof's condition, photograph and describe damage they observe, write a repair or replacement estimate for their own scope of work, and state facts about what that scope includes. That's your lane, and it's a wide one.
A roofing contractor may not, for a fee: negotiate or adjust the homeowner's insurance claim, interpret what the policy covers, promise that a claim will be approved or that insurance will pay, waive or absorb the homeowner's deductible, advertise a "free roof," or represent the homeowner against their insurer. Those activities can constitute unlicensed public adjusting or insurance fraud depending on the state, and they're how contractors lose their licenses.
So in your prequalification and at the door: you can say a roof appears to be in its replacement window, that the area experienced a significant storm, and that you'll document the condition and provide an estimate. The homeowner files their own claim. The insurer decides coverage and payout. You never promise an outcome, never make the deductible disappear, never advertise the roof as free. Prequalification keeps you safely in the document-and-estimate lane because everything it produces is a target and a probability, not a representation about anyone's insurance. Keep it there.
A 30-day rollout plan
If you're starting from "we just knock and drive," here's how to install this without stalling the business.
Week 1 — Define and instrument. Draw your service polygon. Pull storm history for it. Pick your imagery and property-record sources. Build the scoring spreadsheet with weights tuned to your market (storm-heavy vs. retail). Decide your go/no-go threshold.
Week 2 — Score a pilot area. Take one or two neighborhoods you'd normally knock blind. Score every address. Generate a priority list and a suppress list. Don't change rep behavior yet — just score.
Week 3 — Run parallel and measure. Send one rep the scored route and let another work the area the old way. Track stops, inspections, signed jobs, and miles for both. You're looking for the scored rep to need fewer stops per signed job.
Week 4 — Tune and scale. Feed the pilot's actual outcomes back into your weights. Where did the score say go and the roof was a no? Adjust. Then roll the scored-route process to the whole team, and decide where manual desk work is your bottleneck — that's where automating Tiers 4 and 5 (roof-age range plus per-roof storm exposure) pays for itself.
The metric that proves it worked is not "more inspections." It's fewer miles and fewer stops per signed job, and a close rate that climbs because every climb starts from a better address. When a rep's day is built from the top of a ranked list down, the math of your whole company changes: same payroll, more signed roofs, lower cost to acquire each one, and a pipeline you can actually forecast because you know how many qualified roofs are sitting in your footprint waiting to be driven to.
That's what prequalifying before you drive out really buys you. Not a clever trick at the door — a fundamentally cheaper, more predictable way to find the roofs that were going to say yes anyway, and stop paying to discover the ones that never would.
FAQ
Can I tell the exact age of a roof from aerial imagery?
No, and you shouldn't claim you can. What you can do is estimate an age range with a confidence level by comparing historical imagery captures, cross-referencing the home's year built against any re-roof permits, and reading surface-condition cues. The honest output is something like 'roof age 16-21 years, high confidence it's past mid-life,' which is enough to make a routing decision without overstating what you know.
What hail size actually damages an asphalt shingle roof?
As a rough field guide, hail around 1 inch (quarter-size) can cause functional damage to older or brittle shingles, 1.25 inches and up commonly causes bruising and mat fracture, and 1.75 inches and larger frequently leads to full replacements. Roof age matters as much as stone size, though: an aged shingle can fracture from a stone that bounces harmlessly off a new roof. Always treat these as thresholds for where to look, not guarantees of what you'll find.
Where do I find free storm history for my service area?
The National Weather Service Storm Prediction Center maintains a public storm reports archive, and NOAA's Storm Events Database lets you pull historical hail and wind events by county going back decades. These give you event dates and estimated hail sizes or wind speeds. Remember they're area estimates from spotters and observers, not proof that any specific roof was damaged, so use them to decide which neighborhoods are worth modeling, not to conclude a given roof is a buyer.
Isn't prequalifying the same as buying leads?
No. Buying leads means paying for someone else's contact, often shared with competitors. Prequalifying means scoring addresses in your own service area or your own CRM and mailing list so you know which ones to drive to first. The prospects stay yours, the data enriches your existing list, and you're optimizing where your reps spend their hours rather than purchasing a name that three other contractors also bought.
How does prequalification actually lower customer acquisition cost?
It's arithmetic, not magic. Your reps have a fixed number of productive hours, and every hour spent driving to a roof that was never due is wasted labor cost. If a better-sorted list moves a rep from closing 1 in 8 inspections to 1 in 5 on the same number of stops, your cost per acquired customer drops by roughly a third with no new spend on labor or leads. You're not making reps better closers; you're sending them to better addresses.
What's the difference between regional storm data and per-roof storm modeling?
Regional data tells you a storm hit an area, flattening a complex, patchy hail core into a single dot on a map. Per-roof modeling uses radar-derived hail size estimates, storm track and wind field data, and the roof's own age and material to estimate the damage likelihood at one specific address. Because hail cores are tight and uneven, two houses three streets apart can have very different damage realities from the same storm, which regional data can't capture and per-roof modeling tries to recover.
How does RoofPredict fit into a prequalification process?
RoofPredict automates the two slowest desk steps: estimating a roof-age range from aerial imagery and modeling storm exposure per individual roof. You feed it a list of addresses, your service area, a storm footprint, or your own CRM, and it returns each house ranked by how likely it is to be due. The honest limits are that roof age comes back as a range, not an install date, and storm exposure is a probability, not proof of damage, so the inspection still decides. It moves the line on which roofs are worth driving to; it doesn't replace the ladder.
Can I tell a homeowner their insurance will cover the roof?
No. A contractor can inspect, document damage, and write an estimate for their own scope, but for a fee they cannot negotiate or adjust the claim, interpret coverage, promise approval or payout, waive or absorb the deductible, or advertise a free roof. Those can constitute unlicensed public adjusting or fraud depending on your state. Stay in the document-and-estimate lane: the homeowner files the claim and the insurer decides coverage and payment. Confirm your own state's roofing and adjusting laws, since several states regulate this specifically.
Does prequalification work for retail replacement, or only storm work?
Both. For storm work you weight per-roof storm exposure heavily. For retail, age-based replacement you drop the storm bucket and lean on roof-age range, year built minus permit history, and visible condition cues, with buyer signals like owner-occupancy and tenure. The same scoring framework works; you just redistribute the weights toward age and buyer signals when there's no recent storm driving the campaign.
What metric proves my prequalification process is working?
Not 'more inspections.' The right metric is fewer miles and fewer stops per signed job, plus a rising close rate because every climb starts from a better address. Run a scored route against an old-school blind-knock route for a couple of weeks and compare stops, signed jobs, and miles. If the scored rep needs fewer stops per signed job, the process is working. Then feed every visit's outcome back into your scoring weights so the model keeps improving.
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 Prediction Center Storm Reports — spc.noaa.gov
- NOAA Storm Events Database — ncdc.noaa.gov
- National Weather Service Severe Weather Definitions — weather.gov
- IBHS Hail Research and Impact Resistance — ibhs.org
- NRCA Roofing Industry Resources — nrca.net
- OSHA Fall Protection in Construction (Subpart M) — osha.gov
- International Residential Code (ICC) — iccsafe.org
- U.S. Census Bureau Building Permits Survey — census.gov
- FTC Guidance for Businesses on Truthful Advertising — ftc.gov
- NAIC Consumer Insurance Resources — naic.org
- Texas Department of Insurance Roofing and Public Adjuster Rules — tdi.texas.gov
- Verisk Xactimate Property Estimating — verisk.com
- U.S. Bureau of Labor Statistics: Roofers — bls.gov
- RoofPredict — roofpredict.com
Related Articles
How to Improve Your Roofing Inspection-to-Close Conversion Rate
The inspection is where you build the case and win or lose the deal. Here is the practitioner's system for turning more inspections into signed contracts without spending another dollar on leads.
The Most Profitable Types of Roofing Jobs (and How to Win More of Them)
Not all roofing work pays the same. Here is a margin-by-margin look at which roofing jobs actually make money, which ones quietly bleed you, and how to land more of the good ones.
The Pre-Call Qualification Script That Stops Roofing Reps From Burning Hours on Dead Roofs
A practitioner's pre-call qualification script for roofing sales — the questions, branching logic, disqualifiers, and scoring that decide who gets a truck roll and who gets a polite pass.