Dilution
- Effective leads = leads per month divided by contractors sharing each lead.
- Exclusive leads use 1. A shared marketplace uses the number of roofers sold the same lead.
Turn a lead price into the number that runs your business: true cost per booked job, once shared-lead dilution, the appointment rate, and the close rate are applied. Your own figures, nothing saved, no email.
$228.15
per lead (median)
Google Ads, all campaign types
LocaliQ (Apr 2024 to Mar 2025) via Pavado TechTwo roofers can pay the same price per lead and get very different results. A shared marketplace lead sold to four companies, a low answer rate, and a soft close rate can quietly multiply the real cost of every job you sign. A pricier exclusive lead that sits for an inspection and closes well can be cheaper per booked job. The only honest comparison across sources is cost per booked job, built from your own rates.
This calculator does one transformation the planning tools do not: it takes the price you pay per lead and shows what a job really costs once dilution, the appointment rate, and the close rate are applied. Nothing is pre-filled, because a benchmark is never your number until you have measured it.
Your own lead numbers
Price per lead is what the source charges you. Exclusive leads use 1 for contractors sharing; a shared marketplace uses the number of roofers sold the same lead. Nothing is submitted or saved.
Add both to see gross profit per job, gross profit per $1 of lead spend, and break-even jobs. Use your own job economics, not an industry figure.
True cost per booked job
Enter your price per lead, leads per month, contractors sharing, appointment rate, and close rate to see your true cost per booked job.
Effective leads = leads per month divided by contractors sharing each lead.
Booked appointments = effective leads times the appointment rate.
Jobs won = booked appointments times the close rate.
Total lead spend = price per lead times leads per month.
Cost per booked appointment = total lead spend divided by booked appointments.
Cost per won job = total lead spend divided by jobs won.
Spend on leads that never reach a job = total lead spend minus the price of the leads that did win a job. It is spend that did not become a job, not money you can recover.
Optional: gross profit per job = average job value times gross margin. Break-even jobs = total lead spend divided by gross profit per job, rounded up.
A per-unit cost reads as Not available when its denominator is zero, so the tool never prints a divide-by-zero figure.
Cost per lead is your input, not an SF Web Tech benchmark. Jobs and cost per job are modeled from your own rates, not guaranteed results. A lead is not a booked job. The figure excludes overhead, refunds, financing, and unattributed work and is not net profit. For reconciled actuals use the cost per booked job calculator; to track the journeys behind the numbers use the roofing lead ledger.
A per-unit cost reads as Not available when its denominator is zero, so the tool never prints a divide-by-zero figure. Expected counts can include decimals because this is planning arithmetic, not a claim that a fraction of a job will occur.
These are third-party industry figures, not an SF Web Tech promise or result, and none are pre-filled as a calculator default. Each figure was re-checked against its live source on 14 November 2026. Ranges disagree by method, so treat them as ranges, not a single typical number. There is no credible roofing-only Local Services Ads cost dataset in public: published LSA figures derive from other trades, so we leave roofing LSA as a user input rather than invent one.
| Metric | Figure | Source (Checked 14 Nov 2026) |
|---|---|---|
| Google Ads, roofing, non-branded search | $124 / lead | SearchLight (Q1 2026, 15 contractors) via Pavado Tech |
| Google Ads, roofing, branded search | $44 / lead | SearchLight (Q1 2026) via Pavado Tech |
| Google Ads, roofing, Performance Max | $64 / lead | SearchLight (Q1 2026) via Pavado Tech |
| Google Ads, roofing, blended average | $105 / lead | SearchLight (Q1 2026) via Pavado Tech |
| Google Ads, roofing, all campaign types (median) | $228.15 / lead | LocaliQ (Apr 2024 to Mar 2025, 3,211 campaigns) via Pavado Tech |
| Roofing cost per booked customer | $372 | SearchLight (Q1 2026) via Pavado Tech |
| Roofing cost per paying customer | $1,321 (about 12.6x cost per lead) | SearchLight (Q1 2026) via Pavado Tech |
| Shared marketplace (Angi / HomeAdvisor) | $15 to $85 / lead, plus membership | Pavado Tech |
| Channel ranges (LSA, PPC, shared, exclusive, pay-per-call) | LSA $25 to $80+, PPC $150 to $300+, shared $75 to $110+, exclusive $150 to $300+, pay-per-call $100 to $900; overall $50 to $500 | ActiveProspect |
A low price per lead often comes with a shared buyer, a weaker answer rate, and a softer close. A higher price on an exclusive lead often comes with a stronger appointment and close rate. Run both through the calculator with your own rates: the fair comparison is cost per booked job, not the number on the invoice.
“Measure a lead source by cost per booked job, not by the price on the invoice.”
Cost per booked job is trustworthy only when the leads behind it are deduplicated and attributed. One homeowner who calls, fills a form, then returns through another search is one opportunity, not three. Count the journey once, keep every touch, and resolve which source earned the job before you divide spend by jobs won. Define a qualified lead before you count cost per lead, and keep the stages separate: a lead is not a booked job, and a booked job is not a paying customer. Even free Google Business Profile calls deserve the same measurement, not a guess.
The Founding Partner Program builds and runs the whole lead system for one roofer per city, with a written promise of qualified leads, not rankings, and every lead tracked to its source. Month one is free while we build; from month two it is $1,997 a month, all in, with Google Ads spend paid separately to Google.
Book a callFor reconciled actuals, not estimates: follow one cohort from inquiry to paid customer.
Open resourceTo plan a whole 30 or 90 day program from your own media, close-rate, and job-value assumptions.
Open resourceTo track the journeys behind these numbers, with deduplication and three attribution layers.
Open resourceHow to set a roofing marketing budget from capacity and economics, not a universal benchmark.
Open resourceThese answers describe the calculator method and cite public third-party figures. They do not establish an SF Web Tech benchmark or a guaranteed result.