Skip to main content

How to Use Data to Skip New Roofs When Door Knocking (And Knock the Ones That Are Actually Due)

Emily Crawford, Home Maintenance Editor··31 min readRoofing Lead Generation
On this page

A canvasser walks a street of forty houses. Maybe eight of those roofs are worth a conversation today. The other thirty-two are either three years old, already under contract with another crew, or so far from replacement that the homeowner will slam the door before you finish your opener. If your rep knocks all forty in order, you burned roughly forty minutes of daylight to find the eight that mattered, and you taught your rep that door knocking is mostly rejection. Do that for a season and you lose the rep along with the street.

The whole game in residential canvassing is density of qualified doors per hour. A roof that was replaced two years ago is not a qualified door. It is a hard no wearing a friendly face, and every minute spent on it is a minute stolen from a roof that is genuinely aging out or got chewed up by the last hailstorm. The reps who out-earn everyone on your team are not knocking harder. They are knocking a pre-filtered list where the new roofs have already been removed before they ever lace up.

What follows is the actual mechanics of removing new roofs from a canvass: which data sources tell you a roof's age before you set foot on the street, how to combine them so you are not fooled by a single signal, how to weave storm data on top so you are knocking the worn roofs and the old roofs at the same time, and how to keep the whole thing legal and honest. None of this requires a data science team. Most of it you can stand up in a week with a spreadsheet, a county website, and a willingness to actually look at the imagery.

Why "skip the new roofs" is the highest-leverage filter you have

Most canvassing advice obsesses over the pitch, the rebuttal, the close. Those matter, but they are downstream. The single biggest lever on a canvasser's hourly output is the quality of the list they are working. You can have a mediocre pitch on a great list and out-produce a great pitch on a random street.

Think about the math of a door-knock day. A productive residential rep makes somewhere between 60 and 100 contacts in a full day, and "contacts" here means an actual human answering, rather than doors merely knocked. On a cold suburban street, answer rates run 20 to 35 percent depending on time of day and season, so to get 80 contacts you are physically approaching 250 to 300 doors. Every one of those approaches costs walking time, recovery time, and a little bit of your rep's morale.

Now split those doors into three buckets:

  • Disqualified by roof age — the roof is new enough that replacement is years away. No amount of pitch fixes this. Knocking it is pure waste.
  • Already in play — there is a sign in the yard, a dumpster in the driveway, a competitor's tarp on the back slope. The decision is made; you are late.
  • Genuinely qualified — the roof is old enough to be in the replacement window, or it is storm-worn, and there is no sign anyone else has gotten there.

On an average street, the disqualified-by-age bucket alone is frequently 40 to 60 percent of the houses. In a subdivision built in one wave fifteen to twenty years ago, almost the whole street can flip from "too new" to "all due" in a two-year span, which is exactly why timing the neighborhood matters as much as picking it. If you can reliably strip the too-new roofs out before the rep walks, you roughly double the density of qualified doors without changing anything about the pitch. That is the leverage. A 50 percent cut in wasted approaches is the equivalent of nearly doubling your rep count, except you pay nothing extra and your reps stop burning out on no-after-no-after-no.

The reason most teams do not do this is not that the data is hard to get. It is that nobody owns the list. The rep shows up, gets handed a neighborhood or a polygon on a map, and starts walking. The filtering never happens because it is nobody's job. Make it somebody's job and you change the economics of the whole team.

The signals that tell you a roof's age before you knock

There is no single database that hands you "this roof was installed in March 2018" for every house. Anyone who tells you they have that is selling you confidence they do not actually possess. What you have instead is a set of imperfect signals, each of which is partly right. Used alone, every one of them will fool you. Layered together, they get you to a defensible roof-age range for most addresses, and a range is all you need to decide whether to knock.

Here are the signals worth your time, roughly in order of how much they tell you.

Aerial and satellite imagery (the workhorse)

