Cost per lead, or CPL, is the simplest unit economics number in local marketing. Total marketing spend divided by total leads. That is the whole formula. And yet, most operators calculate it wrong, or do not calculate it at all.
Getting CPL right changes how you think about every channel, every campaign, every contractor pitching you "guaranteed leads." Let us do this properly.
What Counts as a "Lead"
Before you can divide, you have to agree on what you are counting. A lead is any person who has expressed enough interest to hand over contact info or initiate a call. Practically:
- Inbound phone calls over 30 seconds (anything shorter is usually a wrong number or hang-up)
- Form submissions
- Text messages and chat conversations that lead to a contact info exchange
- Walk-ins (if you have a physical location)
- Booking requests through Google Business Profile, Yelp, or similar
What does not count: a visit to your website, a social follow, or an ad click. Those are traffic, not leads.
What Counts as "Marketing Spend"
This is where most operators underreport. True marketing spend includes:
- Ad platform dollars (Google, Meta, LSAs, Nextdoor, Angi, Yelp ads)
- Agency or consultant fees
- Software subscriptions (CRM, call tracking, rank trackers)
- SEO costs (hosting, content, links if applicable)
- Print, direct mail, truck wraps, signage amortized over their life
- Sponsorships, community marketing, trade shows
Salary of a dedicated marketing person should also be allocated, though many small operators track it separately. Whatever you do, be consistent.
The Formula, Properly
Total Marketing Spend (monthly) / Total Leads (monthly) = Cost Per Lead
Example: you spend $6,000 on Google Ads, $1,500 on LSAs, $1,200 on a local SEO contractor, $300 on CRM and call tracking. Total: $9,000. You generate 180 leads. CPL = $50.
Plug your own numbers into our cost per lead calculator and you will have a per-channel breakdown in under a minute.
Why Per-Channel CPL Matters More Than Overall
The overall number is the number you brag about. The per-channel number is the number that runs your business. If your overall CPL is $50 but your Google Ads CPL is $140 and your LSA CPL is $28, you are overpaying for Google Ads and should shift budget.
Per-channel requires that you tag every lead with its source. Call tracking numbers per channel. UTM parameters on every link. Form field asking "how did you hear about us." Do all three and your source attribution will be 90 percent accurate.
Calculate CPL by Channel
Enter spend and leads per channel. See where your money actually works.
Calculate My CPLRealistic CPL Benchmarks
CPL varies enormously by industry, geography, and lead quality. Rough ranges for common home services, based on what we see across hundreds of accounts:
- HVAC: $35-$120 on Google Ads, $20-$60 on LSAs
- Plumbing: $40-$140 on Google Ads, $25-$65 on LSAs
- Roofing: $75-$300 on Google Ads, $40-$120 on LSAs
- Electrical: $45-$150 on Google Ads, $30-$80 on LSAs
- Pest Control: $30-$90 on Google Ads, $20-$55 on LSAs
- Landscaping: $25-$85 on Google Ads, varies on LSAs
These are not gospel. Your market could be higher or lower. The wider point: LSAs are almost always cheaper per lead than traditional Google Ads for home services. If you are not running them, you are leaving margin on the table.
CPL Is Not the Whole Story
Two channels with the same CPL can produce very different business outcomes. What matters is cost per booked job, not cost per lead.
Example: Channel A has a $40 CPL and 50 percent of leads book. Cost per job = $80. Channel B has a $65 CPL but 70 percent of leads book. Cost per job = $93. Channel A wins on CPL but is better on booking rate? The CPL alone misled you.
Always pair CPL with booking rate. And pair cost per job with average ticket and lifetime value, which we cover in our customer value calculator.
How to Use CPL to Make Decisions
- Shift budget to the channels with lowest cost per booked job. Not lowest CPL alone.
- Investigate outliers. A channel that suddenly doubled its CPL needs attention. Landing page broken? Competitor entered? Ad platform auction heating up?
- Set a ceiling. Your max allowable CPL is a function of average ticket, close rate, and gross margin. Decide the ceiling, then turn off anything above it.
- Compare to lifetime value. A $120 CPL looks bad until you realize a customer is worth $3,400 over 4 years.
The Traps
- Counting bad leads as leads. If 30 percent of your "leads" are wrong numbers, spam form fills, or out-of-area, clean them out before computing CPL.
- Ignoring attribution. A customer who saw your truck, heard your radio ad, searched your name, and clicked your Google Ad is not a "Google Ad lead," but it will report that way. Multi-touch is real. Be humble about single-touch numbers.
- Confusing cost with investment. Your website, SEO, and brand equity generate leads over years. Amortize those costs, do not dump them into a single month.
Monthly CPL Review
Pick the first Monday of the month. Pull lead counts by channel. Pull spend by channel. Compute CPL and cost per booked job per channel. Compare to the previous 3 months. Act.
Takes 45 minutes. Pays for itself many times over.
Get Your CPL in Under a Minute
Free calculator. Per-channel breakdown. No signup.
Start the CalculatorRelated Tools
- Customer Lifetime Value Calculator - Your max CPL ceiling starts here.
- Missed Call Revenue Calculator - The leaks after the lead comes in.
- Negative Keyword Generator - Kill the queries inflating your CPL.