“True Cost of Service: What Each Client Actually Costs You”
Autotask PSA Datto RMM Datto Backup Microsoft 365 SmileBack HubSpot IT Glue All reports
AI-GENERATED REPORT
You searched for:

True Cost of Service: What Each Client Actually Costs You

A breakdown of cost, hours, revenue, and profit margin per client. Identifies loss-making accounts, cost-per-hour outliers, and concentration risk in your service delivery spend.

Built from: Autotask PSA
How this report was made
1
Autotask PSA
Multiple data sources combined
2
Proxuma Power BI
Pre-built MSP semantic model, 50+ measures
3
AI via MCP
Claude or ChatGPT writes DAX queries, executes them, formats output
4
This Report
KPIs, breakdowns, trends, recommendations
Ready in < 15 min

True Cost of Service: What Each Client Actually Costs You

A breakdown of cost, hours, revenue, and profit margin per client. Identifies loss-making accounts, cost-per-hour outliers, and concentration risk in your service delivery spend.

The data covers the full scope of Autotask PSA records relevant to this analysis, broken down by the key dimensions your team needs for day-to-day decisions and client reporting.

Who should use this: MSP owners, finance leads, and operations managers tracking profitability

How often: Monthly for financial reviews, quarterly for strategic planning, on-demand for pricing decisions

Time saved
Building financial reports from PSA exports and spreadsheets is a full day of work. This report delivers it in minutes.
Margin visibility
Revenue numbers alone do not tell the story. This report connects revenue to cost for true profitability.
Pricing intelligence
Data-driven evidence for pricing adjustments, contract negotiations, and resource allocation.
Report categoryFinancial & Revenue
Data sourceAutotask PSA · Datto RMM · Datto Backup · Microsoft 365 · SmileBack · HubSpot · IT Glue
RefreshReal-time via Power BI
Generation timeUnder 15 minutes
AI requiredClaude, ChatGPT or Copilot
AudienceMSP owners, finance leads
Where to find this in Proxuma
Power BI › Financial › True Cost of Service: What Each Clien...
What you can measure in this report
Executive Summary
Cost Ranking by Client
Cost per Hour Analysis
Revenue vs Cost Comparison
Loss-Making Client Analysis: Client C
Cost Efficiency Tiers
Key Findings
Recommended Actions
Frequently Asked Questions
Total Cost
Avg Cost / Client
Cost-to-Revenue
AI-Generated Report

True Cost of Service: What Each Client Actually Costs You

A breakdown of cost, hours, revenue, and profit margin per client. Identifies loss-making accounts, cost-per-hour outliers, and concentration risk in your service delivery spend.

1.0 Executive Summary
Total Cost
$4.5M
12 clients tracked
Avg Cost / Client
$378K
Median: $219K
Cost-to-Revenue
47%
53% overall margin
Loss-Making Clients
1
Client C: -$55.9K
Summary: Across 12 tracked clients, total service delivery cost is $4.5M against $9.8M in revenue, producing an overall margin of 53%. Eleven of twelve clients are profitable. Client C is the only account running at a loss, with costs exceeding revenue by $55,879. The top two clients (A and B) account for 42% of total cost but also generate 46% of total revenue.
2.0 Cost Ranking by Client

All clients sorted by total service delivery cost, with revenue, profit, and margin indicators

Client A
$1,013,970
56.4%
Client B
$894,222
59.6%
Client C
$645,574
-9.5%
Client D
$603,420
57.8%
Client E
$248,212
61.0%
Client F
$224,394
52.2%
Client G
$214,395
55.0%
Client H
$206,868
50.3%
Client I
$141,416
55.9%
Client J
$121,483
62.2%
Client K
$120,188
58.1%
Client L
$107,091
67.4%
CompanyHoursTicketsRevenue
Craig-Huynh4,3705,458$2,324,617
Little Group3,7915,290$1,431,177
Lewis LLC2,8011,758$2,212,915
Martin Group2,2172,775$637,092
Wall PLC1,6972,376$476,622
Rivers et al1,6626,381
Ramos Group1,1711,728
Thompson et al1,0061,803
View DAX Query — Cost Ranking by Client
EVALUATE TOPN(10, SUMMARIZECOLUMNS('BI_Autotask_Companies'[company_name], "Tickets", COUNTROWS('BI_Autotask_Tickets'), "HoursWorked", SUM('BI_Autotask_Time_Entries'[hours_worked]), "Revenue", SUM('BI_Autotask_Billing_Items'[total_amount])), [HoursWorked], DESC)
3.0 Cost per Hour Analysis

