Solution · Your existing pipeline

The best roofing leads you own are already in your CRM.

Every roofing company is sitting on hundreds of old leads nobody called back. The roofs on those addresses have aged since. Some of them are now ready, and you already have the phone number.

The standard advice is to buy more leads: the most expensive option, from a vendor you have no reason to trust. The dead weight in your own CRM (the estimate that went cold in 2023, the storm canvass nobody worked) is already paid for, and you already have the contact details.

What that list lacks is a reason to call anyone on it today. Roof condition is that signal: a roof five years from replacement when the lead went cold is now two years from it, and some have seen hail since.

Roof condition is readable from above, so the whole back catalogue can be re-read without driving anywhere. Roofbird reads each roof from satellite and street imagery, ranks them, and hands back the ones worth a call.

How to score the leads already in your CRM

  1. 1

    Connect the CRM you already run

    JobNimbus, AccuLynx or SalesRabbit, using a key you create in your own account. Nothing is imported or copied out: Roofbird reads the addresses it needs and nothing else.

  2. 2

    Pick which leads

    Nobody wants their whole database read, so filter to the segment you care about: a city or state, a pipeline stage, records created before a date, or anything untouched for a year. The options use your CRM's own status names.

  3. 3

    See how many match before you commit

    It samples your CRM and tells you how many records match, and if none do, which part of the filter rejected them. That check scores nothing and costs nothing, so you decide to spend after you know the number.

  4. 4

    Start it once and let it run

    Tell it how many to score and it works through them in batches in the background. Stop it any time and everything scored so far is kept; it never runs past the size you authorised.

  5. 5

    Let it place each address and read the roof

    Each record is placed on the map and its roof read from imagery. Addresses that cannot be pinned to a building are skipped, not guessed, because a street centroid gives a confident read of the wrong house.

  6. 6

    Work the top of the returned list

    You get your records back worst roof first, each with a plain sentence about what the AI saw. Replace-now and worn are worth calling; recent means the roof is done and the lead is dead for roofing.

  7. 7

    Optionally write the score back

    Map a custom field and the score is written onto the record, so your CRM can sort by it. It is off unless you ask, and it only writes to fields you nominated, never notes or pipeline stages.

  8. 8

    Call the ones you already have numbers for

    These people once asked you for something, so the call is a follow-up, not an intrusion, which puts it on very different footing from a cold dial, commercially and legally.

Why an old lead can be a better lead

A cold list is strangers: a company they have never heard of, calling about a house you never visited. An old CRM record inverts that. They contacted you, or you quoted them, so there is a reason on file to call. It never converts because nothing picks that record out of four hundred others today. A current roof read fills that gap. "We quoted you in 2023 and I noticed the south slope has started losing granules since" is specific, checkable and true when they walk outside and look up.

What it costs, and what it does not

Scoring a CRM record costs the same as a scan: one credit per house read. Records skipped for want of a usable address cost nothing, and since you already hold the contact details, no credit goes on looking one up. Ranks are cached, so a street already read is free: scan a neighbourhood, score CRM records on the same streets later, and the second read costs nothing.

What the ranking does and does not claim

The score is comparative: the model ranks roofs against each other, so a batch of a hundred produces an ordering of those hundred. The tier (replace now, worn, midlife, recent) holds across batches, so the list sorts on it first. The percentage inside a tier only compares roofs read together, so a CRM graded in eight batches is not one league table of eight hundred. It reads only what is visible from above and from the street.

It reads, and that is all it reads

Scoring reads addresses. It does not read your financials, job costs, schedule or customer notes, and it copies nothing out of your database. Writing back is off unless you turn it on, and then touches only the custom fields you nominated. Notes, pipeline stages, milestones and anything your team typed are never modified. Disconnect any time. Records in your CRM stay yours; we never delete on your side.

FAQ

›Can I score just one segment instead of everything?

Yes, and it is the normal way to use it. Filter by city, state, ZIP, pipeline stage, creation date, or how long a record has sat untouched, and only those records are read. Anything outside the filter is looked at and discarded for free, so you never spend on leads you did not ask about.

›Does it score every lead in my CRM?

Only the ones you ask for, up to the number you authorise. A 10,000 record database is one decision rather than a hundred button presses: you set the segment and the size, it runs through them in background batches, and it stops the moment it hits the size, your quota, or Stop. It never starts on its own.

›How do I know it is worth doing before I pay for it?

Run the match check first. It samples your CRM and tells you how many records are in your segment without scoring any of them, which costs nothing. If the number is small or zero, it also tells you which part of the filter rejected the rest.

›Does this use up my monthly scan allowance?

Yes. A roof read from your CRM counts the same as a roof read from a scan, because it is the same read. Records that could not be placed on a map are skipped and cost nothing. The remaining allowance is shown next to the button before you press it.

›Do I have to unlock contacts to use this?

No, and that is the appeal. These are your records, so you already have the phone numbers. Contact unlocks are not involved at any point.

›Will it change anything in my CRM?

Nothing, unless you set up a field for it to write to. By default it reads addresses and gives you a list. Even with write-back on, it only touches custom fields you nominated — never notes, stages or anything your team wrote.

›What happens to records with a bad address?

They are skipped and reported as skipped, with the reason. An address that only resolves to a street or a ZIP centroid would put the imagery crop on whichever building is nearest, and a confident read of the wrong house is worse than an honest gap.

›Which CRMs can it read?

JobNimbus, AccuLynx and SalesRabbit today. AccuLynx requires their AppConnections add-on to be enabled before it will issue an API key, which is their requirement rather than ours.

Read next

Find out what is in your own pipeline

Connect your CRM on the free trial and score a hundred old records. If none of those roofs turned out to be ready, you have learned that for nothing.

Get started free →