This report provides a detailed breakdown of msp operations intelligence: cross-source performance analysis for managed service providers.
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: Account managers, MSP owners, and vCTOs preparing executive reviews
How often: Quarterly for scheduled QBRs, on-demand for executive briefings
Top-level metrics pulled from Autotask PSA, Datto RMM, and SmileBack in a single query.
EVALUATE ROW("Tickets", [Tickets - Count - Created], "CSAT", [CSAT - Average Rating], "ResolutionMet", [Tickets - Resolution Met %], "Devices", COUNTROWS('BI_Datto_Rmm_Devices'), "Employees", [Total Employees], "Revenue", SUM('BI_Autotask_Charges'[billable_amount]), "Contracts", COUNTROWS(FILTER('BI_Autotask_Contracts', 'BI_Autotask_Contracts'[contract_status_name] = "Active")))
How clients rated their service interactions across 10,178 SmileBack survey responses.
With 92.2% positive ratings, the overall satisfaction picture looks healthy. The 4.5% negative rate is worth watching though: at 454 unhappy interactions, each one carries potential churn risk. The question for section 3.0 is whether specific queues drive the negative responses.
EVALUATE
ADDCOLUMNS(
SUMMARIZE(
'BI_SmileBack_Reviews',
'BI_SmileBack_Reviews'[rating]
),
"Count", CALCULATE(COUNTROWS('BI_SmileBack_Reviews'))
)
ORDER BY 'BI_SmileBack_Reviews'[rating] DESC
Ticket volume, SLA compliance, and customer satisfaction broken down by Autotask queue.
| Queue | Tickets | First Response | Resolution | CSAT |
|---|---|---|---|---|
| L1 Support | 31,378 | 88.5% | 95.6% | 83.5% |
| Centralized Services | 17,082 | 64.7% | 91.6% | 46.0% |
| L2 Support | 7,889 | 82.3% | 88.0% | 65.3% |
| Merged Tickets | 4,999 | 78.1% | 92.4% | N/A |
| Technical Alignment | 2,316 | 74.6% | 62.8% | 66.7% |
| Customer Success | 804 | 72.3% | 59.5% | 81.3% |
| Interne IT | 793 | 33.4% | 55.7% | 91.1% |
| Onsite Support | 705 | 76.6% | 56.0% | 91.8% |
| Professional Services | 546 | 71.6% | 52.0% | 79.3% |
| Administration | 327 | 59.2% | 61.9% | 100% |
Centralized Services handles 17,082 tickets with a 46.0% CSAT score. That is the biggest red flag in this report. L1 Support runs smoothly at 88.5% first response and 83.5% CSAT. The Interne IT queue misses first response SLA on two-thirds of tickets, but the team there is rated 91.1% CSAT. Internal users are apparently patient.
EVALUATE
TOPN(
10,
ADDCOLUMNS(
SUMMARIZE(
'BI_Autotask_Tickets',
'BI_Autotask_Tickets'[queue_name]
),
"Tickets", CALCULATE([Tickets - Count - Created]),
"SLA_FR", CALCULATE([Tickets - First Response Met %]),
"SLA_Res", CALCULATE([Tickets - Resolution Met %]),
"CSAT", CALCULATE([CSAT - Average Rating])
),
CALCULATE([Tickets - Count - Created]), DESC
)
How 135,387 RMM alerts break down by priority and how many became Autotask tickets.
| Priority | Total Alerts | Resolved | Became Ticket | Ticket Rate |
|---|---|---|---|---|
| Critical | 3,786 | 3,737 | 3,567 | 94.2% |
| Moderate | 6,524 | 6,481 | 4,353 | 66.7% |
| Low | 5,393 | 5,219 | 3,744 | 69.4% |
| High | 1,467 | 1,397 | 541 | 36.9% |
| Information | 118,217 | 115,184 | 3 | <0.1% |
94.2% of Critical alerts create a ticket, which is good: the system catches the urgent stuff. But High priority alerts have only a 36.9% ticket rate, meaning nearly two-thirds go untracked. Either the "High" label is miscalibrated, or someone is dismissing alerts that deserve investigation.
EVALUATE
SUMMARIZE(
'BI_Datto_Rmm_Alerts',
'BI_Datto_Rmm_Alerts'[priority],
"Count", COUNTROWS('BI_Datto_Rmm_Alerts'),
"Resolved", CALCULATE(
COUNTROWS('BI_Datto_Rmm_Alerts'),
'BI_Datto_Rmm_Alerts'[resolved] = TRUE()
),
"With_Ticket", CALCULATE(
COUNTROWS('BI_Datto_Rmm_Alerts'),
NOT(ISBLANK('BI_Datto_Rmm_Alerts'[ticket_number])),
'BI_Datto_Rmm_Alerts'[ticket_number] <> ""
)
)
ORDER BY COUNTROWS('BI_Datto_Rmm_Alerts') DESC
Top 15 engineers ranked by hours logged, with billable ratio and customer satisfaction from SmileBack.
| Engineer | Hours | Billable % | Tickets Done | CSAT |
|---|---|---|---|---|
| Resource A | 2,400 | 72.9% | 562 | 89.5% |
| Resource B | 2,136 | 61.0% | 638 | 65.1% |
| Resource C | 2,060 | 55.6% | 33 | N/A |
| Resource D | 2,050 | 89.6% | 1,899 | 81.6% |
| Resource E | 1,888 | 80.9% | 1,871 | 84.1% |
| Resource F | 1,862 | 76.0% | 65 | 100% |
| Resource G | 1,780 | 65.0% | 102 | 71.4% |
| Resource H | 1,585 | 77.5% | 776 | 83.3% |
| Resource I | 1,554 | 52.7% | 519 | 65.0% |
| Resource J | 1,505 | 63.6% | 3,234 | 65.5% |
| Resource K | 1,493 | 73.3% | 539 | 71.2% |
| Resource L | 1,433 | 91.3% | 81 | N/A |
| Resource M | 1,418 | 94.7% | 2,427 | 84.3% |
| Resource N | 1,362 | 97.1% | 2,632 | 78.3% |
| Resource O | 1,344 | 80.9% | 510 | 89.5% |
Resource N stands out: 97.1% billable with 2,632 completed tickets. That is efficient. On the other end, Resource C logs 2,060 hours at only 55.6% billable with just 33 tickets. This person is likely in a project or infrastructure role, not helpdesk. The billable metric means different things for different roles, so context matters before drawing conclusions.
EVALUATE
TOPN(
15,
ADDCOLUMNS(
SUMMARIZE(
'BI_Autotask_User_Details',
'BI_Autotask_User_Details'[resource_user_name]
),
"Billable_Pct", CALCULATE([Billable % (vs Logged)]),
"Total_Hrs", CALCULATE(SUM('BI_Autotask_Time_Entries'[hours_worked])),
"Tix_Done", CALCULATE([Tickets - Count - Completed]),
"CSAT", CALCULATE([CSAT - Average Rating]),
"Logging", CALCULATE([Analytics - Time Logging Rate])
),
CALCULATE(SUM('BI_Autotask_Time_Entries'[hours_worked])), DESC
)
Where the three data sources agree, where they contradict, and what to do about it.
This queue processes 17,082 tickets (25% of all volume) with a 46.0% CSAT score. Resolution SLA looks fine at 91.6%, which means tickets get closed on time but clients are unhappy with how they are handled. The problem is likely process quality, not speed. Review what types of tickets route here and whether automation is replacing human interaction where clients want it.
63.1% of High-priority Datto alerts (926 out of 1,467) never become a ticket. Critical alerts have a 94.2% ticket rate, so the automation works there. But High-priority alerts sit in a blind spot: important enough to flag, not urgent enough to auto-create a ticket. Set up an alert-to-ticket rule for High priority or reclassify them.
The gap between the lowest and highest billable rate is 44 percentage points. Some of this is role-based (project engineers vs. helpdesk), but engineers with low billable rates and low ticket counts should be reviewed. Resource I logs 1,554 hours at 52.7% billable with a 65.0% CSAT. That is a coaching opportunity across both efficiency and service quality.
31,378 tickets at 88.5% first response SLA, 95.6% resolution SLA, and 83.5% CSAT. This is the strongest queue by every metric. The L1 playbook should be documented and replicated where possible. The L2 queue handles 7,889 tickets with a 65.3% CSAT, which suggests the escalation path needs attention.
118,217 Information-level alerts out of 135,387. Only 3 of those became tickets. This is normal for RMM systems, but it means your alert dashboard is 87% noise. Consider suppressing or auto-resolving Information alerts to reduce fatigue and help engineers focus on the 12.7% that matter.
Three systems: Autotask PSA (tickets, time entries, SLA data), Datto RMM (device alerts and resolution status), and SmileBack (customer satisfaction surveys). All data flows through Proxuma's Power BI semantic model, which links the sources via shared keys like ticket numbers and resource IDs.
SmileBack uses a three-point scale: positive (1), neutral (0), and negative (-1). The CSAT percentage represents the ratio of positive responses to total responses. The 87.7% average means that for every 100 surveys, about 88 come back positive.
Datto RMM can auto-create Autotask tickets for certain alert priorities. The link is the ticket_number field on the BI_Datto_Rmm_Alerts table. When an alert has a non-blank ticket number, it means a PSA ticket was created for that alert.
Billable % is the ratio of billable hours to total logged hours. A 75% rate means three-quarters of that engineer's logged time can be charged to clients. The rest is internal work, training, meetings, or non-billable admin. Different roles have different expected ranges.
Yes. Connect your Autotask PSA, Datto RMM, and SmileBack to Proxuma's Power BI integration. Once the data model is set up, you can ask any MCP-compatible AI (like Claude) to query your dataset and produce a custom report like this one.
This is a public demo report. Real MSP reports generated from your own data show actual names and are private to your organization. We anonymize here to protect the demo dataset.
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