The single most useful thing you can do is look at the roof from above. A roof's surface tells its age more honestly than the homeowner often will. From overhead imagery you can read:

  • Granule loss and color fade. A new asphalt shingle roof is dark and uniform. As it ages, granules wash off, the surface lightens, and you start to see mottling and streaking. A roof that looks blotchy gray-and-black from above is well into its second half of life.
  • Color contrast against neighbors. In a subdivision where everyone got the same roof the same year, the one bright, crisp, dark roof on the street is almost always a recent replacement. Conversely, the faded ones are the originals. This relative read is often more reliable than judging any single roof in isolation.
  • Patches and partial replacements. A rectangle of mismatched shingles means a repair, often after a leak or a wind event, which is a buying signal of its own.
  • Surface defects. Streaking from algae, moss in the valleys, blistering, and obvious sagging all read from above and all point to an older roof.
  • Material type. Three-tab versus architectural shingle, tile, metal, wood shake. Material narrows both the likely age band and the replacement economics.

The catch with imagery is freshness. The picture you are looking at may be one, two, even three years old depending on the provider and the region. A roof that looks pristine in the imagery could have aged noticeably since the photo, and a roof that was replaced last month still shows the old roof if the imagery predates the job. Always check the capture date if your provider exposes it, and treat the imagery as "as of" that date, not today.

Building permits (the closest thing to ground truth)

When a roof is replaced legally, a permit is usually pulled. That permit is a public record in most jurisdictions, and it is the closest thing you will get to a real installation date. A reroof permit from eighteen months ago is a near-certain "skip this house" signal.

Permit data is gold, with three big caveats:

  1. Coverage is uneven. Some counties put permits online with a clean searchable interface; others make you visit an office or file a records request. Some bundle reroofs into generic "building alteration" permits that are hard to filter. Rural areas may not require permits for reroofs at all.
  2. Not every reroof is permitted. Plenty of work happens without a permit, especially small jobs and especially from less scrupulous operators. So the absence of a permit does not prove a roof is old. The presence of a recent reroof permit is strong; the absence is weak.
  3. Lag and matching. Permits take time to post, and matching a permit record to a specific address and parcel takes a little data hygiene. Names, parcel numbers, and street formats vary.

Used correctly, permits are a one-way filter: a recent reroof permit reliably tells you to skip; no permit tells you almost nothing.

Real estate and parcel records

County assessor and parcel data, plus listing history, give you context that bounds the roof age:

  • Year the house was built. A roof cannot be older than the house. For a house built in 2021, the original roof is four years old and you should skip it unless there is storm damage. The year built is the single most reliable hard floor on roof age, and it is in every assessor record.
  • Last sale date and listing photos. Homes often get a new roof right before sale, or the inspection forces one. Listing photos, when you can find them, sometimes show the roof condition at the time of sale and occasionally mention a recent reroof in the description.
  • Neighborhood build-out pattern. Tract subdivisions go up in waves. If you know the dominant build year for a street, you know roughly when the original roofs hit replacement age, typically 15 to 25 years for architectural asphalt depending on climate and installation quality.

Storm and hail history

This is the signal that turns "old roof" targeting into "worn roof" targeting, and it deserves its own treatment, which it gets below. For now, hold the idea: a roof's calendar age is only half the story. A four-year-old roof that took 1.75-inch hail last spring may be a more qualified door than a twelve-year-old roof that has never seen a real storm. Storm history lets you find the roofs that aged ten years in one afternoon.

The homeowner's own tells (verified on the door, not before)

None of the above replaces what you learn standing on the porch. A roof that photographs old might have been redone last month. The correct play is to use data to decide which doors to knock, then verify condition with your own eyes and the homeowner's own words once you are there. Data sets the route; the door confirms the truth.

How the signals fool you when you use them alone

Every one of these signals has a failure mode, and knowing the failure modes is what separates a usable list from a list that quietly wastes your reps' time.

Imagery alone fools you on freshness. Stale imagery makes new roofs look old and recent reroofs invisible. If you target purely off a two-year-old picture, you will knock roofs that have already been replaced and you will miss roofs that have aged into the window since the photo.

Permits alone fool you on coverage. If you treat "no permit found" as "old roof," you will get burned in any area with weak permit enforcement, because plenty of recent reroofs simply were not permitted. Permits are great at confirming new; they are useless at confirming old.

Year-built alone fools you on replacements. A house built in 1995 might be on its second or even third roof. Year-built gives you a floor, never a current age. Knocking every pre-2005 house and assuming the roof is original is how you end up pitching a homeowner who replaced their roof two years ago and is now annoyed.

