A roofing owner shopping for pipeline gets three quotes in the same week: $50 for a shared lead, $200 for an exclusive lead, $175 for a confirmed appointment. The instinct is to sort by price and pick the smallest number. That instinct is wrong more often than it's right. A $50 lead and a $200 lead can cost the exact same amount per booked job, or a wildly different amount, and the sticker price alone will never tell you which.
The number that actually matters is cost per booked job, not cost per lead. It's one formula, a single division, and it turns any vendor's quote into a real comparison instead of a guess. Most owners never run it. They compare sticker prices, pick the cheapest one, and find out a quarter later that the cheap lead cost more per closed job than the expensive one did. For the full 2026 price bands by lead type, see how much roofing leads cost in 2026. This post is about what to do with those prices once you have them.
Below: the formula itself, four steps to run it on any quote, a worked example across three real 2026 pricing models, and the one gap in how vendors report close rates that quietly wrecks the math if you don't catch it.
The Formula: Cost Per Lead Divided by Close Rate
The formula is one line. Cost per lead divided by your close rate equals your true cost per booked job. A $50 lead that converts to a signed job 10% of the time costs $500 per booked job. A $200 lead that converts 35% of the time costs about $571 per booked job. On sticker price, the $50 lead looks four times cheaper. On the number that actually matters, the two land close enough together that other factors, speed to answer, crew drive time, how many dead leads you dial through to find the live ones, decide which one is really worth buying.
Four Steps to Run This on Any Vendor's Quote
Step 1: Price the whole invoice, not just the per-unit number
The per-lead or per-appointment price is never the full cost. Minyona charges $41 to $99 per qualified lead or $75 to $150 per booked appointment, on top of a setup fee that runs $4,000, discounted to $2,000 as a limited-time offer, with no ongoing retainer after that. HeyRoofers enforces a $750 minimum order before you can buy at any tier, with per-lead pricing dropping from $150 to $125 as volume climbs from 10 to 50 leads a month. Peak Marketing Service goes the other way: no setup fee, a prepaid balance, month to month. Add the setup fee and the minimum order into the per-unit price before you run the formula, or you're comparing an incomplete number.
Step 2: Get their close rate in writing, and ask which leads it counts
Ask for a real figure, not "most of our clients do great." Then ask the follow-up question that decides whether that figure means anything: is it measured against every lead you paid for, or only the ones that were reachable and interested? That distinction is the whole ballgame, and the section below shows exactly why.
Step 3: Divide price by close rate
Take the all-in price per unit from step 1 and divide it by the close rate from step 2. That's your nominal cost per booked job. Run it for every vendor you're comparing before you look at which one has the lowest sticker price.
Step 4: Compare the result against what a job is worth, not against other vendors
A cost-per-booked-job number only means something next to your actual job value and margin, not next to a competing vendor's sticker price. The section near the end of this post sets that ceiling using published roofing-industry figures.
Worked Example: Three Pricing Models, Same Formula
Applying the formula to three real pricing structures shows how little the sticker price predicts the outcome.
| Model | Price | Close rate | Nominal cost per booked job |
|---|---|---|---|
| Shared marketplace lead | ~$50 per lead | ~10%, industry estimate | ~$500 |
| Pay-per-call / LSA-style lead | ~$75 per lead | ~15%, industry estimate | ~$500 |
| Exclusive raw lead | ~$200 per lead | ~35%, industry estimate | ~$571 |
Figures are a published cost-per-job benchmark example, industry estimate, not a guarantee for any specific campaign.
Two things stand out. First, the $50 lead and the $75 lead land at almost the identical cost per booked job, despite a 50% price difference, because the pricier lead also closes at a meaningfully higher rate. Second, the $200 exclusive lead, four times the sticker price of the shared lead, costs only about 14% more per booked job. None of that shows up if you compare the three vendors on price alone. It only shows up once you run the division.
The Two Close Rates Vendors Rarely Separate
Close rate figures from lead vendors usually describe a targeted, best-case scenario, and one published worked example shows exactly how far that can drift from what you actually pay per job. One roofing lead vendor cites a close rate around 30%, with 40 to 45% for a well-run, targeted campaign. That same vendor's own worked example: 100 leads bought for $5,000, $50 per lead, produced 6 closed sales. That's a 6% close rate against the full batch, and a real cost of $833.33 per sale, nearly five times what the 30% figure implies.
That's not a contradiction. It's two different denominators. The 30 to 45% figure almost certainly describes close rate against leads that were reached and showed real interest. The 6% figure describes close rate against every lead purchased, including the ones nobody ever answered, the ones already sold to a competing contractor, and the ones that were never a real prospect to begin with. Both numbers can be true from the same vendor at the same time, and a batch sold with no exclusivity guarantee is exactly where that gap tends to widen. See roofing appointments vs shared leads for how the resale pattern behind that gap works.
The fix is one question. Ask for close rate against every lead you paid for last month, not close rate against the leads your rep considers "worked." If a vendor can't produce that number, run the formula on your own tracked results for 60 to 90 days before you commit real budget to them.
Why the Appointment Model Changes the Denominator
Booked-appointment vendors have already cleared the step where the batch math above falls apart: getting a real homeowner to answer the phone and agree to a time. That should tighten the gap between a vendor's quoted close rate and your real cost per booked job, but only if the appointment comes with a replacement guarantee.
| Vendor | Price | No-show / replacement policy |
|---|---|---|
| Minyona | $75 to $150 per appointment | Booked via call center at no added charge on top of the lead price |
| The Lead Giants | $175 to $200 per appointment, volume-tiered | No-show or invalid appointments replaced free if disputed within 24 hours; no retainers, no monthly minimums |
| Peak Marketing Service | $110 to $150 per appointment | Prepaid balance, month to month, no guarantee the homeowner will actually be present |
Apply the formula to The Lead Giants' pricing against a typical roofing close rate on a sat estimate, 20 to 40% by industry estimate: a $175 appointment closing at 40% costs about $438 per booked job, and a $200 appointment closing at 20% costs about $1,000. That's roughly the same range as the exclusive raw lead in the worked example above, but with one real difference. A no-show inside the 24-hour dispute window gets replaced free, so a dead appointment never enters your denominator at all. Compare that to Peak Marketing Service's prepaid model, a similar price range with no such guarantee, where a no-show is still a paid unit sitting in your batch, quietly pulling the real number away from the nominal one, the same way the 100-lead batch example did above.
Read the qualification standard behind the appointment too, not just the no-show policy. See what makes a qualified roofing appointment for the specific fields a booked appointment should carry before it's worth showing up for.
What the Job Is Worth Sets the Ceiling
None of this matters without a ceiling to measure it against. At a roughly $10,000 average roof replacement, industry estimate, and a 20 to 40% close rate on a sat estimate, industry estimate, one kept appointment is worth roughly $2,000 to $4,000 in revenue, and somewhere around $500 to $1,400 in gross profit at a typical 25 to 35% margin. That's a back-of-envelope range built from the figures above, not one vendor's promise, but it sets the number every cost-per-booked-job calculation in this post should be measured against. A $500 to $1,000 nominal cost per booked job, the range the worked examples above land in, still leaves real margin on the table. A vendor quoting well above that range needs a strong replacement and qualification policy to justify the price.
What this means for you
- Run cost per lead divided by close rate for every vendor quote before you compare sticker prices. Include the setup fee and any minimum order in the price you divide.
- Ask whether a vendor's close rate is measured against every lead purchased or only the ones marked "worked." That gap is where the nominal number stops matching the real one.
- Read the no-show and replacement policy as part of the math, not as fine print. A guarantee narrows the gap between nominal and real cost per job. A no-guarantee prepaid balance doesn't.
