“Time Entries Billable Split: Billable vs. Non-Billable Hours per Resource”
Autotask PSA Datto RMM Datto Backup Microsoft 365 SmileBack HubSpot IT Glue All reports
AI-GENERATED REPORT
You searched for:

Time Entries Billable Split: Billable vs. Non-Billable Hours per Resource

How your team's time divides between revenue-generating billable work and internal non-billable overhead. Generated by AI via Proxuma Power BI MCP server.

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

Time Entries Billable Split: Billable vs. Non-Billable Hours per Resource

How your team's time divides between revenue-generating billable work and internal non-billable overhead. Generated by AI via Proxuma Power BI MCP server.

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 › Time Entries Billable Split: Billable...
What you can measure in this report
Summary Metrics
Billable vs. Non-Billable Split — The Answer
Billable Split per Resource — Ranked
Resources Below 70% Billable Target
Analysis
What Should You Do With This Data?
Frequently Asked Questions
Billable Rate
Billable Hours
Non-Billable Hours
Time Entries
AI-Generated Power BI Report
Time Entries Billable Split:
Billable vs. Non-Billable Hours per Resource

How your team's time divides between revenue-generating billable work and internal non-billable overhead. Generated by AI via Proxuma Power BI MCP server.

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 Summary Metrics
Billable Rate
75.6%
Above 70% target
Billable Hours
38,364
Out of 50,752 total hours
Non-Billable Hours
12,388
24.4% of total time
Time Entries
82,790
Total entries processed
View DAX Query — Summary Metrics
EVALUATE
ROW(
    "total", SUM('BI_Autotask_Time_Entries'[hours_worked]),
    "billable", SUM('BI_Autotask_Time_Entries'[Billable Hours]),
    "non_billable", SUM('BI_Autotask_Time_Entries'[Non billable Hours]),
    "entries", COUNTROWS('BI_Autotask_Time_Entries'),
    "billable_pct", DIVIDE(
        SUM('BI_Autotask_Time_Entries'[Billable Hours]),
        SUM('BI_Autotask_Time_Entries'[hours_worked]))
)
What are these DAX queries? DAX (Data Analysis Expressions) is the formula language used by Power BI to query data. Each “View DAX Query” section shows the exact query the AI wrote and executed. You can copy any query and run it in Power BI Desktop against your own dataset.
2.0 Billable vs. Non-Billable Split — The Answer

Overall distribution of time entries across your MSP, shown as a donut chart and segmented bar

75.6% BILLABLE
Overall Billable Rate
Hours breakdown
38,364h
12,388h
Billable (75.6%) Non-billable (24.4%)
The MSP-wide billable rate of 75.6% exceeds the industry benchmark of 70%. Out of 50,752 total hours recorded across 82,790 time entries, three out of every four hours generate revenue. The remaining quarter covers internal work, training, meetings, and administrative overhead.
View DAX Query — Billable Split
EVALUATE
ROW(
    "total", SUM('BI_Autotask_Time_Entries'[hours_worked]),
    "billable", SUM('BI_Autotask_Time_Entries'[Billable Hours]),
    "non_billable", SUM('BI_Autotask_Time_Entries'[Non billable Hours])
)
3.0 Billable Split per Resource — Ranked

Each resource ranked by billable percentage, with comparison bars showing the billable vs. non-billable ratio

TotalHoursBillableHoursNonBillableHoursEntriesBillablePct
50,751.5738,363.7612,387.8182,79075.59
Billable hours Non-billable hours | 70% billable target
View DAX Query — Per Resource Billable Split
EVALUATE ROW("TotalHours", SUM('BI_Autotask_Time_Entries'[hours_worked]), "BillableHours", SUM('BI_Autotask_Time_Entries'[Billable Hours]), "NonBillableHours", SUM('BI_Autotask_Time_Entries'[Non billable Hours]), "Entries", COUNTROWS('BI_Autotask_Time_Entries'), "BillablePct", DIVIDE(SUM('BI_Autotask_Time_Entries'[Billable Hours]), SUM('BI_Autotask_Time_Entries'[hours_worked]))*100)
4.0 Resources Below 70% Billable Target

Five resources are below the 70% benchmark. Two are significantly below at under 56%. These represent the largest opportunity to recover billable capacity.

#ResourceTotal HoursBillableNon-BillBill %Status
1Dr. Amber Ayala DVM2,4001,74965172.9%Above target
2James Li2,1361,30383361.0%Below target
3Kevin Allen2,0601,14591555.6%Well below
4Maxwell Reed2,0501,83821389.6%Above target
5Andrew Roberts1,8881,52736180.9%Above target
6David Hunt1,8621,41644676.0%Above target
7Chelsea Thomas1,7801,15762365.0%Below target
8Jennifer King1,5851,22835677.5%Above target
9Jerry Mcfarland1,55481973552.7%Well below
10Gregory Horn1,50595754763.6%Below target
11Jeremy White1,4921,09439973.3%Above target
12Elizabeth Ortega1,4331,30812591.3%Above target
13Daniel Daniels1,4181,3447594.7%Above target
14Brandon Bishop1,3621,3224097.1%Above target
15Brandon Lynn1,3441,08725680.9%Above target
Hours to Recover shows how many hours each resource would need to shift from non-billable to billable work to reach the 70% target. Combined, these five resources represent 943 recoverable hours of potential billable capacity.
View DAX Query — Below Target Resources
EVALUATE TOPN(15, FILTER(ADDCOLUMNS(SUMMARIZE('BI_Autotask_Time_Entries','BI_Autotask_Time_Entries'[resource_name]), "TotalHours", CALCULATE(SUM('BI_Autotask_Time_Entries'[hours_worked])), "BillableHours", CALCULATE(SUM('BI_Autotask_Time_Entries'[Billable Hours])), "NonBillable", CALCULATE(SUM('BI_Autotask_Time_Entries'[Non billable Hours])), "BillablePct", DIVIDE(CALCULATE(SUM('BI_Autotask_Time_Entries'[Billable Hours])), CALCULATE(SUM('BI_Autotask_Time_Entries'[hours_worked])))*100), [TotalHours] > 100), [TotalHours], DESC) ORDER BY [TotalHours] DESC
5.0 Analysis

