Ask most contractors what it costs them to land a new customer, and you’ll get a shrug. That’s not a knock on anyone — it’s just not a number most people ever learned to track. But it’s one of the few numbers that tells you, in plain terms, whether your marketing is actually working or just feels busy.
By the end of this post, you’ll know how to calculate it in five minutes, what a “good” number looks like, and the one mistake that makes almost every contractor’s marketing math wrong.
What is CAC? (The simple version)
CAC stands for Customer Acquisition Cost. It just means: how much money you spend, on average, to land one new paying customer.
Here’s the whole formula. It’s not complicated:
CAC = Total Marketing Spend ÷ Number of New Customers
That’s it. Two numbers, one division problem.
A real example
Say you spent $3,000 last month on ads, your website, and any lead-gen tools. That same month, 30 new people became paying customers.
$3,000 ÷ 30 = $100
Your CAC is $100. It costs you $100, on average, to turn a stranger into a customer. Simple so far — the hard part is knowing what to do with that number.
Is $100 good or bad? Here’s how to tell
There’s no single “good” CAC that works for every business. A $100 CAC is amazing for a roofer landing $12,000 roof jobs. It might be way too high for a house cleaner charging $150 a visit.
Here’s a rule of thumb that actually works across trades:
Your CAC should usually land between 10% and 20% of your average job value.
If your average job is $1,800, you want your CAC somewhere between $180 and $360. Go much higher than that, and one of two things is probably true:
- You’re spending money on the wrong marketing channel, or
- Your close rate is too low, so it takes too many leads to land one customer.
This isn’t a hard rule carved in stone, though. A $360 CAC to land a customer worth $15,000 over several years of repeat work is a great deal, even though it looks high on paper. Which brings us to the number that makes CAC actually mean something.
The second number you need: LTGP
LTGP stands for Lifetime Gross Profit. It means: the total profit one customer brings you over the entire time they do business with you — not just their first job.
Here’s why this matters so much. Picture two customers:
- Customer A: A homeowner who calls once for a $400 drain cleaning and you never hear from them again.
- Customer B: A property manager who signs on for quarterly pest control across a 40-unit building, worth $2,000 a year for the next five years.
Customer B is worth roughly $10,000 over time. Customer A is worth $400. If you’re only looking at the first invoice, you’d never guess these two customers should be treated completely differently in your marketing budget.
Once you know a customer’s LTGP, a much smarter rule appears:
You can usually afford to spend 30% to 50% of a customer’s LTGP to acquire them.
That’s why a roofer chasing a property-management contract can justify spending far more per lead than the same roofer chasing one homeowner with a single leaky patch — even if both leads came from the exact same Google ad.
Worked examples across different trades
Numbers land better with real examples. Here are three, using typical industry ranges:
| Trade | Avg. job value | Typical CAC target (10–20%) | If LTGP is 3x the job (repeat customer) |
|---|---|---|---|
| Plumbing (emergency call) | $850 | $85 – $170 | Can justify up to ~$1,275 for a high-value repeat account |
| Roofing (full replacement) | $9,500 | $950 – $1,900 | Can justify up to ~$14,250 for a multi-property owner |
| Lawn care (recurring route) | $2,200/season | $220 – $440 | Can justify up to ~$3,300 for a 5-year customer |
The takeaway: a “high” CAC isn’t automatically bad. A “low” CAC isn’t automatically good. It only means something once you compare it to what that customer is actually worth over time.
Where contractors get this wrong (and it’s almost always the same three mistakes)
Mistake #1: Tracking spend, but not results. Knowing you spent $3,000 on Google Ads tells you nothing by itself. You have to know how many of those clicks turned into actual paying jobs. Without that, you’re guessing.
Mistake #2: Averaging channels that aren’t the same. A $50 CAC from referrals and a $300 CAC from a paid lead-aggregator site are not the same kind of customer, even if you blend them into one “average CAC” number. Blending them hides which channel is actually making you money and which one is quietly losing it.
Mistake #3: Never calculating LTGP at all. This is the big one. Without LTGP, every marketing decision gets made off the very first invoice — which means you might be walking away from your most profitable customers because their first job “wasn’t worth the ad spend.”
Do this five-minute exercise right now
You don’t need new software for this. Grab a notepad or open a blank spreadsheet and do this:
- Write down last month’s total marketing spend. Include ads, your website cost divided by 12, any lead-gen tools, and anything else you’d call “marketing.”
- Count how many brand-new customers you got that month.
- Divide step 1 by step 2. That’s your CAC.
- Pick one typical customer and guess how many total jobs they’ll likely do with you over 3 years. Multiply that by your average profit per job. That’s a rough LTGP.
- Compare. Is your CAC under 30-50% of that LTGP number? If yes, you likely have room to spend more on the channel that’s working. If no, you’ve found a real leak — and now you know exactly where to look.
That’s the whole exercise. Most contractors find one of two things when they finally do this: either they’re spending less than they safely could on a channel that’s actually working well, or they’re spending real money every month on a channel that’s barely breaking even. Both are useful things to find out, and neither one required buying anything.
What to do with what you just found
If your CAC came back higher than it should be, the fix is almost never “spend more on ads.” It’s usually one of these:
- Your close rate is too low. More leads won’t fix a sales process that’s losing winnable jobs. Our Sales Playbook breaks down the exact scripts and objection responses that raise close rate without discounting.
- Leads are going cold before anyone follows up. A lead that never gets a fast callback might as well not exist. See our post on speed to lead for the fix.
- You’re not tracking which channel each customer actually came from. Fix your tracking before you touch your budget — you can’t improve a number you can’t see.
For a full walkthrough of this math using your own trade’s real numbers — including how to calculate LTGP properly for repeat and recurring work — our Revenue Maximization Playbook and Business Leverage & Financing Playbook both work through CAC, LTGP, and acquisition math built around your specific trade.