Storm data alone fools you on exposure. A hail swath on a map does not mean every roof under it was damaged. Tree cover, roof pitch, shingle type, and the storm's actual intensity at that specific address all matter. A polygon over a zip code is a starting hypothesis, not a damage report.

The fix is triangulation. No single signal decides; you stack them. A house gets a high score when multiple independent signals agree: the imagery looks faded, the year built supports an aging roof, there is no recent reroof permit, and the address sits inside a meaningful storm swath. When signals disagree, that house drops down the list or gets a manual look. This is the core discipline, and it is exactly how the better targeting tools work under the hood, including how a per-roof model should be built.

A worked example: scoring one street

Let me make this concrete with a single block. Suppose you are looking at a street of twenty homes in a subdivision that mostly went up in 2006. Here is how a few representative houses score once you stack the signals.

House Year built Imagery read Recent reroof permit? Storm exposure Verdict
102 2006 Faded, streaked, original-looking None found In 2024 hail swath Knock first. Old + worn + open.
104 2006 Crisp, dark, stands out from neighbors Reroof permit, 14 mo ago In swath Skip. Recently replaced.
106 2006 Faded like 102 None found In swath Knock. Original roof, storm-hit.
108 2021 (infill build) Dark, new None (too new to matter) In swath Skip unless visible damage.
110 2006 Moderate fade, one patched section None found Edge of swath Knock, lower priority. Patch hints at prior issue.
112 2006 Faded Reroof permit, 6 yr ago In swath Knock, mid priority. 6-yr roof, but storm-hit; worth a look.

Notice what the stacking does. House 104 looks like a perfect target on year-built alone (2006, should be due) but the permit kills it instantly. House 108 sits in the same storm swath as everyone else but its build year says skip. House 112's old permit means it is not original, yet the storm exposure keeps it on the list at lower priority. You cannot make any of these calls from one signal. You can make all of them in seconds once the signals sit side by side.

That is the entire trick. You are not predicting the future. You are removing the obvious skips and ranking what remains so the rep walks the street in priority order instead of house-number order.

Building the workflow with tools you already have

You do not need to buy anything to start. Here is a build-it-yourself version that a sales manager can stand up in a few days, followed by where automation earns its keep.

Step 1: Pick the target area with intent

Do not pick neighborhoods at random or by gut feel about "nice houses." Pick them by age and event. The two best triggers are:

  • A subdivision that has aged into the window. Find tracts built 15 to 22 years ago where the original roofs are statistically due. County build-year data or even a quick look at when a neighborhood platted will get you there.
  • A storm footprint. After a verified hail or wind event, the affected area is your map. Pull the storm reports and outline the swath.

Step 2: Pull the roster of addresses

Get the list of every address in your target polygon with its parcel data: address, year built, last sale date, lot, and owner-occupancy if available. County assessor portals, GIS sites, and parcel data vendors all provide this. Owner-occupancy matters because owner-occupied homes convert far better than rentals on a roofing pitch.

Step 3: Strip the obvious skips

Run two hard filters first, because they are cheap and they remove the most waste:

  1. Year built too recent. Drop anything built in roughly the last 8 to 10 years unless it sits in a storm swath. A young roof with no storm exposure is not worth a knock.
  2. Recent reroof permit. Pull reroof permits for the area for the last several years and drop every matched address. This is the cleanest "new roof" signal you have.

These two filters alone often remove a quarter to a half of the list before you have looked at a single aerial photo.

Step 4: Read the imagery on what remains

Now look at the survivors from above. You can do a surprising amount with free or low-cost aerial imagery: rank each roof as new, mid-life, or aged, and flag patches, streaking, and obvious damage. Note the imagery capture date so you know how stale your read is. For a few hundred houses a person can do this in a few hours; this is the most labor-intensive manual step and the first place automation pays off.

Step 5: Overlay storm exposure

If your trigger was a storm, mark which surviving addresses sit inside the meaningful part of the swath versus the edges. Center-of-swath, larger-hail addresses go to the top.

Step 6: Score and sequence the route

