Per-client profitability is the margin remaining after subtracting every cost directly attributable to a client — labor, software licenses, tools, and a fair share of shared overhead — from the revenue that client generates. Without this number, you are managing a portfolio of clients by gut feel, not by financial reality. According to Service Leadership data cited by SuperOps, 28% of MSPs aren't profitable at all, and those that are average only 8% profit margin — a figure that makes per-client clarity non-negotiable.
Key Takeaways
- Per-client margin = client revenue minus all direct and allocated costs, divided by client revenue.
- Most MSPs underestimate true labor cost by 20–40% because burden, PTO, and non-billable time are excluded, per Flexpoint's 2026 analysis.
- Shared engineering time should be allocated by actual time logged per client, not by revenue share.
- A client consuming disproportionate escalations, old-hardware tickets, or uncompensated calls is structurally unprofitable even if the contract looks fine on paper.
- Healthy managed-services gross margins run 50–60%; clients consistently below that threshold warrant repricing or offboarding.
What Is the Formula for MSP Client Profitability?
Per-client profitability is calculated as:
Client Margin (%) = (Client Revenue − Client Direct Costs − Client Allocated Costs) ÷ Client Revenue × 100
Each term defined:
- Client Revenue — all recurring managed-services fees, project billings, and product resale billed to that client in the period.
- Client Direct Costs — costs that exist only because of that client: dedicated software licenses, client-specific tools, hardware procured for resale, and any technician time logged exclusively to that client's tickets.
- Client Allocated Costs — a fair share of shared costs (engineering time, PSA/RMM platform fees, NOC support) distributed across the client base using a defensible allocation method (see the next section).
The result is a per-client contribution margin that can be compared across your book of business and against service-line benchmarks.
Worked Hypothetical Example
The following is a hypothetical illustration. All inputs — including every line item, dollar amount, and the resulting margin — are invented for demonstration purposes only and are not observed benchmarks.
Consider a hypothetical MSP with a client — call them Client A — on a $6,000/month managed-services agreement. Hypothetical direct and allocated costs for the month:
| Cost item | Hypothetical monthly amount |
|---|---|
| Dedicated client-specific software licensing (hypothetical) | $420 |
| Client-specific security tool (hypothetical) | $180 |
| Technician time logged to Client A tickets — hypothetical 40 hrs at a hypothetical fully burdened rate | $2,600 |
| Allocated share of shared RMM/PSA platform (hypothetical) | $200 |
| Allocated share of shared NOC time (hypothetical) | $350 |
| Total costs (hypothetical) | $3,750 |
Hypothetical client margin: ($6,000 − $3,750) ÷ $6,000 × 100 = 37.5%
That is below the 50–60% gross margin that healthy, mature MSPs consistently achieve on managed services. The gap is worth investigating before the next renewal.
For a deeper look at how to structure your accounts to capture these numbers cleanly, see Chart of Accounts for MSPs: A Practical Structure Guide.
Allocation Method: How to Distribute Shared Engineering Time
Allocation method is where most MSP per-client margin calculations break down. Splitting shared costs by revenue percentage is the most common approach — and the most misleading. A high-revenue client is not necessarily your highest-cost client.
The preferred allocation basis for shared engineering time is actual hours logged per client, pulled from your PSA (ConnectWise, Autotask, HaloPSA, etc.). This approach:
- Reflects real consumption of your team's capacity.
- Surfaces clients who generate disproportionate ticket volume relative to their contract value.
- Gives you a defensible number to bring to a repricing conversation.
Step-by-Step Allocation Process
- Pull total technician hours logged for the period from your PSA, broken out by client.
- Calculate each client's share of total hours. If Client A consumed 40 of 400 total logged hours, their share is 10% (hypothetical illustration).
- Apply that share to each shared cost pool. If your RMM platform costs $2,000/month, Client A's allocated share would be $200 at that hypothetical 10% share (hypothetical illustration).
- Repeat for each shared cost pool: NOC time, vCIO time, helpdesk overhead, shared tooling.
- Sum direct + allocated costs and run the margin formula above.
What About Fully Burdened Labor Rates?
Labor is typically the largest cost pool and the most underestimated. As Flexpoint's 2026 analysis notes, most MSPs underestimate their true labor cost by 20–40%. A technician earning a $90,000 salary often carries a fully burdened cost of $130,000–$145,000 annually once benefits, payroll taxes, PTO, training time, and non-billable internal meetings are included. Divide that annual burden by usable hours to get your real cost per hour — that is the rate you apply to hours logged per client.
Scopestack's KPI guide illustrates the principle: an MSP charging $150/hour for network configuration with $65/hour in direct labor cost plus $10/hour in allocated software licensing carries a 50% gross margin on that service. The same logic applies at the client level — every hour logged must carry its full burdened cost, not just the base salary.
For MSPs managing deferred revenue on prepaid contracts, the allocation timing matters too. See MSP Deferred Revenue: How to Record and Release Prepaid Contracts for how to handle that correctly before running margin calculations.
Which Clients Are Structurally Unprofitable?
A client is structurally unprofitable when the economics of serving them are broken at the contract level — not just in a bad month. The distinction matters because a one-time project overrun is fixable; a client whose environment generates chronic ticket volume that no contract price can absorb is a structural problem.
Warning Signs to Look For
Pull these signals from your PSA and map them to client margin:
- High escalation rate. Clients requiring frequent L2/L3 escalations consume senior engineer time at a cost that rarely matches the contract value.
- Old hardware generating repeat tickets. Flexpoint's 2026 analysis notes that SMB clients on legacy agreements can consume 3× more labor per endpoint than mid-market clients — a pattern that is invisible without per-client cost tracking.
- Uncompensated calls and meetings. Time spent on calls that isn't logged to a ticket or billed is a hidden cost. Which clients are you spending the most time on calls with? That question has a dollar answer.
- Pricing that hasn't kept pace with scope. Cloud backup costs, for example, can increase 20–30% year-over-year as client data grows, while the contract price stays flat — a pattern Flexpoint specifically identifies as a margin leak.
- Low contract value relative to endpoint count. A client paying below your per-endpoint floor is mathematically unlikely to be profitable once all costs are allocated.
The Margin Threshold Test
Compare each client's calculated margin against your service-line targets:
| Service line | Healthy gross margin target | Watch threshold |
|---|---|---|
| Managed services | 50–60% | Below 40% |
| Professional services | 45–60% | Below 40% |
| Break/fix and T&M | 30–40% | Below 20% |
Any client whose managed-services margin sits below 40% warrants a cost audit. Any client below 20% on any service line is almost certainly subsidized by the rest of your book.
Syncro's financial KPI guide makes the point clearly: Client A paying $10,000/month at 40% profit and Client B paying $5,000/month at 65% profit are not equivalent. Revenue size obscures margin quality. The $5,000 client may be more valuable to your business.
How to Build a Per-Client Margin Report
You do not need specialized software to run this analysis, though tools like MSPCFO and Cognition360 automate it for ConnectWise shops. The manual version works in a spreadsheet:
- Export client revenue by period from your billing system or PSA.
- Export hours logged per client from your PSA for the same period.
- Calculate each client's labor cost using your fully burdened hourly rate.
- Add direct costs (client-specific licenses, hardware COGS).
- Allocate shared costs using each client's percentage of total logged hours.
- Run the margin formula for each client.
- Rank clients by margin, not by revenue.
Run this monthly. A single snapshot is useful; a trend line is actionable. A client whose margin is declining quarter-over-quarter is telling you something before it becomes a crisis.
For MSPs that want clean financials as the foundation for this analysis, Outsourced Accounting for MSPs: Cost, Scope & What to Expect covers what a proper accounting engagement should include.
What to Do With the Results
Per-client margin data drives three decisions:
Reprice. If a client's margin is below threshold and the relationship is otherwise strong, bring data to the renewal conversation. A cost-per-ticket or cost-per-endpoint breakdown is harder to argue with than a rate card.
Restructure the agreement. Some clients are unprofitable because the scope is wrong, not the price. Capping included hours, adding a hardware refresh requirement, or moving from all-inclusive to tiered support can restore margin without losing the client.
Offboard. Some clients are structurally unprofitable at any reasonable price — usually because their environment is too complex, their expectations are misaligned, or their contract predates your current cost structure by several years. Holding them costs you capacity that could serve a profitable client. As Flexpoint notes, best-in-class MSPs consistently achieve 19%+ adjusted EBITDA. Getting there requires making deliberate choices about which clients belong in your book.
For the financial operations infrastructure that makes this analysis repeatable — clean books, a properly structured chart of accounts, and a monthly close that gives you current numbers — see what Laya delivers for IT services and MSPs.
Frequently Asked Questions
How do you calculate profitability per MSP client?
Per-client profitability = (Client Revenue − Direct Costs − Allocated Shared Costs) ÷ Client Revenue × 100. Direct costs include client-specific licenses and logged technician time at fully burdened rates. Allocated costs distribute shared tools and overhead by each client's share of total hours logged.
What is a good gross margin per client for an MSP?
For managed services, healthy mature MSPs target 50–60% gross margin per client. Professional services typically target 45–60%. Break/fix and T&M work runs 30–40% when priced correctly. Clients consistently below these thresholds warrant repricing or offboarding.
Why do MSPs underestimate their true labor cost?
Most MSPs calculate labor cost using base salary only. The fully burdened rate — which includes payroll taxes, benefits, PTO, training time, and non-billable internal hours — is typically 20–40% higher than the base salary figure. Using the unburdened rate makes every client look more profitable than they are.
How should shared RMM and PSA costs be allocated across clients?
Allocate shared platform costs by each client's percentage of total technician hours logged in the period, not by revenue share. Revenue-based allocation overstates the cost of high-revenue clients and understates the cost of high-ticket-volume clients — the exact clients most likely to be unprofitable.
Laya provides this content for informational purposes only. This material does not constitute tax, legal, or accounting advice. Please consult your own tax, legal, and accounting advisors before engaging in any transaction.
If you want clean, current financials as the foundation for per-client margin analysis, book an intro with Laya to see how we support MSPs and IT services firms.
Disclaimer: This article is for general informational purposes only and does not constitute financial, tax, legal, or accounting advice. The information provided is not a substitute for consultation with a qualified professional. Consult a licensed accountant, CPA, or financial advisor for advice specific to your situation.