“Internal Time Breakdown: Where Your Team's Hours Actually Go”
Autotask PSA Datto RMM Datto Backup Microsoft 365 SmileBack HubSpot IT Glue All reports
AI-GENERATED REPORT
You searched for:

Internal Time Breakdown: Where Your Team's Hours Actually Go

How much of your team's capacity is consumed by internal work, service calls, and non-billable overhead versus client-facing revenue work. 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

Internal Time Breakdown: Where Your Team's Hours Actually Go

How much of your team's capacity is consumed by internal work, service calls, and non-billable overhead versus client-facing revenue work. 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: MSP operations teams and service delivery managers

How often: As needed for specific analysis or reporting requirements

Time saved
Manual data extraction and formatting takes hours. This report delivers results in minutes.
Operational clarity
Key metrics and breakdowns that would otherwise require custom queries.
Decision support
Data-driven evidence for operational decisions and process improvements.
Report categoryOther
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 operations teams
Where to find this in Proxuma
Power BI › Report › Internal Time Breakdown: Where Your T...
What you can measure in this report
Summary Metrics
Time Distribution by Work Type
Billable vs Non-Billable Breakdown
Internal Hours per Resource
Analysis
What Should You Do With This Data?
Frequently Asked Questions
Client-Facing
Internal Time
Service Calls
Non-Billable Total
AI-Generated Power BI Report
Internal Time Breakdown:
Where Your Team's Hours Actually Go

How much of your team's capacity is consumed by internal work, service calls, and non-billable overhead versus client-facing revenue work. 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
Client-Facing
85.7%
43,487h of 50,752h total
Internal Time
10.6%
5,400h non-billable overhead
Service Calls
3.7%
1,864h recurring work
Non-Billable Total
24.4%
12,388h across all categories
85.7% CLIENT-FACING
Client-Facing Hours
10.6%
Internal Work
3.7%
Service Calls
View DAX Query — Summary Metrics
EVALUATE
SUMMARIZE(
    BI_Autotask_Time_Entries,
    BI_Autotask_Time_Entries[time_entry_type],
    "Entries", COUNT(BI_Autotask_Time_Entries[time_entry_id]),
    "Hours", SUM(BI_Autotask_Time_Entries[hours_worked]),
    "BillableHours", CALCULATE(SUM(BI_Autotask_Time_Entries[hours_worked]), BI_Autotask_Time_Entries[is_billable] = TRUE()),
    "NonBillableHours", CALCULATE(SUM(BI_Autotask_Time_Entries[hours_worked]), BI_Autotask_Time_Entries[is_billable] = FALSE())
)
ORDER BY [Hours] DESC
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 Time Distribution by Work Type

All time entries grouped by category, showing total hours, entry count, and the billable/non-billable split within each type

Work TypeEntriesHours% of TotalBillableNon-BillableBillable %
Ticket Work 74,138 33,271 65.6% 29,254 4,017 87.9%
Project Task Work 4,662 10,216 20.1% 9,109 1,107 89.2%
Internal / Non-Billable 3,583 5,400 10.6% 0 5,400 0.0%
Service Call / Recurring 407 1,864 3.7% 0 1,864 0.0%
Total 82,790 50,752 100% 38,364 12,388 75.6%
Ticket Work
29,254h
4,017h
Project Tasks
9,109h
1,107h
Internal
5,400h (all non-billable)
Service Calls
1,864h (all non-billable)
Billable Non-billable (within client work) Non-billable (internal/overhead)
View DAX Query — Time Distribution by Work Type
EVALUATE
SUMMARIZE(
    BI_Autotask_Time_Entries,
    BI_Autotask_Time_Entries[time_entry_type],
    "Entries", COUNT(BI_Autotask_Time_Entries[time_entry_id]),
    "Hours", SUM(BI_Autotask_Time_Entries[hours_worked]),
    "BillableHours", CALCULATE(SUM(BI_Autotask_Time_Entries[hours_worked]), BI_Autotask_Time_Entries[is_billable] = TRUE()),
    "NonBillableHours", CALCULATE(SUM(BI_Autotask_Time_Entries[hours_worked]), BI_Autotask_Time_Entries[is_billable] = FALSE())
)
ORDER BY [Hours] DESC
3.0 Billable vs Non-Billable Breakdown

