The path a lead takes
- A homeowner fills in a form and agrees to be contacted.
- The seller sends the lead to the address and credentials you set up with them.
- Your CRM answers. It says it accepted the lead, or it gives a reason it did not.
- The seller records that answer. It decides whether the lead counts as delivered.
- Your team sees a new record and calls.
Two parts of that path matter more than the rest. The answer in step 3 is the only proof the lead landed. And the record in step 5 is only useful if the right fields ended up in the right places.
With HomeAnvil, we set the delivery method up with you on the onboarding call, and we send a test lead before any live ones. We switch live leads on once your CRM has accepted the test lead and your balance covers a lead. You are charged for each lead your CRM accepts. See roofing leads from HomeAnvil for the full terms.
What a roofing lead carries
Each HomeAnvil roofing lead has the homeowner's name, phone, email and the address of the roof, every answer they gave on the quote form, and the date and time they agreed to be contacted. The form's answers cover:
| Answer | What it tells you on the first call |
|---|---|
| Replacement or repair | Which crew and which kind of estimate you will need |
| Home type and whether they own it | Whether the person you are calling makes the roof decision |
| Number of stories and home size | A rough scope before anyone climbs a ladder |
| Current roof material and roof age | What you are tearing off, and how old it is |
| What matters most (longevity, affordability or curb appeal) | What to lead with on the call |
| Timeline | Who to call first |
Those are the survey questions on our shingle roofing form. Metal roofing has its own form with its own questions; see metal roofing leads.
Mapping the fields
Mapping is deciding which piece of the lead goes into which field of your CRM. Most CRMs have named fields for name, phone, email and address, and a notes area or custom fields for the rest. Decide this before the test lead, because a bad map shows up as a good lead sitting in the wrong place.
- The contact fields. Name, phone, email and address should land in your CRM's own fields, so dialing, texting and search all work.
- The project answers. Give each answer its own field if your CRM allows it. Replacement or repair, material, roof age and timeline are the ones your sales staff filter on. If you cannot add fields, put the answers in the first note on the record, with a label on each line.
- The source. Mark the lead with where it came from, so you can measure cost per signed job by source. What roofing leads cost shows why that number matters.
- The owner. Decide who the lead is assigned to. A lead that lands unassigned waits for someone to notice.
- The status. Set a starting status such as "new lead", so your follow-up list picks it up. The follow-up steps are in how to follow up on a new roofing lead.
Required fields differ between systems. HubSpot's documentation, for example, says a contact must have at least one of email, first name or last name (HubSpot developer documentation, read October 13, 2026). A system with a required field the lead does not carry will refuse the lead. Ask us to tell you which fields a lead always has and which it can lack.
Why a test lead comes first
A test lead is a made-up record sent the same way as a live one. It lets you find problems while nothing is at stake.
What to check on the test lead:
- It arrived at all. If not, the credentials, address or permissions are wrong.
- Every field landed where you mapped it. Open the record and compare it with the list above.
- The right person was notified. A new record that notifies nobody is a lost lead.
- A test record is easy to tell from a real one. Delete or label it, so nobody calls the number.
- The phone number and email format are what your CRM expects. A number with the wrong format can break a click-to-call link.
Do not switch live leads on until a test lead has gone all the way through.
Duplicates and retries
Networks fail. If a seller sends a lead and the connection drops before the reply arrives, the seller cannot tell whether your CRM kept it. A careful seller either does not send it again, so you may get none, or sends it again with a marker that lets your CRM recognise it, so you do not get two.
The web has a standard approach for this. Stripe's documentation, for example, describes an idempotency key: a unique value sent with a request so that the receiver can recognise a repeat and return the first result instead of creating a second object. Stripe says it saves the first result for a key and returns it on a retry (Stripe API documentation, read October 13, 2026). Not every CRM reads such a key, and your CRM's own duplicate rules do the other half of the work.
Ask these questions of any seller:
- What do you do when you get no reply? Resend, hold the lead, or mark it failed?
- Do you charge for a lead your CRM did not accept? With HomeAnvil you are charged for each lead your CRM accepts.
- How does your CRM match duplicates? Most match on email, some on phone, and some do neither. HubSpot's documentation calls email the primary unique identifier used to avoid duplicate contacts, and says a create-or-update call matches on it (HubSpot developer documentation, read October 13, 2026). If a homeowner gives a different email next time, your CRM may keep two records.
Our terms credit back the same homeowner sent to you again within 60 days, unless your agreement says otherwise, as our credits table shows.
What can go wrong
| Symptom | Likely cause | What to do |
|---|---|---|
| Nothing arrives | Wrong address, expired credential, or a permission your CRM account lacks | Check the credential first, then ask the seller to send another test |
| A lead arrives with blank fields | A field was not mapped, or the CRM discards a value it does not recognise | Compare the lead with your map; fix the map |
| Two records for one homeowner | A resend, or a different email on a second request | Merge them, and check your duplicate rule |
| Leads arrive but nobody is told | Notifications are tied to a different status or owner | Fix the assignment rule |
| Leads stop one day | A credential was changed or expired | Tell the seller; a changed credential has to be updated on both sides |
A credential changing is the usual cause. If someone leaves your company, check whether the connection ran under their login.
Your first live lead
When the first real lead arrives, run through this list:
- Did it land within a minute or two of the homeowner finishing the form?
- Is every field filled in, and in the right place?
- Was the right person alerted?
- Did your team call it right away? The first call is where speed matters most, and our guide to exclusive vs. shared leads covers the studies.
- Did you record what happened? We use outcomes (reached, appointment set, sold) to tune your ZIP codes and volume. See how roofers choose ZIP codes for leads.
If anything on the list is wrong, report it while the lead is fresh. If the lead itself is bad, such as a wrong number or an address outside your ZIP codes, report it within 7 days of delivery, unless your agreement says otherwise.
Our terms, in brief
- Exclusive leads
- Each new lead goes to one contractor only during your exclusivity window; after it, a lead may be offered again, under the terms the homeowner saw.
- No contract term
- A prepaid balance your card tops up when it runs low. No cancellation fee. Pause or stop any time.
- Credits for bad leads
- Report a wrong number or out-of-area lead within 7 days, unless your agreement says otherwise. Accepted returns are credited back.
- Your ZIPs, your cap
- Choose the ZIP codes you serve and how many leads you want each week.
Frequently asked questions
Which CRMs can HomeAnvil send leads to?
Tell us which CRM you use on the 15-minute call, and we confirm how it connects. We do not publish a list on this page, because what a CRM supports changes. If your CRM is not one we can connect directly, we tell you on the call.
Do I need a CRM at all?
You need somewhere your team can see every new lead at once, with the answers, and record what happened. A shared spreadsheet is a poor substitute once leads arrive faster than one person can call, but we do not require a particular system.
Will I get a test lead before real ones?
Yes. We send a test lead first, and switch live leads on once your CRM has accepted it and your balance covers a lead.
What happens if my CRM is down?
The lead may not be accepted, and you are charged only for leads your CRM accepts. Ask us how a lead is handled when your CRM does not answer, so you know whether it is held or sent again. Tell us when you know your CRM will be out, so we can pause delivery.
Does the CRM change how fast I should call?
No. The CRM only gets the lead to your screen. The call is still yours to make quickly.
Where this information comes from
We read each source below on October 13, 2026. The test list and the field-mapping advice are ours, drawn from the sources and from the HomeAnvil pages named. Statements about HomeAnvil match our contractor pages.
- HubSpot, Contacts API guide. Read October 13, 2026. It is cited as an example of how one CRM behaves, not as a recommendation.
- Stripe, Idempotent requests. Read October 13, 2026. It is cited as an example of a common technique, not as a recommendation.
- HomeAnvil, roofing leads and how to follow up on a new roofing lead.
We dropped any claim about how a particular CRM behaves that we could not read on that vendor's own page. This is general information, not legal advice.
Talk to us about your service area
Answer three questions about your company. If we're a fit, you pick a time for a 15-minute call.
