“Hours Worked vs Hours Billed: How Much Revenue Are You Leaking?”
Autotask PSA Datto RMM Datto Backup Microsoft 365 SmileBack HubSpot IT Glue All reports
AI-GENERATED REPORT
You searched for:

Hours Worked vs Hours Billed: How Much Revenue Are You Leaking?

A comparison of 50,752 hours worked against 55,785 hours billed across 15 clients in Autotask PSA. This report examines where billing minimums inflate billed hours beyond actual work, and where specific clients see the biggest gaps between effort and invoiced time.

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

Hours Worked vs Hours Billed: How Much Revenue Are You Leaking?

A comparison of 50,752 hours worked against 55,785 hours billed across 15 clients in Autotask PSA. This report examines where billing minimums inflate billed hours beyond actual work, and where specific clients see the biggest gaps between effort and invoiced time.

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: Operations managers, service delivery leads, and MSP owners managing capacity

How often: Weekly for scheduling, monthly for utilization reviews, quarterly for staffing decisions

Time saved
Calculating utilization from time entries and ticket data manually is tedious. This report does it automatically.
Capacity insight
See who is overloaded, who has bandwidth, and where bottlenecks form.
Staffing data
Evidence-based decisions about hiring, scheduling, and workload distribution.
Report categoryResource & Capacity
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
AudienceOperations managers, service delivery leads
Where to find this in Proxuma
Power BI › Resources › Hours Worked vs Hours Billed: How Muc...
What you can measure in this report
Billing Overview at a Glance
Hours Worked vs Hours Billed by Client
Billable Hours Analysis
Billing Spread by Client: Who Gets Billed the Most Over Worked Hours?
Revenue Impact of Billing Surplus
Key Findings
Analysis
Recommended Actions
Frequently Asked Questions
HOURS WORKED
HOURS BILLED
BILLING EFFICIENCY
AI-Generated Power BI Report
Hours Worked vs Hours Billed:
How Much Revenue Are You Leaking?

A comparison of 50,752 hours worked against 55,785 hours billed across 15 clients in Autotask PSA. This report examines where billing minimums inflate billed hours beyond actual work, and where specific clients see the biggest gaps between effort and invoiced time.

Demo Report: This report uses synthetic data to demonstrate AI-generated insights from Proxuma Power BI. The structure, DAX queries, and analysis reflect real MSP data patterns.
1.0 Billing Overview at a Glance

Top-level metrics comparing hours worked, hours billed, and total revenue across all tracked clients.

HOURS WORKED
50,752
Actual time logged
HOURS BILLED
55,785
+5,033 over worked
BILLING EFFICIENCY
109.9%
Billed > Worked
TOTAL REVENUE
$17.6M
All billing items
Why is billed higher than worked? Billing minimums, rounding rules, and fixed-fee blocks can push billed hours above actual time logged. A 15-minute call billed at a 1-hour minimum adds 45 minutes of "phantom" hours. This is not a data error. It is how most MSP billing structures operate, and it means you are capturing value beyond raw effort.
2.0 Hours Worked vs Hours Billed by Client

Side-by-side comparison of actual hours worked (teal) and hours billed (navy) for the top 15 clients. Every client here is billed more than worked, showing billing minimums are being applied consistently.

Client A
4,370 worked
4,806 billed
Client B
3,791 worked
4,141 billed
Client C
2,801 worked
3,001 billed
Client D
2,217 worked
2,393 billed
Client E
1,697 worked
1,947 billed
Client F
1,662 worked
1,939 billed
Client G
1,312 worked
1,481 billed
Hours Worked Hours Billed
View DAX Query - Hours Worked vs Billed per Client
EVALUATE TOPN(15, ADDCOLUMNS(SUMMARIZE('BI_Autotask_Companies','BI_Autotask_Companies'[company_name]), "Worked", [Company - Hours Worked], "Billed", [Company - Hours Billed], "Billable", [Company - Billable Hours]), [Worked], DESC) ORDER BY [Worked] DESC
3.0 Billable Hours Analysis

Looking at the billable portion of worked hours alongside total billed hours. Client F has no billable hours tracked, which means all billing comes from fixed-fee or block-hour contracts.