Derived cost per logged hour per client, showing where service delivery is efficient and where costs are disproportionate to labor input

ClientCostHoursCost/HourEfficiency
Client H$206,86884$2,463Very High
Client C$645,574695$929Very High
Client B$894,2222,801$319Above Avg
Client A$1,013,9704,370$232Normal
Client F$224,3941,312$171Normal
Client D$603,4203,791$159Normal
Client I$141,4161,006$141Normal
Client L$107,091782$137Normal
Client K$120,188865$139Normal
Client G$214,3951,697$126Efficient
Client J$121,483962$126Efficient
Client E$248,2122,217$112Efficient
Key observation: Client H costs $2,463/hour because the bulk of their $206K cost comes from materials, licenses, or subcontractor fees rather than logged labor (only 84 hours). Client C at $929/hour follows the same pattern. Both accounts carry significant non-labor costs that do not show up in time tracking alone.
View DAX Query — Cost per Hour by Client
EVALUATE
ADDCOLUMNS(
    SUMMARIZE(
        BI_Autotask_Tickets,
        BI_Autotask_Tickets[company_name]
    ),
    "TotalCost",    CALCULATE([Service Delivery - Total Cost]),
    "TotalHours",   CALCULATE([Time Entries - Total Hours]),
    "CostPerHour",  DIVIDE(
                        CALCULATE([Service Delivery - Total Cost]),
                        CALCULATE([Time Entries - Total Hours])
                    )
)
ORDER BY [CostPerHour] DESC
4.0 Revenue vs Cost Comparison

Side-by-side comparison of revenue and cost per client, making it easy to spot accounts where cost eats into margin

Client A
$2.32M
$1.01M
Client B
$2.21M
$894K
Client D
$1.43M
$603K
Client E
$637K
$248K
Client C
$590K
$646K
Revenue Cost Cost exceeds revenue
Visual note: Client C is the only account where the cost bar is longer than the revenue bar. Every other client maintains a healthy gap between revenue and cost. Client B delivers the best absolute profit ($1.32M) despite being only the second-highest in cost.
5.0 Loss-Making Client Analysis: Client C

Deep dive into the only account operating at a loss: $645,574 in cost against $589,694 in revenue

Total Cost
$645K
3rd highest overall
Revenue
$590K
Does not cover cost
Loss
-$55.9K
-9.5% margin
Cost / Hour
$929
Only 695 hours logged

Client C stands out because the cost structure does not match the labor input. With only 695 logged hours, the $645K total cost implies roughly $555K in non-labor expenses: subcontractor fees, hardware procurement, licensing costs, or project materials that run through the cost center but are not recovered in the contract price.

The revenue of $589,694 is not unusually low for a mid-tier client. The problem is entirely on the cost side. If the non-labor costs were stripped out, the labor-only cost at a typical $150/hour rate would be around $104K, which would give Client C a healthy 82% margin on labor alone.

This means the fix is not about service efficiency. It is about contract structure. Either the pass-through costs are not being billed, the contract does not account for materials, or a one-time project expense inflated the period cost without matching revenue.

View DAX Query — Client C Cost Breakdown
EVALUATE
ADDCOLUMNS(
    ROW("Client", "Client C"),
    "TotalCost",      CALCULATE([Service Delivery - Total Cost],
                        BI_Autotask_Tickets[company_name] = "Client C"),
    "LaborHours",     CALCULATE([Time Entries - Total Hours],
                        BI_Autotask_Tickets[company_name] = "Client C"),
    "Revenue",        CALCULATE([Revenue - Total],
                        BI_Autotask_Tickets[company_name] = "Client C"),
    "Profit",         CALCULATE([Revenue - Total],
                        BI_Autotask_Tickets[company_name] = "Client C")
                      - CALCULATE([Service Delivery - Total Cost],
                        BI_Autotask_Tickets[company_name] = "Client C"),
    "CostPerHour",    DIVIDE(
                        CALCULATE([Service Delivery - Total Cost],
                            BI_Autotask_Tickets[company_name] = "Client C"),
                        CALCULATE([Time Entries - Total Hours],
                            BI_Autotask_Tickets[company_name] = "Client C")
                      )
)
6.0 Cost Efficiency Tiers

Clients grouped by cost efficiency based on margin and cost-per-hour performance

