Your Biggest Client Might Be Losing You Money

Revenue Is Not Profit
Every contractor knows their top clients by revenue. The property management company that sends 200 service calls per year. The GC that pulls you into every project. The building owner with 40 locations on a master service agreement.
But here's what I've seen consistently across the 2,200+ contractors I've reviewed: the biggest customer by revenue is often not the most profitable — and sometimes isn't profitable at all.
Revenue per customer across the dataset ranges from $4,000 to $132,000. That 33x variance isn't just about company size. It's about fundamentally different customer relationships that drive fundamentally different margins.
The Composite Scorecard Problem
When I build financial scorecards for contractors, I look at multiple metrics per customer — not just revenue. Here's what the data reveals about how differently contractors monetize their customer base:
| Company Profile | SA Revenue | Customers | Rev/Customer | Margin | Collection % |
|---|---|---|---|---|---|
| Deep accounts, high value | $78.2M | 902 | $87K | 42% | 91% |
| Broad base, strong margins | $53.8M | 1,391 | $39K | 44% | 94% |
| Concentrated, premium | $14.3M | 108 | $132K | 36% | 92% |
| Ultra-lean operation | $8.0M | 99 | $81K | 37% | 92% |
| Volume play, thin margins | $35.3M | 703 | $50K | 19% | 68% |
Look at the last row: $35.3M in revenue, $50K per customer — sounds great. But 19% margins and 68% collection rate. After accounting for the uncollected revenue, this company is generating roughly $4.7M in gross profit from $35M in revenue. Compare that to the first row: $78.2M at 42% margins and 91% collection, generating roughly $30M in gross profit.
The first company makes 6x more profit on 2x the revenue. The difference? Customer quality.
Three Types of Unprofitable Customers
After analyzing hundreds of contractor financials, unprofitable customer relationships cluster into three types:
Type 1: The Slow Payer
This customer generates decent revenue at decent margins — on paper. But they take 90+ days to pay. Your invoiced revenue shows up as margin, but the cash doesn't arrive for 3 months. Meanwhile, you've paid your techs, your material suppliers, and your subcontractors.
From the data: one contractor billed $139M and collected only $94M — a 68% collection rate. I guarantee their top customers by revenue include some of the worst payers. At a 68% collection rate, a $500K customer is really a $340K customer — and the $160K gap is financing that customer's business with your cash.
The fix: track collection rate by customer, not just in aggregate. Your average DSO might be 55 days, but if Customer A pays in 20 days and Customer B pays in 95 days, the average is meaningless. DSO by customer reveals who's actually profitable on a cash basis.
Type 2: The Scope Creep Specialist
This customer approves jobs, then adds requests during execution. "While you're here, can you also look at..." The tech does the work because it's faster than refusing. No change order. No additional billing. The job closes at lower margin than quoted, and nobody connects the dots.
The pattern is visible in the data through budget variance. Companies with tight change order processes (one in the dataset processed 8,747 change orders at 99.6% approval rate) capture this revenue. Companies without change order discipline absorb it as cost.
If a customer consistently generates jobs that come in over budget, the customer isn't the problem. Your scope management process with that customer is the problem.
Type 3: The Relationship Trap
You've worked with this customer for 15 years. They're "loyal." They send steady work. But their pricing hasn't been updated in 5 years. Their service agreement was priced when your labor costs were 25% lower. Their service calls are further away than your average, so drive time eats into technician utilization.
This is the hardest type to fix because it feels disloyal to reprice a long-standing relationship. But loyalty that costs you money isn't loyalty — it's a subsidy.
From the data: one contractor was losing $3.8 million per year on service agreements. Negative 23% margins. Long-standing customers with contracts priced years ago. They had no idea until we ran the per-customer profitability analysis. The loyalty was real. The profitability was not.
How to Calculate Customer Profitability
Most accounting systems track revenue by customer. Few track profitability. Here's how to build a customer profitability analysis:
Step 1: Revenue by customer. Pull from your invoicing system. Include all revenue: service calls, projects, service agreements, T&M.
Step 2: Direct costs by customer. This requires job-level cost tracking. If your jobs are properly costed, aggregate labor, materials, and subcontractor costs by customer.
Step 3: Collection by customer. Adjust revenue by actual collection rate. A $200K customer who pays 95% generates $190K in real revenue. A $200K customer who pays 70% generates $140K.
Step 4: Service intensity. How many service calls per dollar of revenue? How many callbacks? How much drive time? These aren't direct costs, but they indicate which customers consume disproportionate operational resources.
The calculation:
Customer Profitability = (Revenue x Collection Rate) - Direct Costs - Allocated Overhead
When you run this for your top 20 customers, at least 2-3 of them will surprise you. That's always been the case with every contractor I've worked with.
The 80/20 That Matters
In the SA (service agreement) data, the power law is extreme:
| SA Value Tier | % of All SAs | % of Total Revenue |
|---|---|---|
| Under $1K | 26.6% | 0.8% |
| $1K-$5K | 34.2% | 5.9% |
| $5K-$25K | 30.5% | 22.1% |
| $25K-$100K | 7.2% | 21.3% |
| $100K+ | 1.4% | 49.9% |
1.4% of service agreements generate 50% of revenue. Those top-tier contracts — averaging $520K each — are the ones worth protecting, growing, and measuring meticulously. The long tail of $500-$2,000 SAs is necessary for pipeline and market presence, but the economic engine is the top 1-2%.
This means customer profitability isn't just an interesting exercise — it's existential. If your top 5 customers represent 40% of revenue and one of them is unprofitable, you have a structural problem that no amount of new business development can fix.
Multi-Property Customers: The Deepest Relationships
The data also reveals that the most valuable customer relationships are multi-property — a single customer with service agreements across multiple locations. Some contractors service 13+ properties per SA.
These relationships are:
- More predictable (recurring revenue across many locations)
- More defensible (switching costs are high when 40 locations are under contract)
- Higher margin (efficiency gains from familiarity with the buildings)
- Less sales cost (one relationship manager, many properties)
If you have customers with single-property SAs, the growth strategy is account penetration — expanding to their other properties — not finding new customers. This is especially true for property management companies that manage 50-500+ properties.
What To Do With Unprofitable Customers
Option 1: Reprice. Most unprofitable customers don't know they're being subsidized. A transparent conversation — "Our costs have increased 20% since we set this pricing, and we need to adjust" — is usually received better than contractors expect. The alternative is losing you as a vendor, which is expensive for them too.
Option 2: Change the scope. If a customer is unprofitable because of service intensity (too many callbacks, excessive scope creep), restructure the relationship. Tighter SLAs, change order requirements, or a different service tier.
Option 3: Fire the customer. This is the hardest one. But if a customer is consistently unprofitable, consumes disproportionate resources, and won't accept repricing — the resources you free up can be deployed to profitable customers or new business development. Every hour a tech spends on an unprofitable account is an hour they're not spending on a profitable one.
Option 4: Reclassify. Some "unprofitable" customers generate indirect value — referrals, market credibility, a flagship project for your portfolio. Quantify that value. If a $50K customer generates $200K in referral revenue, they're actually your most profitable customer.
When Customer Profitability Analysis Doesn't Apply
Under $2M in revenue, you probably have 20-50 customers and know them all personally. The analysis is intuitive at that scale — you know who pays fast and who doesn't.
Project-based GCs with one-off jobs don't have "customer profitability" in the recurring sense. Their equivalent is project profitability by type of work and type of client.
If you don't have job-level cost tracking, you can't calculate customer profitability accurately. Fix job costing first, then layer on customer analysis.
The Bottom Line
Revenue tells you who your biggest customers are. Customer profitability tells you who your best customers are. They're often not the same.
Run the numbers. Rank your top 20 customers by profitability, not revenue. Identify the slow payers, the scope creepers, and the underpriced legacy relationships. Then have the conversations — reprice, restructure, or redirect your resources to the customers who actually generate wealth for your business.
Q: How does Level help with customer profitability analysis? A: We build a customer profitability dashboard using your QuickBooks and field service data — revenue, direct costs, collection rate, and service intensity per customer. We identify unprofitable relationships, track margin trends by customer, and help you build repricing strategies backed by data. The first audit is free.
Q: How often should I review customer profitability? A: Quarterly for your top 20 customers. Annually for the full customer base. Repricing conversations should happen at SA renewal time — not mid-contract — unless a customer's profitability has deteriorated significantly.
Q: What if my biggest customer is also my least profitable? A: That's more common than you'd think. The conversation is straightforward: show them the data, explain what's changed (labor costs, material costs, scope), and present a revised pricing structure. If they're a good customer, they'll understand. If they leave over a reasonable price increase, they were never a good customer — they were a discount buyer.
About the author
Sam Young
Founder of Level. Former PE investor at Vector Capital and investment banker at Credit Suisse. Built AI-powered accounting products at BuildOps, working directly with over 1,000 contractors across HVAC, plumbing, electrical, and mechanical trades. Co-founded Overline, where his team has analyzed over $1B in real estate assets. Currently advises PE-backed contractor portfolios. Stanford MBA.
LinkedInReady to see where your money is going?
Get a free job profitability audit in 48 hours.
Get Your Free Audit