Give each surviving house a simple score. A workable starting rubric:

  • Aged roof read from imagery: +3
  • In the meaningful storm swath: +3 (edge of swath: +1)
  • Year built supports an old roof: +1
  • Visible patch or prior repair: +1
  • Recent reroof permit: disqualify
  • Built in last 8 years and no storm: disqualify

Sort by score, then sequence the high-scorers into a walkable route so the rep is not crisscrossing the neighborhood. Route order matters: a rep who walks in priority-and-geography order covers more qualified doors per hour than one zigzagging back and forth.

Step 7: Hand the rep a list, not a neighborhood

The deliverable is a sequenced list of pre-qualified addresses with a one-line note on each ("aged roof, in swath" / "original 2006 roof, patched section"). The rep verifies on the door and logs the outcome. That outcome data feeds back into the next list.

Where this manual build breaks down

The homemade version works and it is far better than knocking blind. It breaks down on three fronts as you scale: the imagery read is slow and subjective and depends on which human is looking; permit data is a pain to pull and match across counties; and storm exposure done by hand is a crude polygon, not a per-roof assessment. Those three pain points are exactly where dedicated data earns its cost, which is the next section.

Where RoofPredict fits: which roofs are due, modeled per roof

Everything above is the manual version of one idea: figure out which roofs are due and which got worn out, then knock those and skip the rest. That is the problem RoofPredict is built to solve at scale, so you are handing reps a ranked list instead of a neighborhood and a hunch.

What it actually does is two things, stacked. First, from aerial imagery it estimates a roof-age range per address, house by house, rather than asking you to eyeball every roof yourself. A range, not a date, on purpose, because the honest truth is that imagery and public records cannot pin an exact install month for every home. "This roof is likely 14 to 19 years old" is enough to decide whether to knock, and it is far more defensible than a false-precision "installed 2009" you cannot back up. Second, it models storm physics per roof, taking the hail and wind that actually passed over a given address and translating that into how worn that specific roof likely is, instead of dropping a single polygon over a zip code and calling everyone inside it a lead.

Stack those two and you get the ranking that the manual workflow is trying to approximate by hand: the roofs that are aging out and the roofs the storm physically wore down, sorted so your crew knocks those doors first and walks past the three-year-old roofs entirely. It is the same triangulation logic from earlier, run per address across a whole territory in the time it would take a person to read one street.

A few honest limits, because the whole point of good targeting is not overselling it:

  • It ranks doors; it does not inspect roofs. The model tells you which addresses are most likely worn or aging out. Your rep still has to get on the porch, confirm the condition, and document what is actually there. Data sets the route; the inspection establishes the facts.
  • Roof age is a range, never a certificate. Treat it as a strong prior that points your reps at the right streets, not as proof of a roof's birthday.
  • Storm modeling is odds, not a damage report. It tells you a given roof was likely worn by a given event. It does not tell you a claim will be approved or that any specific shingle failed. Coverage is the insurer's call; documentation of conditions and an estimate is the roofer's job; the homeowner owns the claim. Keep those lanes clean and you stay on the right side of the rules.
  • It is a lead-ranking tool, not a lead-buying service. You are not purchasing somebody else's contacts. You are reordering your own canvass so the knocks land where they should.

Used the way it is meant to be used, it collapses Steps 3 through 6 of the manual workflow into a list your reps can walk, and it does the storm-per-roof part with more nuance than a hand-drawn swath ever could. It does not replace the rep, the pitch, or the inspection. It just makes sure none of those things get spent on a roof that did not need them.

Working storm data the right way (without overpromising)

Storm targeting is where the most money and the most trouble live, so it is worth being precise.

Find verified events, not rumors

Start with authoritative storm reports rather than "I heard it hailed over there." The National Weather Service and the Storm Prediction Center publish storm reports including hail size and wind estimates. Public hail-swath and radar-derived products give you the rough footprint. Use these to define where a real event happened and roughly how big the hail was.

Understand what hail size means for roofs

Hail damage to asphalt shingles becomes meaningfully likely as stone size climbs. Pea- and marble-sized hail rarely does functional damage to a sound asphalt roof. Once you get to roughly quarter-size (1 inch) and larger, the odds of bruising and granule loss climb, and golf-ball-size (1.75 inch) and up commonly causes the kind of damage worth documenting. Wind matters too: gusts strong enough to lift and crease shingles leave their own signature. Knowing the size lets you separate "worth a careful canvass" from "probably a nuisance storm."