56% Top 3
Cost concentration: Top 3 clients
53% Overall
Overall profit margin
TierClientsCharacteristicsMargin Range
High Efficiency L, J, E Low cost/hour ($112-$137), margins above 61% 61% - 67%
Normal A, D, K, I, G, F Cost/hour $126-$232, margins between 52% and 58% 52% - 58%
Review Needed B, H Higher cost/hour ($319-$2,463) but still profitable due to strong revenue 50% - 60%
Loss-Making C Cost exceeds revenue, $929/hour cost rate, probable non-labor cost issue -9.5%
7.0 Key Findings
!

Client C is losing $55,879 on $589K revenue

The only loss-making account in the portfolio. With $645K in cost against $590K in revenue, this client has a -9.5% margin. The cost-per-hour of $929 (versus a portfolio average of around $220) points to significant non-labor costs that are not being recovered through the contract. This needs a contract review, not a service efficiency fix.

!

Top 2 clients account for 42% of total cost

Client A ($1.01M) and Client B ($894K) together represent $1.91M of the $4.54M total service cost. Both are profitable with margins above 56%, so this is not a problem today. But it is a concentration risk. If either client churns or renegotiates terms, the impact on the business would be significant.

11 of 12 clients are profitable with margins above 50%

The overall portfolio margin of 53% is healthy for managed services. The most efficient clients (L, J, E) run above 61% margin with cost-per-hour rates below $140. This is a well-structured service delivery operation with one outlier that needs attention.

8.0 Recommended Actions

5 priorities based on the findings above

1

Audit Client C's cost structure this month

Pull the full cost breakdown for Client C: labor, materials, subcontractor invoices, license pass-throughs. With only 695 hours logged but $645K in total cost, roughly $540K sits outside labor. Find out what it is, whether it was billed, and whether the contract covers it. If not, renegotiate the contract terms or stop absorbing those costs.

2

Review Client H's non-labor costs

Client H has only 84 logged hours but $206K in cost, producing a cost-per-hour rate of $2,463. The 50.3% margin means the revenue covers it, but barely. Check whether these are recurring costs or a one-time project. If recurring, the margin will erode over time.

3

Monitor concentration risk on Client A and Client B

These two accounts make up 42% of cost and 46% of revenue. Build a scenario model for what happens if either client downsizes or leaves. Consider diversifying the client base to reduce dependency on the top two accounts.

4

Benchmark cost-per-hour rates across the portfolio

The range from $112/hour (Client E) to $2,463/hour (Client H) is too wide to ignore. Set a target cost-per-hour band (e.g., $120-$200) and investigate any client that falls outside it. Outliers indicate either pricing problems or cost allocation issues that can be fixed.

5

Use Client L as a service delivery model

Client L runs at 67.4% margin with a $137/hour cost rate and $328K in revenue. That is the best efficiency-to-revenue ratio in the portfolio. Study what makes this engagement work: contract structure, service mix, team allocation. Then apply those patterns to mid-tier clients like F and G where margins could improve.

9.0 Frequently Asked Questions
Where does the cost data come from?

Service delivery costs are pulled from Autotask PSA through Proxuma Power BI. This includes labor costs (based on internal hourly rates multiplied by logged hours), plus any material, subcontractor, or pass-through costs recorded against the client's contracts and tickets. The AI runs DAX queries against the semantic model to calculate totals per client.

Why is cost per hour so high for some clients?

A high cost-per-hour number means the client has significant costs that are not tied to logged technician hours. This typically happens with hardware procurement, software licensing, subcontractor fees, or project materials. The hours in the denominator only reflect internal labor, so non-labor costs inflate the ratio. These clients need a cost breakdown, not more efficient time tracking.

What margin should an MSP target per client?

Industry benchmarks for managed service providers range from 40% to 60% gross margin depending on service mix. Pure labor-based services tend to run higher (55-65%) while engagements with significant hardware or licensing pass-throughs run lower. A client below 40% deserves a contract review. A client below 0% needs immediate attention.

How often should I run this report?

Quarterly for standard monitoring. Monthly if you have clients in the review or loss-making tier. Before any contract renewal, run it filtered to that specific client to see their cost trajectory. The data updates as Autotask records come through, so the report is always based on the latest available information.

Can I run this report against my own data?

Yes. Connect Proxuma Power BI to your Autotask PSA, add an AI tool (Claude, ChatGPT, or Copilot) via MCP, and ask the same question. The AI writes the DAX queries, runs them against your real data, and produces a report like this one in under fifteen minutes.

Generate this report from your own data

Connect Proxuma Power BI to your PSA, RMM, and M365 environment, use an MCP-compatible AI to ask questions, and generate custom reports - in minutes, not days.

See more reports Get started