How to Calculate the Lifetime Value of a Service Customer
Customer lifetime value (LTV) for a trades business is your average ticket × jobs per customer per year × years a customer stays with you. Multiply by your gross margin to get lifetime gross profit, then subtract what it costs to win a customer. You can work it out in an afternoon from 24 months of invoices in your field-service software or accounting system. It's the number that tells you what a missed call from a new customer is really worth, because that caller wasn't one job. They were every job they would have booked with you afterward.
Why lifetime value matters more than the first ticket
A $250 drain call looks like a small loss when it goes to voicemail. It looks different when that homeowner would have called you for the water heater two years later and recommended you to a neighbor.
Trades that run on repeat work feel this most. An HVAC customer on a maintenance plan, a pest control account on quarterly service, a lawn care client on weekly mowing: the first call opens a relationship that can run for years. Even one-off trades like roofing and garage doors get repeat work and referrals from customers who were happy the first time.
When you know your LTV, three decisions get easier: how much you can spend to win a customer, what answering the phone is worth, and which customers to protect when you're too busy to serve everyone.
Calculate it in five steps
1. Export 24 months of invoices
Pull every paid invoice from the last two years out of whatever you use, whether that's Jobber, Housecall Pro, ServiceTitan, QuickBooks or a spreadsheet. You need four columns: customer name or ID, invoice date, invoice total, and job type. Two years gives you enough history to see who came back.
2. Find your average ticket
Average ticket = total revenue ÷ number of jobs. Divide by jobs, not customers. Take out obvious outliers first. One commercial contract or one full-house repipe can drag the average far above what a normal customer spends.
3. Find how often a customer buys
Jobs per customer per year = number of jobs ÷ number of unique customers ÷ years of data. If your two years show 1,200 jobs from 600 customers, that's 2 jobs per customer over two years, or 1 per year.
4. Estimate how long customers stay
This is the hard one, because you need more history than you have. A practical method: take the customers who first bought from you in your earliest full year, and count what share bought again the following year. That's your rough retention rate. Expected years as a customer ≈ 1 ÷ (1 − retention rate). If half come back each year, the average customer stays about two years. If you can't measure it, pick a conservative number of years and write down that it's an assumption.
5. Multiply, then convert to profit
Revenue LTV = average ticket × jobs per year × years retained. Then gross-profit LTV = revenue LTV × gross margin, where gross margin is revenue minus parts, materials and direct labor, divided by revenue. Finally, subtract your customer acquisition cost: marketing and sales spend over a period divided by new customers won in that period. What's left is what a new customer is worth to the business after it paid to get them.
A worked example
These are example inputs to show the arithmetic. They are not industry averages. Replace every one with yours.
| Step | Example input | Result |
|---|---|---|
| Average ticket | $300,000 revenue ÷ 1,000 jobs | $300 |
| Jobs per customer per year | 1,000 jobs ÷ 500 customers ÷ 2 years | 1.0 |
| Years retained | Retention 60% → 1 ÷ (1 − 0.6) | 2.5 years |
| Revenue LTV | $300 × 1.0 × 2.5 | $750 |
| Gross-profit LTV | $750 × 50% margin | $375 |
| Minus acquisition cost | $15,000 marketing ÷ 250 new customers = $60 | $315 |
In this example, a new customer is worth $750 in revenue over their life with you, even though the first ticket is $300. That's the gap between what a missed call looks like and what it costs.
Should referrals count?
Only the ones you can trace.
Happy customers send neighbors, and those neighbors are worth something. But referral value is the easiest place to inflate LTV with wishful thinking. If your intake form or booking software records "how did you hear about us," count the new customers who named an existing customer, and add their value to the referrer's line. If you don't track it, leave referrals out and treat them as upside. A conservative LTV you trust beats a big one you can't defend.
Common mistakes
- Letting one big job set the average. Remove outliers or calculate LTV separately for residential service and large installs.
- Mixing customer types. Maintenance-plan members and one-time emergency callers behave differently. Calculate them separately if you can.
- Counting plan revenue twice. If a service agreement is billed monthly and the visits are also invoiced, count the money once.
- Using revenue when you mean profit. Revenue LTV is fine for comparing against missed calls. For deciding how much to spend on ads, use gross-profit LTV minus acquisition cost.
- Never updating it. Recalculate once a year. Price changes, new services and a maintenance plan launch all move the number.
Using LTV in the missed-call calculator
The Missed Call Math calculator asks for an "average customer value." You have two honest choices.
- First-job ticket gives the conservative floor: what the missed calls cost you this month.
- Revenue LTV gives the fuller picture: what those lost customers would have been worth over the years they'd have stayed.
Run it both ways. If the first-ticket figure already covers the cost of answering every call, the decision is easy. If only the LTV figure does, you're betting on retention, so make sure your retention number is measured, not hoped for. For trades with recurring work, see how the math plays out on our HVAC, pest control and landscaping pages.
Frequently Asked Questions
Every new customer starts with a phone call
KaiCalls answers on the first ring, books the job and texts you the handoff, so the first call turns into the second, third and tenth. From $10/mo
Get the details
Drop your email and we'll send everything over.