Client Worked Billable Billed Bill. %
Client A 4,370 3,792 4,806 86.8%
Client B 3,791 3,127 4,141 82.5%
Client C 2,801 2,665 3,001 95.1%
Client D 2,217 1,970 2,393 88.9%
Client E 1,697 1,665 1,947 98.1%
Client F 1,662 n/a 1,939 0%
Client G 1,312 1,096 1,481 83.5%
Client H 1,171 1,114 1,289 95.1%
Client I 1,006 853 1,152 84.8%
Client J 962 916 1,046 95.2%
Client K 962 954 1,003 99.1%
Client L 866 860 916 99.3%
Client M 865 808 1,027 93.4%
Client N 782 681 856 87.1%
Client O 710 605 834 85.2%
109.9% bill. efficiency Billing Efficiency
(Billed / Worked)
89.8% avg billable Avg Billable %
(excl. Client F)
9.0% surplus Billing Surplus
(Billed - Worked)
4.0 Billing Spread by Client: Who Gets Billed the Most Over Worked Hours?

The "leakage" percentage here is negative because billed exceeds worked. Clients with the largest negative values have the most billing minimums applied. This is revenue capture, not revenue loss.

Client M
-18.7%
Client O
-17.5%
Client F
-16.7%
Client E
-14.8%
Client I
-14.4%
Client G
-12.8%
Client H
-10.1%
Client A
-10.0%
Client N
-9.3%
Client B
-9.2%
Client J
-8.7%
Client D
-7.9%
Client C
-7.1%
Client L
-5.7%
Client K
-4.3%
View DAX Query - Hours Worked vs Billed per Client
EVALUATE
TOPN(15,
  ADDCOLUMNS(
    SUMMARIZE(
      'BI_Autotask_Companies',
      'BI_Autotask_Companies'[company_name]
    ),
    "Worked", [Company - Hours Worked],
    "Billed", [Company - Hours Billed],
    "Billable", [Company - Billable Hours]
  ),
  [Worked], DESC
)
5.0 Revenue Impact of Billing Surplus

Estimating the dollar value of the 5,033 surplus hours billed above actual worked hours, using the average effective rate.

SURPLUS HOURS
50,752
Actual time logged
AVG RATE / BILLED HR
55,785
+5,033 over worked
SURPLUS REVENUE
109.9%
Billed > worked
% OF TOTAL REVENUE
$17.6M
All billing items

Billing minimums are generating roughly $1.59M in revenue that has no matching labour cost. This is the definition of captured value: you bill for the commitment of availability, not just the minutes on the clock. The three clients with the largest surplus (M at 18.7%, O at 17.5%, F at 16.7%) together account for about 438 surplus hours, worth an estimated $138K.

If billing minimums were removed and clients were only charged for actual hours worked, total revenue would drop by approximately 9%. That makes this a policy decision, not an operational one. The question is whether your clients perceive enough value to justify the minimums, or whether they will push back during contract renewals.

View DAX Query - Revenue Totals
EVALUATE ROW("HoursWorked", [Company - Hours Worked], "HoursBilled", [Company - Hours Billed], "BillableHours", [Company - Billable Hours], "TotalRevenue", [Revenue - Total])
6.0 Key Findings

1. Billing efficiency of 109.9% means you bill more than you work

Across all 15 clients, 5,033 more hours are billed than worked. This is driven by billing minimums and block-hour contracts that round up short tasks. The surplus translates to roughly $1.59M in additional revenue with zero incremental labour cost. This is working as designed.

!

2. Client M, O, and F see the biggest billing spread (16-19%)

Client M is billed 18.7% above worked hours, Client O at 17.5%, and Client F at 16.7%. These clients likely have high volumes of short interactions (quick calls, password resets) where the billing minimum kicks in every time. If any of these clients audit their invoices, the gap will be visible. Worth reviewing whether the minimum policy is defensible for each account.

!

3. Client F has zero tracked billable hours despite 1,662 hours worked

This client shows null for billable hours but 1,939 billed hours. That pattern points to a fixed-fee or block-hour contract where time entries are not classified as billable at entry. The 1,662 hours of work are still happening, but the billing structure bypasses the billable flag entirely. This makes it impossible to track true utilisation for Client F without looking at the contract directly.

4. Clients K and L have the tightest worked-to-billed ratio (4-6%)