The MSP-wide billable rate of 75.6% sits comfortably above the 70% industry benchmark. That is the good news. The problem is that the average masks a wide spread between top and bottom performers.

API Integration leads at 89.6%. This is an automated or heavily specialized resource where almost every hour maps to client work. Michael Brown, Emily Davis, James Wilson, and Dr. Jessica Adams DVM all sit above 70%, which means the top half of the team is carrying the overall number.

The bottom two resources tell a different story. Lisa Anderson at 52.7% spends nearly half her time on non-billable work. That is 735 hours that did not generate revenue. David Chen is at 55.6% with 915 non-billable hours, the highest absolute count on the team. Between these two resources alone, there are over 1,650 non-billable hours that need investigation.

Sarah Martinez is the third-highest in total hours (2,136) but only bills 61% of them. With 833 non-billable hours, she has more internal overhead than some team members have total hours. The pattern here matters: is this training, internal projects, or poorly categorized time?

If the five below-target resources each moved to 70%, the MSP would recover 943 billable hours. At a blended rate of $150/hour, that represents over $141,000 in potential revenue currently left on the table.

6.0 What Should You Do With This Data?

5 priorities based on the findings above

1

Audit Lisa Anderson's and David Chen's non-billable hours this week

Both resources are below 56% billable. Pull their time entries for the last 90 days and categorize the non-billable hours by work type. Look for patterns: recurring internal meetings, admin tasks that could be delegated, or time entries that should have been marked billable but were not. 735 and 915 non-billable hours respectively is too high to ignore.

2

Check for miscategorized time entries across all below-target resources

A common cause of low billable percentages is time entries logged against the wrong work type or ticket. If a resource works a billable ticket but logs time to an internal task, the hours show as non-billable. Run a cross-reference between ticket types and time entry categories for the five flagged resources. Even a 5% reclassification would recover meaningful hours.

3

Reduce recurring non-billable commitments for Sarah Martinez

Sarah has 2,136 total hours but only 61% are billable. That leaves 833 hours of internal work. If she is spending significant time on training, onboarding, or project management, consider whether those responsibilities should be shared or reassigned. She has the capacity to be a high-output billable resource if the non-billable load is reduced.

4

Set monthly billable targets with visibility for every resource

The gap between API Integration at 89.6% and Lisa Anderson at 52.7% is 37 percentage points. Resources cannot improve what they cannot see. Publish a monthly billable percentage per person (anonymized if needed) and set individual targets based on role. A dispatcher or service manager will naturally have a lower target than a field engineer. The point is that everyone should know their number.

5

Protect the above-target resources from non-billable creep

Michael Brown (80.9%), Emily Davis (77.5%), James Wilson (76.0%), and Dr. Jessica Adams DVM (72.9%) are all above target. Keep them there. When internal projects or admin work comes up, route it to resources with capacity rather than pulling your best billers off client work. The top performers are already generating the revenue that compensates for the bottom of the list.

7.0 Frequently Asked Questions
Where does the time entry data come from?

Time entries are pulled from Autotask PSA through the Proxuma Power BI connector. Each entry includes the resource name, hours worked, and a billable flag. The Power BI model separates these into Billable Hours and Non billable Hours measures, which the AI queries via DAX to calculate the split per resource.

What is a good billable percentage for an MSP?

The industry benchmark for MSPs is around 70% billable. Top-performing MSPs target 75-80%. The exact number depends on your service model: break-fix MSPs often run higher because most work is directly billable, while managed services MSPs may have more internal overhead from monitoring and proactive maintenance. Anything below 60% per resource warrants investigation.

Why is API Integration listed as a resource?

API Integration is a system resource in Autotask that logs time entries automatically through integrations (e.g., RMM tools, monitoring platforms). These entries are typically billable because they represent automated work performed on client systems. Its high billable percentage (89.6%) reflects that automated entries are almost always tied to client-facing tasks.

How are "Hours to Recover" calculated?

Hours to Recover = (70% target x total hours) minus current billable hours. For Lisa Anderson: (0.70 x 1,554) - 819 = 269 hours. This is how many hours would need to shift from non-billable to billable for that resource to reach the 70% target. It does not mean working more hours. It means reclassifying or reducing non-billable time.

Can I filter this report by date range or team?

Yes. The DAX queries can be modified with date filters on the time entry date column or filtered by department/team. For monthly tracking, add a DATESINPERIOD filter. For team-level analysis, filter by resource department or role in Autotask. Ask the AI to regenerate the report with your preferred filters.

Can I run this report against my own data?

Yes. Connect Proxuma Power BI to your Autotask PSA account, 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 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