How to Build a Roofing Canvassing List with AI (Before Your Crew Knocks a Single Door)
Stop sending reps to knock 100 random doors and hit 8 real prospects. AI roof scoring builds your canvassing list from satellite imagery first — so every knock is on a door worth knocking.
A rep knocking 100 random doors in a typical suburb hits maybe 8–12 homes with a roof old enough or damaged enough to actually buy. The other 88 knocks are wasted labor — homeowners who just replaced their roof two years ago, rentals where the landlord doesn't care, houses with 5-year-old architectural shingles that'll run another decade. That's a 90% miss rate before your rep says a single word.
Pair your list with the free US hail map — every NOAA hail report from the last 12 months, by county and size.
AI roof scoring flips the ratio. Instead of building a canvassing list from a ZIP code boundary and a prayer, you build it from roof condition signals — satellite imagery, estimated age bands, storm-event overlap — ranked by likelihood of needing work. Your rep still knocks doors. They just knock the right ones.
Canvassing isn't dying. Unranked canvassing is.
This is the workflow: how to pick the territory, score every roof in it, cut the list to the top tier, route your crew efficiently, and knock with a reason instead of a pitch. Four steps, done before your crew leaves the shop.
What a scored canvassing list actually contains
Before the steps, here's what you're building toward. A scored canvassing list isn't a raw data dump from a county assessor or a lead you bought from Angi. It's a ranked table you can hand to a rep and have them start walking.
The columns that matter:
| Address | Roof Score | Est. Age Band | Material | Damage Flags | Storm Overlap |
|---|---|---|---|---|---|
| 412 Ridgemont Dr | 8.7 | 2003–2008 | 3-tab asphalt | Patching visible, discoloration NE quadrant | Hail 2026-04-11 (1.25") |
| 407 Ridgemont Dr | 8.1 | 2005–2010 | 3-tab asphalt | Surface granule loss | Hail 2026-04-11 (1.25") |
| 388 Clearwater Ln | 7.6 | 2000–2005 | 3-tab asphalt | None visible | Hail 2026-04-11 (1.25") |
| 501 Clearwater Ln | 6.2 | 2010–2015 | Architectural | None visible | Hail 2026-04-11 (1.25") |
| 219 Briar Hollow Ct | 5.1 | 2015–2020 | Architectural | None visible | None in 18 months |
Score 8.7 goes first. Score 5.1 gets cut. The rep knocking 412 Ridgemont Dr knows before they ring the bell that the roof is 18–23 years old, shows visible patching, and took 1.25" hail in April. That's not a cold knock — that's a warm conversation with a reason to be there.
Step 1 — Pick the territory like a strategist, not a driver
Most reps pick canvassing territory the way they pick lunch: whatever's closest. That's fine for efficiency, but it's not strategy. Territory selection is where you decide whether the next 40 hours of your crew's time will produce 12 appointments or 3.
Three filters to run before you pick a ZIP or subdivision:
Housing stock age: 1995–2010 builds are in the replacement window. A 3-tab asphalt roof installed in 1998 is 28 years old. A 2006 build is 20 years old. Both are in or past the typical 20–25 year lifespan for standard shingles. Subdivisions built before 1995 have largely already been replaced (or are occupied by homeowners who've deferred and are finally ready). Post-2012 builds are mostly too young. The sweet spot is 1995–2010.
Get this data free: most county assessor portals have a year-built filter. In Texas, try [yourcounty].appraisaldistrict.net — most let you export by subdivision or ZIP with year-built included. In Florida, county property appraiser sites (e.g., bcpa.net for Broward) have the same. Pull the data, filter for 1995–2010, and you have your candidate territories before you've spent a dollar.
Storm history in the last 18 months. A neighborhood that took a 1" hail event 8 months ago and hasn't been saturated with roofers yet is a different opportunity than a neighborhood that took the same storm and has been canvassed by every restoration shop in the metro. Check ncdc.noaa.gov/stormevents for NOAA storm event records by county — free, updated regularly.
Median home value vs. your average ticket. If your average job is $14,000 and the neighborhood's median home value is $95,000, the math gets hard. Homeowners in lower-value homes often can't swing the insurance deductible or the gap between ACV and replacement cost. Target neighborhoods where median home value is at least 8–10x your average ticket — that's a rough proxy for "homeowner can afford to say yes."
Run these three filters and you'll have 2–3 candidate territories. Pick the one that scores best on all three, not just the one closest to the shop.
Step 2 — Score every roof in the territory from satellite
This is the step that separates a ranked list from a raw list.
Vision AI trained on aerial and satellite imagery reads surface-level signals that correlate with roof condition and age: granule loss patterns, surface discoloration, visible patching, material type (3-tab vs. architectural vs. metal vs. tile), and approximate age bands derived from imagery combined with assessor data. It's not an inspection — it can't see under-deck condition, active leaks, or ventilation problems. But it doesn't need to. The goal at this stage is ranking doors, not writing estimates.
What the model is actually doing: it's assigning a probability score that a given roof is in the condition range where a homeowner is likely to need replacement in the near term. High scores don't mean "this roof is definitely failing." They mean "this roof is more likely to be worth a knock than the median roof in this territory."
This is where Roofbird scores roofs: you define the territory, and the output is a ranked address list with scores, estimated age bands, material flags, and storm-event overlap already joined. One territory in, scored list out.
Score your first territory free →
The output is the table from the previous section — ready to sort, cut, and route.
Step 3 — Cut the list and route it
You don't knock every address the model scores. You knock the top tier.
Cut at the top 20–30% of scores. In a territory of 300 homes, that's 60–90 addresses. For a 2-person crew running a full week, 60–80 ranked doors is the right volume — enough to fill the pipeline without spreading the crew thin across too much geography.
Cluster by street, not by score. Once you've cut the list, don't sort it by score and route your rep accordingly — that sends them driving across the subdivision all day. Instead, cluster by street: all the high-score addresses on Ridgemont Dr get knocked in one pass, then the cluster on Clearwater Ln. Your rep walks a block, not drives a ZIP code. Walking matters — neighbors see a rep on foot, which is less threatening and produces more organic conversations than a truck pulling up to each house.
Give each address its "why." Before the rep leaves the shop, every address on their route should have a one-line reason: "roof scored 8.2, hail event 2026-04-11, estimated 2003–2008 install." This isn't just for the rep's confidence — it changes the opener at the door. "We've been looking at roofs on this street after April's hail event" is a specific, credible reason to be there. "Are you happy with your roof?" is not.
Route the clusters in order of average score — highest-scoring cluster first. If the crew runs short on time, they've already hit the best doors.
Step 4 — Knock with the data, not just a pitch
The list is built. The route is set. Now the data has to show up at the door.
The opener changes when you have a reason. Instead of a generic pitch, your rep leads with the specific signal: the storm event, the roof age, the visible condition flag. Homeowners respond differently to "we noticed some granule loss on roofs in this area after the April storm" than to a cold "we're a roofing company in your area." The first one sounds like you did homework. The second one sounds like every other canvasser they've seen this month.
For the full door script — what to say in the first 30 seconds, how to handle "not interested," and how to move from opener to appointment — see the door-knocking script for roofers.
For timing: the data tells you which doors to knock, but not when. Knock times matter more than most crews admit — Saturday morning and Tuesday evening produce meaningfully different answer rates than Monday at 2pm. The breakdown is in best time to door knock for roofing.
And when someone answers, the AI score is a list-building tool, not a closing tool. You still need to qualify at the door: is this a renter or an owner, is there an active insurance claim already filed, is the homeowner the decision-maker. The process for that is in how to qualify a roof prospect before you knock.
What AI can't see (and what that means for your process)
The satellite score is built from what's visible from above. That means it misses:
- Under-deck condition — rotted decking, structural issues, improper previous installations
- Active leaks — water intrusion that hasn't produced visible exterior symptoms yet
- Ventilation problems — ridge vent failures, blocked soffits
- Anything obscured by tree canopy — dense coverage can reduce scoring confidence
None of this is a reason to distrust the list. It's a reason to frame the process correctly: the AI builds the list, the human inspection closes the job. When your rep gets an appointment, the inspection is where you find the under-deck story, the ventilation issue, the leak the homeowner didn't know was happening. That's the value of the inspection — and it's also why you don't need the satellite score to be perfect. You need it to be better than random. It is.
Being upfront about this with homeowners actually builds trust. "Our system flagged your roof based on imagery and the April storm — but we'd want to do a proper inspection before we tell you anything definitive" is a more credible thing to say than claiming you already know exactly what's wrong from a photo.
FAQ
Q: Can AI really tell which houses need a new roof?
Not with certainty — and that's not the goal. The score is a probability ranking built from satellite imagery, estimated age data, and storm-event overlap. It tells you which roofs are more likely to need replacement relative to other roofs in the same territory. A score of 8.7 doesn't mean "this roof is failing." It means "this roof has more condition signals than 87% of roofs in this territory." That's enough to rank your doors. The inspection confirms the actual condition.
Q: Is this legal? Am I allowed to score someone's roof from satellite?
Yes. Satellite and aerial imagery used for roof scoring is the same publicly visible data that Google Maps, county assessor portals, and insurance underwriters use. There's no privacy violation in analyzing imagery of a structure's exterior — roofs are not private spaces. You're not accessing anything a homeowner hasn't already implicitly made visible to anyone with an internet connection.
Q: How big should a canvassing list be for a 2-person crew?
60–80 ranked doors per week is the right range for a 2-person crew running full canvassing days. That's enough to generate 8–14 appointments at a solid knock-to-appointment rate on a pre-qualified list, without spreading the crew across too much geography. Cut below 60 and you're leaving pipeline on the table. Push above 90 and the crew starts rushing knocks to hit the number, which kills conversion.
Q: What does it cost compared to buying leads?
Shared roofing leads on Angi or HomeAdvisor run $80–150 each in most metro markets in 2026, and they're shared with 5–7 other roofers. A flat monthly subscription for AI territory scoring covers hundreds of addresses — the effective cost per appointment depends on your crew's knock-to-appointment rate, but at a 10–15% rate on a ranked list, you're looking at a fraction of the shared-lead CPL. See the pricing page for current territory rates.
This week's actions
- Pull year-built data for 2–3 candidate ZIPs from your county assessor portal. Filter for 1995–2010. Pick the territory with the densest concentration of that vintage.
- Cross-reference against
ncdc.noaa.gov/stormevents— any hail events in the last 18 months in that territory? - Score the territory. If you haven't run a satellite score yet, start with one ZIP.
- Cut to the top 25% of scores, cluster by street, print the route with the "why" for each address.
- Send the crew out Thursday or Saturday morning — the two highest answer-rate windows for residential canvassing.
The list is built before the first knock. That's the whole point.
Stop knocking random doors. Try Roofbird.
New in Roofbird
Now with the homeowner's contact details on every lead
Finding the roof is half the job — you still have to reach the owner. Roofbird now unlocks the homeowner's name, phone, email, and mailing address on any lead, every phone DNC-scrubbed so you know who's safe to call, plus whether they're an owner-occupant or an absentee owner. No skip-tracing tools, no bought lists: find the roof, get the owner, call or mail the same day.
Written by
Jake Thompson
Have a question about anything in this post? Reach the Roofbird team at support@roofbird.ai.
Try Roofbird — 25 free leads in your area
See a sample dashboard for DFW first, no signup needed. Trial loads 25 free pre-scored leads in your own service area.
More for roofers
Best Hail & Storm Roofing Lead Software in 2026 (Honest Buyer's Guide)
What to look for in storm-restoration lead software, the categories of tools that exist, and where an AI scan-plus-contact approach fits for roofers chasing hail and wind damage.
Best Canvassing & Door-Knocking Software for Roofers in 2026
Most canvassing apps track where your reps knocked. The better question is which doors are worth knocking, and how to reach the owner. A buyer's guide for roofing crews.
Best Roofing Lead Generation Software in 2026 (for Self-Sourced Leads)
A straight buyer's guide to roofing lead software in 2026, the real categories, what separates them, and how to pick based on whether you want shared volume or exclusive self-sourced leads.