A swath is a hypothesis, not a damage map

The single biggest error in storm canvassing is treating the whole swath as uniformly damaged. It is not. Within a footprint, intensity varies street to street; tree cover shields some roofs; pitch and orientation change exposure; and older, brittle shingles damage more easily than newer ones. This is precisely why per-roof modeling beats a flat polygon: it adjusts the odds for the conditions at each address instead of assuming everyone got the same beating.

Move while the event is fresh, but tell the truth

There is a real timing advantage to canvassing soon after a verified event, before competitors saturate the area and before homeowners forget the storm. But there is a hard line you do not cross: never present a forecast or a storm model as proof that a specific roof is damaged or that a claim will be paid. The honest framing is "there was a significant hail event over your neighborhood; it is worth having your roof looked at." The roofer documents conditions and provides an estimate. The insurer decides coverage. The homeowner owns and controls the claim. Stay in that lane and storm canvassing is both effective and clean.

What pros get wrong

A short tour of the mistakes that quietly drain canvassing teams, drawn from how the work actually plays out in the field.

Knocking by neighborhood instead of by roof. Handing a rep a polygon and saying "work this" guarantees they spend half their day on disqualified doors. The unit of targeting is the roof, not the subdivision.

Treating year-built as roof age. The most common rookie error. A 1998 house may be on its third roof. Year-built is a floor, not an age.

Trusting stale imagery as if it were live. A two-year-old aerial photo is a two-year-old photo. Recent reroofs are invisible in it and roofs at the edge of the window have aged since. Always note the capture date and treat it accordingly.

Assuming no permit means old roof. In areas with loose permitting, plenty of recent roofs have no permit on record. Use permits to confirm new, never to confirm old.

Carpet-bombing a storm swath. Treating every house under a hail footprint as damaged wastes reps on shielded and undamaged roofs and trains the neighborhood to tune out roofers. Rank within the swath; do not flatten it.

Overselling the storm. Telling a homeowner the data "proves" their roof is damaged or that a claim is guaranteed is both false and a fast way to draw a regulator's attention. Document conditions, provide an estimate, let the insurer decide, let the homeowner own the claim.

Never closing the loop. Reps log outcomes and nobody feeds them back into the list. Every "already replaced last year" a rep discovers on the door is a data point that should sharpen tomorrow's list. If outcomes die in a notebook, you keep making the same skips.

Confusing more doors with more sales. A rep bragging about 300 knocks on a bad list is less valuable than a rep doing 120 knocks on a filtered one. Measure qualified contacts and conversions, not raw door count.

A pre-knock checklist for the list owner

Before any street goes to a rep, the person who owns the list should be able to check every box:

  • Target area chosen by roof age or verified storm event, not by gut feel.
  • Full address roster pulled with year built and owner-occupancy.
  • Houses built in the last 8 to 10 years removed unless storm-exposed.
  • Recent reroof permits pulled and matched addresses removed.
  • Aerial imagery read on survivors; capture date noted.
  • Storm swath overlaid and intensity-ranked, if storm-triggered.
  • Each survivor scored and the list sorted by score.
  • Route sequenced for walkability, not score order alone.
  • One-line note per address so the rep knows why they are there.
  • Outcome-logging set up so the rep's findings feed the next list.

If you cannot check these boxes, your reps are knocking on roofs you have not earned the right to skip yet, which means they are knocking on new roofs by accident.

Metrics that tell you the filtering is working

You cannot manage what you do not measure, and the right metrics make the value of skipping new roofs obvious within a couple of weeks.

Metric What it tells you What good looks like
Qualified contacts per rep-hour Density of useful conversations Rising after you start filtering
"Already replaced" rate on the door How many new roofs slipped through Falling toward single digits
Inspections set per 100 knocks Whether the list is genuinely warmer Higher than your unfiltered baseline
Inspection-to-contract rate Whether targeting reaches real buyers Stable or up, never down
Cost per booked inspection True efficiency of the canvass Falling as waste is removed
Rep retention / morale Whether reps are getting wins Up, because rejection drops