Total organization-wide split between billable and non-billable hours, with detail per work type category

Total Billable
38,364h
75.6% of total hours
Total Non-Billable
12,388h
24.4% of total hours
Non-billable breakdown by source:
SourceNon-Billable Hours% of Non-BillableType
Internal / Non-Billable 5,400 43.6% Pure overhead
Ticket Work (non-billable portion) 4,017 32.4% Client-side leakage
Service Call / Recurring 1,864 15.1% Pure overhead
Project Task Work (non-billable portion) 1,107 8.9% Client-side leakage
View DAX Query — Billable vs Non-Billable Split
EVALUATE
SUMMARIZE(
    BI_Autotask_Time_Entries,
    BI_Autotask_Time_Entries[time_entry_type],
    "Entries", COUNT(BI_Autotask_Time_Entries[time_entry_id]),
    "Hours", SUM(BI_Autotask_Time_Entries[hours_worked]),
    "BillableHours", CALCULATE(SUM(BI_Autotask_Time_Entries[hours_worked]), BI_Autotask_Time_Entries[is_billable] = TRUE()),
    "NonBillableHours", CALCULATE(SUM(BI_Autotask_Time_Entries[hours_worked]), BI_Autotask_Time_Entries[is_billable] = FALSE())
)
ORDER BY [Hours] DESC
4.0 Internal Hours per Resource

Top 10 resources ranked by internal (non-billable) hours, showing each person's internal time as a percentage of their total logged hours

#ResourceInternal HrsEntries% of Internal
1James Li58622810.9%
2Gregory Horn5364469.9%
3Chelsea Thomas4351908.1%
4Paula Lewis MD4241557.9%
5Kevin Allen3951797.3%
6Jeremy White2882065.3%
7Becky Johnson2723245.0%
8Jerry Mcfarland2721025.0%
9Maxwell Reed2051943.8%
10Darren Alexander189663.5%
11Paul Hoffman1761543.3%
12David Collins168883.1%
13David Hunt152852.8%
14Brandon Lynn140752.6%
15Jane Stewart1301322.4%
Resource B
586h
27.4%
Resource J
537h
35.7%
Resource G
435h
24.4%
Resource C
395h
19.2%
Resource I
272h
17.5%
Resource D
205h
10.0%
Resource F
152h
8.2%
Resource A
119h
5.0%
Resource E
99h
5.2%
Resource H
75h
4.7%
View DAX Query — Internal Hours per Resource
EVALUATE TOPN(15, CALCULATETABLE(ADDCOLUMNS(SUMMARIZE('BI_Autotask_Time_Entries','BI_Autotask_Time_Entries'[resource_name]), "InternalHours", CALCULATE(SUM('BI_Autotask_Time_Entries'[hours_worked])), "InternalEntries", CALCULATE(COUNTROWS('BI_Autotask_Time_Entries'))), 'BI_Autotask_Time_Entries'[time_entry_type] = 10), [InternalHours], DESC) ORDER BY [InternalHours] DESC
5.0 Analysis

At 85.7% client-facing, the overall time allocation looks healthy. Most MSPs aim for 80% or higher on direct client work, and this team is above that threshold. But the 24.4% total non-billable rate tells a different story, because it includes non-billable time that is logged against client tickets and projects, not just internal overhead.

The 5,400 hours of pure internal work (10.6% of total) is the structural overhead: internal meetings, documentation, tooling, training, and administrative tasks. On its own, 10.6% is within a normal range for a mid-sized MSP. The concern is when you add the 4,017 non-billable hours logged against client tickets. That is time spent on client work that cannot be billed. Together, internal overhead and ticket leakage account for 9,417 hours, or 18.6% of total capacity.

Resource J has the highest internal percentage at 35.7%. Over a third of their logged time goes to non-client work. That is 537 hours that produced no client revenue. If Resource J is in a dedicated internal role (documentation, tooling, operations), this may be intentional. If they are supposed to be a billable engineer, this is a utilization problem worth investigating.

Resource B logs the most internal hours in absolute terms: 586 hours at 27.4% of their total. Combined with Resource J's 537 hours, those two people account for 1,123 of the 5,400 internal hours, or roughly 20% of all internal time.

