Why your schedule looks fine on paper and breaks in practice: shrinkage and coverage
Published on · 5 min read
There is a pattern that repeats in people-intensive operations: the schedule looks perfect in the spreadsheet, but the operation keeps requesting overtime and patching last-minute gaps. Most of the time the cause is not poor day-to-day management, it is a sizing mistake at the source, ignored shrinkage.
What shrinkage is
Shrinkage is paid time that does not turn into effective work: vacation (about 8.33%), absenteeism (2% to 6%), training (1% to 3%), regulated breaks, meetings and back office, late arrivals and early leaves. Combined, it typically sits between 25% and 35% in real operations.
Why it breaks coverage
Sizing by the ideal present headcount ignores that, at any given moment, a relevant share of the team is unavailable. The result is insufficient coverage at peaks and a feeling that people are missing, when what is actually missing is planned margin.
How to handle it
Shrinkage enters the capacity equation from the start: required headcount is the demand in hours divided by the useful shift length, multiplied by (1 + shrinkage). In fixed-post operations, that combines with the coverage factor of the schedule model (for example, 1.17 on a 6x1 and 1.40 on a 5x2 in a 7-day operation).
From the math to the decision
With shrinkage made explicit, you can simulate scenarios before rolling them out and see the real cost of each schedule model, instead of discovering the gap at month-end closing.
FAQ
Which shrinkage value should I use?
It depends on the operation; 25% to 35% is the typical range. The right approach is to measure yours, not adopt a generic number.
Can shrinkage be reduced?
Part of it (absenteeism, late arrivals) is manageable; part (vacation) is structural. What matters is planning for it, not ignoring it.
This content is informational and planning-oriented. It does not replace a detailed sizing study.
Want to apply this to your operation?
Talk to VMARSAN about your operation's specific context.