The "already replaced" rate on the door is the cleanest single read on whether your new-roof filtering is working. Every time a rep knocks and the homeowner says "we did this last year," that is a new roof you failed to skip. Watch that number fall as your permit and imagery filtering tightens. If it is not falling, your data step is broken.

A word on baselines, because the metrics only mean something against a starting point. Before you change anything, spend two or three days logging an honest unfiltered baseline: have a rep work a normal neighborhood the way your team always has, and capture knocks, contacts, already-replaced rate, and inspections set. That baseline is the number every later improvement gets measured against. Without it, you will end up arguing about whether the filtering helped based on vibes, and vibes lose to whoever talks loudest in the morning meeting. With it, the comparison is a single line on a whiteboard and the argument ends.

Two metrics deserve a deeper note because teams routinely misread them.

The first is inspection-to-contract rate. When you start filtering hard, this number can briefly look flat or even dip, and a nervous manager reads that as failure. It is usually the opposite. As you set more inspections from a warmer list, you are pulling in some marginal homeowners who would never have gotten an inspection at all under the old random canvass, which can dilute the close rate even as total contracts climb. Watch total contracts and cost per booked inspection alongside the close rate, not the close rate in isolation, or you will talk yourself out of a working system.

The second is rep retention, which almost nobody measures and which may be the largest dollar value in the whole exercise. A canvasser who eats a wall of no-after-no on a bad list quits inside a few weeks, and the fully loaded cost of recruiting, onboarding, and ramping a replacement dwarfs the cost of any data tool. Filtering the new roofs out does not only raise output per rep; it changes how the day feels to the person doing it. A rep who knocks 120 pre-qualified doors and books real inspections goes home tired but winning. A rep who knocks 300 random doors and gets laughed off porches goes home defeated. The second rep is gone by month two. Cheaper data is, quietly, a retention program.

Handling the objections your filtered list creates

There is a subtle thing that happens when you tighten your targeting: the conversations on the door change, and your reps need to be ready for it. On a random canvass, most no-answers and brush-offs are about the homeowner not caring. On a filtered canvass, you are knocking people whose roofs genuinely are aging out or storm-worn, so the objections get more specific and more solvable. Prepare reps for the three that come up most.

"We already had someone look at it." On a good street after a storm, you are not the first roofer. This is not a dead end. The honest reply is to ask whether they have actually seen the documentation and an itemized estimate, and to offer a second look at no cost. Plenty of homeowners get a fast, sloppy once-over from the first crew and never see a real assessment. You are competing on thoroughness, not on being first.

"Our roof is fine, it's only a few years old." This one tells you your data did its job and the homeowner does not yet know what the storm did. The move is to separate calendar age from condition, gently: a newer roof can still take hail damage, and the only way to know is to look. You are not arguing with them about age; you are pointing out that age and storm wear are two different questions.

"How did you know to come here?" Some homeowners find targeted canvassing slightly unnerving, and you should have a clean, truthful answer ready. You looked at which neighborhoods were under the recent storm and which homes are at the age where roofs are commonly due, the same public storm reports and property records anyone can see. There is nothing to hide. Targeting based on public data and aerial views is ordinary, and reps who can explain it plainly come across as professionals rather than as somebody who bought a creepy list.

The broader point is that better targeting raises the caliber of the objection. You stop hearing "I don't need a roof" from people who genuinely do not, and you start hearing "someone already looked" and "is it really damaged" from people who are actually in the market. Those are objections you win with preparation. Train to them.

Climate and material change the replacement window

The replacement window is not a single national number, and treating it as one is a quiet way to mis-target. Where the roof lives and what it is made of move the window by years, and your year-built floor should bend accordingly.

  • Sun and heat age asphalt faster. Roofs in the hot, high-UV parts of the country bake and lose flexibility sooner than the same shingle in a mild climate. A roof that might run 22 years in a temperate region can be functionally done several years earlier under relentless sun.
  • Hail and high-wind regions compress everything. In hail alley and along storm-prone corridors, roofs rarely die of old age; they die of accumulated storm events. The replacement window in those regions is driven more by storm history than by the calendar, which is exactly why the storm layer carries so much weight there.
  • Material sets the baseline. Older three-tab asphalt ages faster than architectural laminate shingle. Tile and metal roofs run far longer and shift your whole strategy, because a 25-year-old tile roof is often not a replacement candidate at all, while a 25-year-old three-tab almost certainly is. Read material off the imagery before you assume a house is due.
  • Ventilation and installation quality matter more than people think. A poorly ventilated attic cooks the underside of the deck and shortens roof life regardless of the shingle warranty on the box. You cannot read ventilation from above, but it is a reason two identical-looking roofs on the same street can be years apart in real condition, and a reason the door inspection still rules.

