The number comes in light every quarter.
So you make a general push. Tighten up project management. Remind the team to log hours accurately. Have a conversation with Sales about scoping.
Three months later the number comes in light again.
The problem is not effort. The problem is diagnosis. You are treating a symptom without knowing the cause.
Margin does not leak in one place.
PS margin erosion almost never comes from a single source. It accumulates across dozens of small decisions made by different people at different points in the delivery process.
A project scoped too loosely. A customer who pushed the go live date twice and your team re-ramped each time without tracking the cost. A senior resource assigned to work that should have gone to someone more junior. A change request absorbed without a conversation because the SOW did not back the team up.
None of these individually shows up as a margin problem. Together they explain why the number keeps missing.
The four places margin actually leaks.
Scoping. The estimate was wrong from the start. Either the complexity was underestimated or the hours were discounted to win the deal. This is the hardest leak to fix because it happens before PS is fully in the room.
Staffing mix. The work was done by someone more expensive than the work required. This is common in smaller teams where senior people fill gaps. It is real cost that rarely gets tracked.
Customer driven delays. The customer pushed timelines. Your team absorbed the cost of re-ramping, rescheduling, and re-engaging. This cost is almost never captured in project accounting.
Scope creep without a conversation. Work got done that was not in the SOW. Sometimes because the SOW was vague. Sometimes because the team defaulted to doing rather than escalating. Either way your team worked hours that were not in the contract.
How to find yours.
Pull your last ten to fifteen projects. For each one compare budgeted hours to actual hours by phase. Not just total hours. By phase.
Where does the variance concentrate? If it is consistently in one phase you have a scoping or delivery problem in that phase. If it is spread across phases you have a staffing mix or scope creep problem.
Then look at which customer segments or deal types show the most consistent overruns. That is your structural pattern.
What to do with what you find.
Match the fix to the source.
A scoping problem gets fixed upstream. Better discovery, tighter estimation models, PS involvement in the sales process earlier.
A staffing mix problem gets fixed with clearer role definitions and a deliberate staffing model that matches work complexity to resource cost.
A customer delay problem gets fixed in the SOW and in the project kickoff conversation where you establish what happens when the customer is not ready.
A scope creep problem gets fixed with SOW language and a team culture that is comfortable having the out of scope conversation.
Want to run this analysis?
Download the Margin Leak Finder template below. It walks you through comparing budgeted to actual hours by phase, identifying variance patterns, and prioritizing where to focus first.
Start for free at app.cadenceops.io/signup