Case study

Roof Prospector

Pilot

A working app that turns a public address list into a costed sales pipeline. It reads 231,778 Knoxville addresses, pulls satellite and street-level imagery for each, and has a vision model judge the roof — material, age, complexity, visible damage — then cross-references storm history and estimates the replacement cost.

Delivered for a client — not Mule AI’s own product

Delivered for a roofing company client — not named here, at their request. This was a technical pilot phase of that engagement: a vision model that turns a plain, public Knoxville address list into a qualified, costed sales pipeline a sales team could actually work from, not a Mule AI experiment run for its own sake.

The problem

A roofing company usually works from a list, not a pipeline: a county address file, an old lead export, a territory map — hundreds of thousands of properties with no way to tell which few hundred are worth a knock or a call this week. Sorting that by hand does not scale, so most of the list just never gets worked. The client wanted to know whether a vision model, pointed at public imagery, could do that sorting for real — the exact kind of "revenue opportunity hiding in plain sight" the AI Workflow Audit looks for.

How it works

The pipeline, step by step

  1. 1

    Ingest the address list

    Started from a public address list covering Knoxville — 231,778 properties, no purchased leads, no CRM export.

  2. 2

    Pull imagery per property

    For each address, pulled satellite and street-level imagery to give the model an overhead and an eye-level view of the same roof.

  3. 3

    Judge the roof with vision

    A vision model rates each roof on material, age, complexity and visible damage signs — each dimension carrying its own confidence score rather than one blended guess.

  4. 4

    Cross-reference storm history

    Each property is checked against hail and wind event history for the area, so a plausible-looking roof with a storm in its recent past is not treated the same as one with a clean record.

  5. 5

    Segment and cost the roof

    The roof area is segmented from the imagery and used to estimate a replacement cost as a range, not a single number the model cannot actually back up.

  6. 6

    Score, bucket and flag for review

    Every property gets a 0–100 score, a bucket like "hot", and a needs-review flag wherever the model’s own confidence is too low to act on without a person checking first.

What it produced

The numbers, from one run

231,778

Addresses processed

Every property in the Knoxville public address list, not a sample

45

Ranked, costed prospects

What one run returned after scoring and bucketing

4

Roof judgment dimensions

Material, age, complexity, damage — each with its own confidence rating

0–100

Score range

Bucketed (e.g. "hot"), with a needs-review flag where confidence is low

The real product

Not a mockup

The Roof Lead Prospector dashboard, showing total leads, hot and warm buckets, pipeline value and recent runs
The dashboard — leads, buckets and pipeline value across runs
The Roof Lead Prospector new analysis screen, searching by ZIP code or a custom address list
A new run — by ZIP code or a pasted address list
A scored commercial property in Roof Lead Prospector, showing a 90/100 score, high confidence, satellite imagery and an estimated job value range
A scored property — confidence, imagery and a cost range
The Roof Lead Prospector AI notes for one roof, describing it as aging and flat with ponding water, alongside a cool-roof-coating cost breakdown
The model’s read on one roof, and the cost math behind it

What this means for a business like yours

The input here was a public list anyone can download — the kind of asset that sits in a shared drive doing nothing because nobody has a week to sort it by hand. The pipeline turned it into 45 ranked, costed, reviewable prospects without a person opening a single record. That is the shape of the audit’s "revenue opportunity" finding: not a new tool bolted onto the business, but an existing pile of data made to work for the first time.

What we did not measure

This was delivered as a technical pilot for the client, not a sales campaign Mule AI ran itself. What the client did with the 45 properties afterward — any calls made, any deals closed — was not instrumented by us, so there is no close rate, no revenue and no ROI to report, and none is claimed here. What was verified on our end is the pipeline itself: it runs end to end over a real address list and returns output a sales team could actually work from.

Want to know what a pipeline like this could find in your business?

Download PDF