The practical upshot: build region-specific floors into your filtering rather than copying a number off the internet. In a hot, hail-heavy market, a roof in the 12-to-15-year band may already be a strong knock; in a mild, storm-quiet market, you might not bother until 18-plus unless there is a storm trigger. The data tells you the age range; your local knowledge sets where the cutoff should sit.

Keeping the list fresh: the part nobody budgets for

A filtered list is a perishable good. The day you build it, it is accurate. Three months later it has decayed, because roofs got replaced (by you and by competitors), new storms hit, and the imagery you read keeps getting older relative to today. The teams that win treat list maintenance as an ongoing process, not a one-time project, and the ones that lose build a beautiful list once and then knock it into the ground for a year.

Three decay sources to manage:

  1. Completed jobs. Every roof your crews and your competitors replace is a house that should drop off the list. Feed your own job addresses back in immediately, and re-pull permits periodically to catch competitors' completed work.
  2. New storms. Each verified event reshuffles priorities. A street that was mid-priority on age alone jumps to the top after it takes hail. Storm overlays have to be refreshed event by event, not set once.
  3. Imagery drift. The aerial photo that was current when you built the list keeps aging. A roof at the edge of the window when you read it may have crossed into the window since. Periodic re-reads, or a tool that refreshes its age estimates as new imagery lands, keep this from rotting silently.

This is the strongest practical argument for automating the data step rather than maintaining it by hand. A manual list is accurate the week a person builds it and decays from there because nobody has time to keep re-pulling permits and re-reading imagery across a whole territory every month. A system that refreshes per-roof age ranges and re-applies storm modeling as new events and new imagery arrive keeps the list closer to current without a person babysitting it. The freshness problem is not glamorous, but it is where most homemade targeting quietly dies.

Putting it together: a week-one rollout

If you are starting from scratch, here is a realistic first week.

Day 1 — Pick one target. Choose a single trigger: one aged subdivision or one recent verified storm footprint. Do not try to filter your whole metro. Prove the workflow on one area.

Day 2 — Pull the data. Get the address roster with year built and owner-occupancy. Pull reroof permits for the area for the last several years.

Day 3 — Run the hard filters. Drop the too-new builds and the recently permitted reroofs. Count how many houses you just removed; that number is your first proof of value.

Day 4 — Read imagery and overlay storm data. Rank survivors by roof condition and storm exposure. Score and sort.

Day 5 — Sequence and deploy. Turn the scored list into a walkable route with one-line notes per house. Hand it to your best rep and a control rep on an unfiltered street, and compare qualified contacts per hour at end of day.

That head-to-head on Day 5 is what sells the whole approach to a skeptical team. When the rep on the filtered list books more inspections in fewer knocks and comes back less beaten down, you have your case. From there it is a matter of scaling the data step, which is where automated per-roof age ranges and per-roof storm modeling stop being a nice-to-have and start being the only way to keep the list fresh across a whole territory.

The roofs that are due are out there on every street, sitting next to the roofs that are not. The entire job is telling them apart before your rep walks up the driveway. Do that well and door knocking stops being a numbers game of grinding through rejection and becomes what it should be: a series of conversations with homeowners whose roofs were genuinely ready for one.

FAQ

Can I find out the exact age of a roof before I knock?

Not exactly, and you should be suspicious of anyone who claims an exact install date for every house. What you can get is a defensible age range by stacking signals: year built sets a floor, aerial imagery shows surface wear, and recent reroof permits flag recent replacements. A range like '14 to 19 years old' is enough to decide whether to knock, and far more honest than a false-precise date you cannot back up.

What is the fastest way to skip new roofs on a canvass?