Client K at -4.3% and Client L at -5.7% are billed closest to their actual worked hours. These are likely clients with longer average ticket durations where billing minimums rarely apply, or clients on contracts with smaller rounding increments. They represent the "clean" end of the billing spectrum.

7.0 Analysis

The billing surplus is a structural feature, not a bug. MSPs that use billing minimums are trading simplicity for revenue capture. A 1-hour minimum on a 10-minute task means the client pays for your availability, not just your time. Across 15 clients, this adds up to 5,033 hours of billed time that does not correspond to actual work. At $316 per billed hour, that is $1.59M you would lose if you switched to exact-time billing.

The spread varies significantly by client. Client M sees an 18.7% gap while Client K sees only 4.3%. This difference likely correlates with ticket volume and average duration. Clients with many short interactions trigger the minimum more often. If you segment clients by average ticket duration, you will probably find that the high-spread clients all sit below 30 minutes per interaction.

Client F deserves a separate investigation. The null billable hours combined with 1,662 worked hours and 1,939 billed hours suggest a contract structure that does not map cleanly to the time entry system. This is not necessarily a problem, but it creates a blind spot. You cannot measure efficiency on an account where the billable flag is never set. Consider whether the contract terms should be reflected in the time entry classification rules.

The 89.8% average billable ratio (excluding Client F) is strong. It means 9 out of every 10 hours worked are classified as billable. The remaining 10% is internal or non-billable work attached to these client accounts. Combined with the billing surplus, the overall revenue capture per hour of effort is very healthy.

8.0 Recommended Actions

Steps to protect and optimise the billing surplus while reducing contract risk.

1

Audit billing minimums for clients M, O, and F before their next renewal

These three clients have the largest worked-to-billed gap (16-19%). Pull a sample of 50 recent tickets per client and check whether the minimum was triggered. If more than 60% of tickets trigger the minimum, consider whether the client might negotiate it down. Better to adjust proactively than to lose the entire minimum during a contentious renewal.

2

Fix the billable classification for Client F

A client with 1,662 hours worked and zero billable hours tracked is a data hygiene issue. Work with the service delivery team to determine whether the contract type should auto-classify time entries as billable, or whether a manual reclassification is needed. Until this is resolved, Client F is invisible in any utilisation report.

3

Build a monthly billing-spread dashboard per client

Track the worked-to-billed ratio over time. A sudden increase in the spread could indicate a change in ticket patterns (more short calls) or a contract change. A sudden decrease might mean technicians are logging longer blocks. Either way, the trend matters more than the snapshot. The DAX queries in this report can power a live Power BI page for ongoing monitoring.

9.0 Frequently Asked Questions
Why are billed hours higher than worked hours?

Billing minimums round up short tasks. A 15-minute call billed at a 1-hour minimum adds 45 phantom minutes. Block-hour contracts can also bill a fixed number of hours regardless of actual time spent. Both mechanisms push billed hours above worked hours.

What does "leakage" mean when it is negative?

Negative leakage means you are billing more than you work. In this dataset, every client has negative leakage, which means billing minimums are consistently capturing extra revenue. Positive leakage would mean you are doing work you are not billing for, which is the scenario MSPs usually worry about.

Why does Client F show null billable hours?

Client F is likely on a fixed-fee or block-hour contract where time entries are not tagged as billable at entry. The billing happens at the contract level, not the time-entry level. The 1,939 billed hours come from the contract billing rules, not from individual time entry classifications.

Should I reduce billing minimums to keep clients happy?

That depends on the client relationship and competitive pressure. The surplus from minimums is worth roughly $1.59M. Reducing minimums across the board would hit revenue directly. A better approach is to review minimums per client during contract renewals and adjust only where the spread is large enough to cause friction.

How is billing efficiency calculated?

Billing efficiency is total hours billed divided by total hours worked, expressed as a percentage. A value above 100% means you bill more than you work. In this dataset, 55,785 billed divided by 50,752 worked equals 109.9%.

Can I run these DAX queries on my own Power BI dataset?

Yes. Copy any query from the toggles above and paste it into DAX Studio or the Power BI Desktop performance analyzer. The queries reference standard Proxuma data model tables and measures that exist in every Proxuma Power BI deployment.

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