Een volledige vergelijking van standaard roltarieven versus contractspecifieke overschrijvingen. Gegenereerd door AI via Proxuma Power BI MCP server.
Een volledige vergelijking van standaard roltarieven versus contractspecifieke overschrijvingen. Gegenereerd door AI via Proxuma Power BI MCP server.
De data dekt het volledige bereik van Autotask PSA-records die relevant zijn voor deze analyse, uitgesplitst naar de belangrijkste dimensies die je team nodig heeft voor dagelijkse beslissingen en klantrapportage.
Wie dit zou moeten gebruiken: Account managers, finance teams, and MSP owners managing renewals
Hoe vaak: Maandelijks for pipeline review, 90 days before expiry for renewal preparation
Een volledige vergelijking van standaard roltarieven versus contractspecifieke overschrijvingen. Gegenereerd door AI via Proxuma Power BI MCP server.
Van de 1.377 actieve contracten hebben er 110 minimaal één aangepast tarief. Die 110 contracten genereren 220 individuele tariefentries uitgesplitst per rol. Elke afwijking ligt onder het standaardtarief. Geen enkele erboven.
67 van die 220 entries staan op €0,00. Dat betekent dat werk onder die rol-contract combinaties voor niets wordt gefactureerd. De overige 150 entries hebben kortingen van een paar euro tot het volledige standaardtarief.
The average standard rate across all roles is €138.64/hr. The average contract override rate is €52.86/hr. Dat verschil vertegenwoordigt een structurele korting in je contractportfolio die al dan niet bewust is.
Dit rapport splitst de cijfers uit per rol, identificeert de contracten met de grootste afwijkingen, en geeft concrete stappen om tarieflekkage aan te pakken voor de volgende verlengingscyclus.
EVALUATE
ROW(
"TotalContracts", COUNTROWS(BI_Autotask_Contracts),
"ActiveContracts", CALCULATE(COUNTROWS(BI_Autotask_Contracts),
BI_Autotask_Contracts[is_active] = TRUE()),
"ContractsWithCustomRates", DISTINCTCOUNT(BI_Autotask_Contract_Rates[contract_id]),
"TotalRateEntries", COUNTROWS(BI_Autotask_Contract_Rates),
"AvgContractRate", AVERAGE(BI_Autotask_Contract_Rates[contract_hourly_rate]),
"ZeroRateEntries", CALCULATE(COUNTROWS(BI_Autotask_Contract_Rates),
BI_Autotask_Contract_Rates[contract_hourly_rate] = 0)
)
EVALUATE
ROW(
"ActiveContracts", CALCULATE(COUNTROWS(BI_Autotask_Contracts),
BI_Autotask_Contracts[is_active] = TRUE()),
"WithCustomRates", DISTINCTCOUNT(BI_Autotask_Contract_Rates[contract_id]),
"AvgStandardRate", AVERAGE(BI_Autotask_Roles[hourly_billing_rate]),
"AvgContractRate", AVERAGE(BI_Autotask_Contract_Rates[contract_hourly_rate])
)
Het standaard factuurarief van elke rol vergeleken met het gemiddelde, minimum en maximum contracttarief over alle contracten met overschrijvingen
| Role | Standard | Avg Contract | Min | Max | Deviation | Contracts |
|---|---|---|---|---|---|---|
| Teacher, English as a foreign language | €161 | €0.00 | €0 | €0 | -100.0% | 1 |
| Fine artist | €153 | €0.00 | €0 | €0 | -100.0% | 2 |
| Firefighter | €123 | €0.00 | €0 | €0 | -100.0% | 1 |
| Accountant, chartered | €123 | €33.33 | €0 | €100 | -72.9% | 3 |
| Surveyor, rural practice | €153 | €74.50 | €0 | €149 | -51.3% | 2 |
| Physiological scientist | €123 | €50.00 | €0 | €100 | -59.3% | 2 |
| Education administrator | €153 | €86.62 | €0 | €148 | -43.4% | 89 |
| Dispensing optician | €123 | €57.42 | €0 | €118 | -53.3% | 6 |
| Associate Professor | €123 | €68.86 | €0 | €118 | -44.0% | 11 |
| Audiological scientist | €143 | €99.27 | €0 | €135 | -30.6% | 94 |
| Administrator, sports | €147 | €111.50 | €0 | €143 | -24.1% | 6 |
EVALUATE
ADDCOLUMNS(
SUMMARIZE(BI_Autotask_Roles, BI_Autotask_Roles[role_name],
BI_Autotask_Roles[hourly_billing_rate]),
"AvgContractRate", CALCULATE(
AVERAGE(BI_Autotask_Contract_Rates[contract_hourly_rate])),
"MinContractRate", CALCULATE(
MIN(BI_Autotask_Contract_Rates[contract_hourly_rate])),
"MaxContractRate", CALCULATE(
MAX(BI_Autotask_Contract_Rates[contract_hourly_rate])),
"ContractCount", CALCULATE(
DISTINCTCOUNT(BI_Autotask_Contract_Rates[contract_id]))
)
ORDER BY [AvgContractRate] ASC
Top 10 contract-rol combinaties met het grootste verschil tussen standaard- en contracttarief
| # | Contract | Role | Standard | Contract | Gap | Deviation |
|---|---|---|---|---|---|---|
| 1 | Contract Wonder-898 | Teacher, English as a foreign language | €161 | €0 | €-161 | -100% |
| 2 | Contract However-482 | Education administrator | €153 | €0 | €-153 | -100% |
| 3 | Contract Matter-880 | Education administrator | €153 | €0 | €-153 | -100% |
| 4 | Contract Return-432 | Education administrator | €153 | €0 | €-153 | -100% |
| 5 | Contract Number-163 | Education administrator | €153 | €0 | €-153 | -100% |
| 6 | Contract Image-547 | Education administrator | €153 | €0 | €-153 | -100% |
| 7 | Contract Best-259 | Education administrator | €153 | €0 | €-153 | -100% |
| 8 | Contract Part-398 | Education administrator | €153 | €0 | €-153 | -100% |
| 9 | Contract Interview-304 | Education administrator | €153 | €0 | €-153 | -100% |
| 10 | Contract Score-420 | Education administrator | €153 | €0 | €-153 | -100% |
Tariefverschil Visualisatie
EVALUATE
VAR _Deviations =
ADDCOLUMNS(
BI_Autotask_Contract_Rates,
"RoleName", RELATED(BI_Autotask_Roles[role_name]),
"StandardRate", RELATED(BI_Autotask_Roles[hourly_billing_rate]),
"Gap", BI_Autotask_Contract_Rates[contract_hourly_rate]
- RELATED(BI_Autotask_Roles[hourly_billing_rate])
)
RETURN
TOPN(10, _Deviations, ABS([Gap]), DESC)
Hoe de 220 contracttarief-entries zich verhouden tot het standaardtarief
EVALUATE
ROW(
"TotalEntries", COUNTROWS(BI_Autotask_Contract_Rates),
"BelowStandard", CALCULATE(COUNTROWS(BI_Autotask_Contract_Rates),
BI_Autotask_Contract_Rates[contract_hourly_rate]
< RELATED(BI_Autotask_Roles[hourly_billing_rate])),
"AtZero", CALCULATE(COUNTROWS(BI_Autotask_Contract_Rates),
BI_Autotask_Contract_Rates[contract_hourly_rate] = 0),
"AboveStandard", CALCULATE(COUNTROWS(BI_Autotask_Contract_Rates),
BI_Autotask_Contract_Rates[contract_hourly_rate]
> RELATED(BI_Autotask_Roles[hourly_billing_rate]))
)
De financiële impact van tariefafwijkingen hangt af van hoeveel uren er daadwerkelijk worden gefactureerd onder elke contract-rol combinatie. Een korting van €153/uur op een contract met 2 uur per jaar is irrelevant. Dezelfde korting op een contract met 200 uur per kwartaal is een probleem van €30.600.
Nul-tarief entries dragen het hoogste risico. 67 van 220 tariefentries staan op €0,00. Als zelfs een klein deel van die contracten factureerbare uren genereert, voer je werk uit voor niets. De meest voorkomende oorzaak: een contract is opgezet tijdens een migratie en de tariefvelden zijn leeg gelaten, waardoor ze op nul staan.
The Education administrator role appears in 89 contracts with an average contract rate of €86.62 versus a standard of €153.00. Dat is een korting van 43,4% toegepast over je grootste contractvolume. Als deze rol gemiddeld 10 uur per contract per maand boekt, is het verschil tussen standaard- en contractprijzen ruwweg €59.000 per maand over die 89 contracten.
The Audiological scientist role has 94 contract entries averaging €99.27 against a standard of €143.00. De gemiddelde korting van 30,6% op contracten met hoog volume maakt dit de op een na grootste bijdrager aan tarieferosie.
Roles like Teacher, English as a foreign language (€161 standard, €0 contract) and Fine artist (€153 standard, €0 contract) zijn waarschijnlijk verkeerd geconfigureerd in plaats van bewust gekort. Deze moeten direct worden gecorrigeerd.
EVALUATE
ADDCOLUMNS(
SUMMARIZE(BI_Autotask_Contract_Rates,
BI_Autotask_Contract_Rates[role_id]),
"RoleName", CALCULATE(VALUES(BI_Autotask_Roles[role_name])),
"StandardRate", CALCULATE(VALUES(BI_Autotask_Roles[hourly_billing_rate])),
"AvgContractRate", AVERAGE(BI_Autotask_Contract_Rates[contract_hourly_rate]),
"ContractCount", DISTINCTCOUNT(BI_Autotask_Contract_Rates[contract_id]),
"AvgGapPerHour", CALCULATE(VALUES(BI_Autotask_Roles[hourly_billing_rate]))
- AVERAGE(BI_Autotask_Contract_Rates[contract_hourly_rate])
)
ORDER BY [ContractCount] DESC
5 prioriteiten op basis van bovenstaande bevindingen
67 contract-rol combinaties staan op €0,00/uur. Haal de lijst op, koppel die aan werkelijke tijdregistraties, en bepaal welke bewust zijn (inbegrepen diensten) versus per ongeluk (migratie-artefacten). Voor elk contract dat actief factureerbare uren genereert tegen nultarief: werk het tarief bij of markeer het voor het volgende verlengingsgesprek. Dit is de snelste weg naar teruggewonnen omzet.
Deze rol heeft het hoogste contractvolume en een gemiddelde korting van 43,4% ten opzichte van het standaardtarief van €153. Niet al die kortingen zijn fout. Sommige klanten hebben lagere tarieven onderhandeld om goede redenen. Maar 89 contracten met gemiddeld €86,62 suggereert dat de korting de standaard is geworden, niet de uitzondering. Stel een minimumtarief in voor nieuwe contracten en markeer verlengingen waar het verschil groter is dan 25%.
94 contracten met een gemiddelde korting van 30,6% ten opzichte van het standaard van €143. Het minimum contracttarief is €0 en het maximum €135, dus er is grote variatie. Sorteer deze contracten op gefactureerde uren en focus eerst op de contracten met hoog volume. Een verschil van €43,73/uur op een contract met 40 uur per maand is €1.749/maand aan gederfde omzet.
Elke contracttarief-overschrijving is ooit door iemand ingesteld, zonder centraal overzicht over het cumulatieve effect. Maak een beleid: maximum kortingspercentage per rol, goedkeuring vereist voor tarieven onder het minimum, en een kwartaalreview van alle contracttarieven versus standaard. Dit voorkomt dat het probleem groeit terwijl je de bestaande gaten repareert.
Wanneer een contract voor verlenging komt, haal de tariefafwijkingsdata op voor die specifieke klant. Laat het verschil zien tussen het contracttarief en het huidige standaardtarief. Dit gaat niet over agressieve prijsverhogingen. Het gaat over data hebben om een tariefaanpassing te onderbouwen die de werkelijke waarde van je diensten weerspiegelt. Klanten respecteren transparantie onderbouwd met cijfers.
Elke rol in Autotask heeft een standaard uurtarief. Wanneer je een contract aanmaakt, kun je dat tarief overschrijven voor specifieke rollen. Hiermee kun je maatwerk prijzen bieden per klant zonder het globale roltarief te wijzigen. De overschrijving geldt alleen voor tijdregistraties die onder dat specifieke contract worden gefactureerd.
Nul-tarief entries komen doorgaans uit drie bronnen: contracten gemigreerd vanuit een andere PSA waarbij tariefvelden niet zijn gemapt, contracten waarbij bepaalde rollen zijn opgenomen in een vast bedrag, of invoerfouten bij het opzetten van het contract. De oplossing hangt af van de oorzaak. Controleer of het contract een vast bedrag is (dan is nul correct) of nacalculatie (dan is nul een fout).
De omzetimpact hangt af van hoeveel uren er worden gefactureerd onder elke contract-rol combinatie. Een korting op een contract zonder factureerbare uren heeft geen financieel effect. Een korting op een contract met hoog volume kan duizenden euro per maand kosten. Combineer dit rapport met je tijdregistratiedata om het werkelijke omzetverschil te berekenen.
Not necessarily. Some discounts are part of a negotiated agreement and raising them mid-contract would damage client trust. Focus on three categories: nul-tarief entries that should not be zero, contracts coming up for renewal where you can negotiate a rate adjustment, and new contracts where you can apply a minimum rate policy going forward.
Ja. Koppel Proxuma Power BI aan je Autotask account, voeg een AI tool (Claude, ChatGPT of Copilot) toe via MCP, en stel dezelfde vraag. De AI schrijft de DAX queries, voert ze uit op je echte data, en produceert een rapport zoals dit in minder dan vijftien minuten.
Koppel Proxuma's Power BI integratie, gebruik een MCP-compatible AI om vragen te stellen en genereer op maat gemaakte rapporten - in minuten, niet in dagen.
Bekijk meer rapporten Aan de slag