Run two hard filters before anything else: drop houses built in roughly the last 8 to 10 years that have no storm exposure, and drop any address with a reroof permit in the last several years. Those two cheap filters often remove a quarter to half of a street before you look at a single aerial photo. Then read imagery on what survives to catch the rest.

Are building permits reliable for finding new roofs?

They are reliable in one direction. A recent reroof permit is strong evidence to skip a house. But the absence of a permit proves almost nothing, because plenty of reroofs go unpermitted, especially in areas with loose enforcement. Use permits to confirm a roof is new, never to assume a roof is old.

How current is aerial imagery, and does it matter?

It matters a lot. Aerial and satellite imagery can be one to three years old depending on the provider and region. A roof that looks pristine in the photo may have aged since, and a roof replaced after the photo still shows the old roof. Always check the capture date if available and treat the imagery as 'as of' that date, then verify condition on the door.

Should I knock every house in a hail swath?

No. A storm swath is a hypothesis, not a damage map. Within any footprint, hail intensity varies street to street, tree cover shields some roofs, and pitch and shingle age change how much damage occurred. Rank addresses within the swath by likely exposure and roof condition rather than treating every house as equally damaged, or you will waste reps on shielded roofs and train the neighborhood to ignore you.

How does RoofPredict help me skip new roofs?

It estimates a roof-age range per address from aerial imagery and models storm physics per roof, then ranks the houses so the ones aging out or worn by a storm rise to the top and the recently replaced roofs drop off. That turns a neighborhood into a sequenced list of qualified doors. It ranks doors; it does not inspect roofs or decide claims, so your rep still verifies condition on the porch.

Yes, when you stay in the right lanes. Targeting which doors to knock based on public records, imagery, and storm reports is standard practice. The lines you do not cross: never present a forecast or model as proof a roof is damaged or that a claim will be paid, never promise a free roof or that a deductible will be waived. The roofer documents conditions and provides an estimate, the insurer decides coverage, and the homeowner owns the claim.

How old does an asphalt roof need to be before it is worth knocking?

Architectural asphalt roofs commonly enter the replacement window around 15 to 25 years depending on climate, installation quality, and ventilation, while older three-tab roofs age faster. But calendar age is only half the picture. A younger roof that took significant hail or wind can be a stronger target than an older roof that never saw a real storm, which is why you layer storm exposure on top of age.

What hail size actually damages roofs?

Pea and marble-sized hail rarely does functional damage to a sound asphalt roof. The odds of bruising and granule loss climb around quarter-size (1 inch) and larger, and golf-ball-size (1.75 inch) and up commonly causes damage worth documenting. Pull hail size from authoritative storm reports so you can separate a meaningful event from a nuisance storm before you canvass.

How do I know my new-roof filtering is actually working?

Watch the 'already replaced' rate on the door. Every time a rep knocks and hears 'we did this last year,' that is a new roof you failed to skip. As your permit and imagery filtering tightens, that number should fall toward single digits. Pair it with qualified contacts per rep-hour and cost per booked inspection to confirm the filtered list is genuinely warmer.

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.

By signing up, you agree to receive The Roofline by RoofPredict. Unsubscribe anytime.

Sources

  1. National Roofing Contractors Associationnrca.net
  2. NWS Storm Prediction Center Storm Reportsspc.noaa.gov
  3. NOAA National Centers for Environmental Information Storm Events Databasencdc.noaa.gov
  4. Insurance Institute for Business & Home Safety (IBHS) Hail Researchibhs.org
  5. National Weather Service Hail Informationweather.gov
  6. U.S. Census Bureau American Housing Surveycensus.gov
  7. International Residential Code (ICC)iccsafe.org
  8. OSHA Fall Protection in Residential Constructionosha.gov
  9. Federal Trade Commission Business Guidance on Advertisingftc.gov
  10. Texas Department of Insurance Roof Claims Guidancetdi.texas.gov
  11. U.S. Bureau of Labor Statistics Occupational Outlook for Roofersbls.gov
  12. FEMA Hazard Mitigation Resourcesfema.gov
  13. National Association of Insurance Commissioners Consumer Resourcesnaic.org
  14. RoofPredictroofpredict.com

Related Articles