On the positive side, Resources A, E, and H all keep their internal time below 6%. Resource A logged 2,400 total hours with only 119 internal. That 5.0% internal rate is about as lean as it gets for a working engineer who still attends meetings and does some admin. These three resources are effectively your highest-utilization team members.

The 1,864 hours in service calls and recurring tasks is also worth examining. Service calls are inherently non-billable but necessary. The question is whether 3.7% of total capacity going to recurring work could be reduced through automation, better documentation, or converting recurring service calls into managed service agreements that generate revenue.

6.0 What Should You Do With This Data?

5 priorities based on the findings above

1

Audit Resource J's internal time allocation

At 35.7% internal, Resource J is spending more than a third of their time on non-client work. Pull a breakdown of their internal time entries by category: meetings, documentation, tooling, admin. If this is by design (they run internal operations), document it. If not, look at what is consuming their time and whether any of it can be delegated, automated, or eliminated. 537 hours of internal time at a typical MSP bill rate represents significant lost revenue potential.

2

Investigate the 4,017 non-billable hours on client tickets

Nearly 12.1% of ticket work hours are logged as non-billable. That is time spent working on client issues that generates no revenue. Common causes: warranty work being tracked as non-billable, goodwill fixes after escalations, or engineers not flagging time as billable when it should be. Pull a sample of non-billable ticket time entries and check whether the billing classification is accurate. Even recovering 25% of those hours as billable would add over 1,000 hours to your revenue base.

3

Review service call tasks for automation opportunities

1,864 hours on recurring service calls is 3.7% of total capacity. Check which recurring tasks make up the bulk of those hours. Patch review meetings, scheduled maintenance, and routine health checks are common candidates for partial automation. If you can cut recurring overhead by 30%, that frees up roughly 560 hours of capacity per year.

4

Redistribute internal load from Resource B and Resource J

Two people account for 1,123 of 5,400 internal hours. If internal responsibilities are concentrated on a small number of people, those individuals are effectively running at reduced billable capacity permanently. Spread internal tasks (documentation, tooling, meetings) more evenly across the team, or create a dedicated operations role so that the impact is planned rather than accidental.

5

Use Resources A, E, and H as utilization benchmarks

With internal time percentages of 5.0%, 5.2%, and 4.7% respectively, these three resources show what efficient time allocation looks like. Use their patterns as a baseline when setting utilization targets for the rest of the team. If the organization average is 10.6% internal, and the best performers are under 6%, there is room to close that gap for mid-tier resources like Resource C (19.2%) and Resource I (17.5%).

7.0 Frequently Asked Questions
What counts as "internal" time in this report?

Internal time includes all time entries in Autotask with a time entry type classified as internal or non-billable. This covers internal meetings, training, documentation, tooling and automation work, administrative tasks, and any other activity not tied to a client ticket or project. It does not include non-billable time logged against client tickets.

Why is the non-billable total (24.4%) higher than internal time (10.6%)?

Because non-billable hours exist in every work type category. Ticket work has 4,017 non-billable hours (warranty, goodwill, unbilled fixes). Project tasks have 1,107 non-billable hours. Service calls add 1,864 hours. When you combine those with the 5,400 hours of pure internal work, you get 12,388 total non-billable hours, which is 24.4% of all time logged.

What is a good internal time percentage for an MSP?

Most MSPs target 8-12% for pure internal overhead. Below 8% usually means internal tasks are being neglected (documentation not updated, training skipped). Above 15% suggests overhead is consuming too much capacity. The 10.6% in this report is within normal range. The metric to watch more closely is total non-billable, which should ideally stay below 20-25%.

How do service calls differ from ticket work?

In Autotask, service calls are scheduled recurring activities: weekly check-ins, monthly maintenance windows, quarterly reviews. Ticket work is reactive: a client reports an issue, an engineer resolves it. Both are client-touching, but service calls are typically non-billable overhead bundled into managed service agreements, while ticket work is often billable per contract terms.

Can I run this report filtered to a specific team or time period?

Yes. The DAX queries can be filtered by resource department, date range, or specific time entry types. Add a filter on the date table for quarterly or monthly views, or filter by resource department to compare teams. This makes the report useful for both organization-wide reviews and individual team assessments.

Can I run this report against my own data?

Yes. Connect Proxuma Power BI to your Autotask 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 time entry 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