What a qualified roofing appointmentactually costs your shop.
Cost per appointment numbers get thrown around without context. This guide walks through the four unit costs every roofing owner should know (CPL, CPA, CPI, CPS), how they connect through ROI, CAC, and LTV, and how to use them to decide where to spend the next marketing dollar.
Executive summary
The short version for busy owners.
Four unit costs decide a roofing shop's economics: cost per lead (CPL), cost per appointment (CPA), cost per inspection (CPI), and cost per sale (CPS). Each one tells a different story.
If you only count the price a vendor charges, you are missing 40 to 60% of your true cost. Add appointment-setting labor, confirmation cost, and no-show losses to get the real number.
The right scoreboard is cost per sale measured against gross profit per job and lifetime value (CAC against LTV), not the cheapest unit at the top of the funnel.
A $400 qualified appointment that closes at 35% beats a $150 shared lead that closes at 8%. The cheaper unit is the more expensive customer.
Key takeaways
What to remember when this page closes.
- CPL is an input. CPS is the outcome. Optimize for CPS and a healthy CAC-to-LTV ratio.
- True CPA includes vendor fee, setter labor, CRM and SMS cost, and the dollar value of no-shows.
- Fair market for a qualified, phone-verified roofing appointment in 2026 is roughly $200 to $450.
- Aim for CAC at or below 20% of average gross profit per job, with LTV at least 3x CAC.
- Compare vendors on a 60-day side-by-side, scored on cost per sale, not cost per appointment.
- Beware vendors that quote per appointment without defining what counts as a qualified appointment.
Section 1
The four unit costs every roofing owner should know
CPL, CPA, CPI, and CPS measure four different points in your funnel. Confuse them and you will buy the wrong thing.
- Cost per Lead (CPL): the all-in cost to generate a name and a phone number. Ad spend, lead vendor fees, and the labor to capture the lead.
- Cost per Appointment (CPA): the all-in cost to put a confirmed appointment on a rep's calendar. CPL plus appointment-setting labor, confirmation costs, and no-show losses.
- Cost per Inspection (CPI): the all-in cost to complete an on-site roof inspection. CPA plus the dispatch cost and the rolled cost of inspections that the homeowner missed or partially attended.
- Cost per Sale (CPS): the all-in cost to close one signed contract. CPI plus the proposal and follow-up labor required to convert an inspection into a contract.
Each metric depends on the one before it. The mistake most owners make is optimizing the wrong one. A cheaper CPL with worse conversion produces a more expensive CPS. The math is unforgiving.
Section 2
How to calculate your true cost per appointment
Add four numbers and divide by appointments booked in the same period.
- Lead and ad spend.
- Appointment-setting labor (in-house staff or vendor fees).
- Confirmation cost (CRM, SMS, voice calls).
- No-show losses (rep time, fuel, opportunity cost on the slot).
The fourth number is the one most shops skip. A no-show is not free. It is a paid lead, a paid setter touch, a paid CRM workflow, and a billed rep hour with no revenue attached. If your no-show rate is 25%, every four appointments you book carry the cost of a fifth that never happened.
Section 3
Fair market rates in 2026
| Source | CPL | CPA | Realistic close rate | Implied CPS |
|---|---|---|---|---|
| Raw web lead (you book) | $25 to $80 | $120 to $250 | 5 to 12% | $1,000 to $2,800 |
| Shared aggregator lead | $60 to $150 | $180 to $320 | 4 to 9% | $1,400 to $3,500 |
| Canvassed door knock | n/a | $150 to $280 | 10 to 18% | $900 to $2,200 |
| Self-booked appointment | n/a | $120 to $300 | 15 to 25% | $500 to $1,500 |
| Qualified, phone-verified appointment | n/a | $200 to $450 | 25 to 40% | $500 to $1,400 |
Section 4
CPL vs CPA vs CPI vs CPS, side by side
| Metric | What it measures | What hides inside it | Why it matters |
|---|---|---|---|
| CPL | Cost to generate a contact | Bad numbers, junk leads, duplicates | Useful to compare lead sources, but not a decision metric on its own. |
| CPA | Cost to book a confirmed appointment | Setter labor, no-show losses, confirmation tooling | Better signal than CPL because it requires real homeowner engagement. |
| CPI | Cost to complete an inspection | Drive time, partial shows, dispatch overhead | The first metric that reflects field reality. |
| CPS | Cost to close one signed contract | Sales labor, follow-up, proposal cost | The only unit cost that ties directly to revenue and margin. |
Section 5
ROI, CAC, and LTV in one view
Three numbers turn unit costs into a business view.
- ROI: revenue from closed contracts divided by total marketing spend in the same period. Most roofing shops should target 5x to 10x on retail and 8x to 15x on insurance.
- CAC (Customer Acquisition Cost): total marketing and sales spend divided by new customers acquired. Healthy roofing CAC sits at or below 20% of average gross profit per job.
- LTV (Lifetime Value): average gross profit per customer over the relationship, including repairs, repeat work, and referrals. Healthy roofing LTV is at least 3x CAC.
A shop with a $1,200 CPS, a $4,800 average gross profit per job, and a 1.4x repeat-and-referral multiplier is running at roughly 6:1 LTV-to-CAC. That is a business worth scaling. A shop with a $1,200 CPS and a $2,500 gross profit per job is running at roughly 2:1, and every new dollar of spend makes the problem bigger.
| Scenario | CPS | Avg gross profit / job | LTV multiplier | LTV : CAC |
|---|---|---|---|---|
| Cheap leads, low close rate | $2,200 | $3,500 | 1.2x | 1.9 : 1 |
| Mid-market mix | $1,500 | $4,500 | 1.3x | 3.9 : 1 |
| Qualified appointments, disciplined sales | $1,100 | $5,200 | 1.5x | 7.1 : 1 |
Section 6
Why a higher unit price often wins
A $400 qualified appointment that closes at 35% costs $1,143 per signed contract. A $150 shared lead that closes at 8% costs $1,875 per signed contract. The cheaper unit is the more expensive customer once you do the division.
Cheap units also carry hidden taxes. Lower close rates put pressure on reps, who burn out faster. More no-shows raise truck and fuel cost per sale. More follow-up attempts crowd the CRM and slow response on the next lead. The line item on the invoice is the smallest cost in the system.
Three perspectives
How three honest reviewers would frame this.
Optimistic
Once owners track CPS and LTV-to-CAC weekly, the right vendor becomes obvious. Most shops stop chasing cheap leads inside 60 days.
Balanced
Cost per appointment is a starting point, not a decision. Pair it with close rate, average ticket, and gross margin before changing vendors.
Critical
Every vendor benchmark, including ours, is self-serving to some extent. Run a 60-day side-by-side with two sources before trusting any of these numbers.
Decision framework
A practical way to choose.
Find the row that matches your situation. Use it as a starting point, not a verdict. A short strategy call will sharpen the answer for your specific market.
| If this describes you | Recommended path | Why |
|---|---|---|
| You spend under $5,000 a month on leads | Track CPS and CAC in a spreadsheet for 60 days before changing anything. | Volume too low to draw conclusions without a real sample. |
| You spend $5,000 to $20,000 a month | Test a qualified-appointment source against your current spend, 50/50, for one quarter. | Enough sample to compare close rates and CPS honestly. |
| You spend over $20,000 a month | Hire a dedicated revenue operations lead to manage CPS and LTV-to-CAC weekly. | Spend is large enough that a 10% improvement pays the salary. |
| CAC is above 25% of average gross profit per job | Tighten qualification before spending more. Cheap volume is not the answer. | Adding spend on a broken funnel raises CAC faster than it raises revenue. |
Questions answered
What contractors ask before they start.
- What is a fair price for a qualified roofing appointment?
- Most U.S. markets fall between $200 and $450, depending on geography, season, and qualification standard.
- How is cost per appointment different from cost per lead?
- A lead is a name and a number. An appointment is a confirmed time on a rep's calendar with a qualified homeowner. The work to bridge the two is real cost.
- Why are some vendors so much cheaper?
- Cheaper usually means looser definitions. A $99 appointment that shows up half the time costs more than a $400 appointment that shows up 90% of the time.
- How do I compare two vendors fairly?
- Run them for 60 days side-by-side. Compare cost per sale and LTV-to-CAC, not cost per appointment.
- What is a healthy CAC for a roofing shop?
- CAC at or below 20% of average gross profit per job is healthy. Above 30% means you are buying revenue, not building a business.
- Should I in-source appointment setting?
- Only if you can build a team that hits the same qualification standard a specialist vendor does. Most shops underestimate the training and tooling required.
- Does cost per appointment vary by season?
- Yes. Storm season tightens supply and raises cost. Build a seasonal budget instead of a flat monthly one.
Related guides
Keep reading where it helps you decide.
Pricing
What an appointment with PreBooked Roofing Leads costs.
Read guide
Pay Per Appointment
How the pay-per-appointment model compares to lead buying.
Read guide
Roofing Lead Pricing
What you should expect to pay across lead types.
Read guide
Roofing Sales KPIs
The six numbers that decide if your shop grows.
Read guide
Roofing Customer Acquisition Cost
CAC explained, with healthy ranges and benchmarks.
Read guide
Roofing Lead Qualification
Score leads before your reps drive anywhere.
Read guide
Appointment Qualification Process
The standard a real appointment must meet.
Read guide
Book your strategy call
See if your market is still open.
We work with one roofing company per Metro Area. In 30 minutes we will review your service area, pricing, and capacity, then tell you straight whether we are a fit. No pressure, no commitment on the call.