This report provides a detailed breakdown of billing & charge allocation audit 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: MSP owners, finance leads, and operations managers tracking profitability
How often: Monthly for financial reviews, quarterly for strategic planning, on-demand for pricing decisions
EVALUATE
ROW(
"TotalCharges", COUNTROWS('BI_Autotask_Charges'),
"ProjectAllocated", CALCULATE(COUNTROWS('BI_Autotask_Charges'), NOT ISBLANK('BI_Autotask_Charges'[project_id])),
"ContractOnly", CALCULATE(COUNTROWS('BI_Autotask_Charges'), ISBLANK('BI_Autotask_Charges'[project_id]), NOT ISBLANK('BI_Autotask_Charges'[contract_id])),
"Unallocated", CALCULATE(COUNTROWS('BI_Autotask_Charges'), ISBLANK('BI_Autotask_Charges'[project_id]), ISBLANK('BI_Autotask_Charges'[contract_id])),
"TotalBillable", SUM('BI_Autotask_Charges'[billable_amount]),
"ProjectBillable", CALCULATE(SUM('BI_Autotask_Charges'[billable_amount]), NOT ISBLANK('BI_Autotask_Charges'[project_id])),
"UnallocatedBillable", CALCULATE(SUM('BI_Autotask_Charges'[billable_amount]), ISBLANK('BI_Autotask_Charges'[project_id]), ISBLANK('BI_Autotask_Charges'[contract_id]))
)
Bars scaled to April 2025 peak ($534K). Darker red = peak month.
EVALUATE
TOPN(
10,
ADDCOLUMNS(
VALUES('BI_Autotask_Charges'[company_id]),
"CompName", LOOKUPVALUE('BI_Autotask_Companies'[company_name], 'BI_Autotask_Companies'[company_id], 'BI_Autotask_Charges'[company_id]),
"TotalCharges", CALCULATE(COUNTROWS('BI_Autotask_Charges')),
"UnallocatedCharges", CALCULATE(COUNTROWS('BI_Autotask_Charges'), ISBLANK('BI_Autotask_Charges'[project_id]), ISBLANK('BI_Autotask_Charges'[contract_id])),
"UnallocatedAmount", CALCULATE(SUM('BI_Autotask_Charges'[billable_amount]), ISBLANK('BI_Autotask_Charges'[project_id]), ISBLANK('BI_Autotask_Charges'[contract_id]))
),
[UnallocatedCharges], DESC
)
Only 1 charge (valued at $0) is actually linked to a specific project. The other 7,155 charges — $6.7M — sit either at contract level or fully unlinked. This means every project margin calculation in Autotask is missing the charge component entirely, making project profitability reports unreliable.
2,242 charges ($3.94M) are linked to contracts but not to projects. When a contract covers multiple projects, there's no automated way to determine which project absorbs each charge. These will show up in contract profitability reports but not in project-level margin analysis.
The monthly volume of fully unlinked charges increased from $265–332K in Q4 2024 to $424–457K in Q4 2025. That's roughly 50% growth in unallocated charge value year over year. Without intervention, this gap widens further each month.
April 2025 saw significantly more orphaned charge value than any surrounding month — $534K versus a typical $310–390K. This could indicate a large batch of charges entered without contract or project links, a billing import, or a change in how certain service items were configured in PSA.
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