A step-by-step method to turn demand into the number of people, hours and shifts you need, with a mix of full-time, part-time and flexible staff.
Without a model, schedules are built from habit: the same number of people every Tuesday, whether it is busy or not. That leads to two expensive problems at once: overstaffing on quiet shifts and understaffing at peaks, which brings overtime, slow service and burned-out employees. A staffing model replaces habit with a rule you can explain, adjust and defend.
It does not need special software. A spreadsheet with your sales or volume data and your time records is enough to start.
Pick the driver that best predicts how much work there is. It differs by business:
| Business | Demand driver |
|---|---|
| Restaurants | Covers or transactions per hour |
| Retail | Transactions or foot traffic per hour |
| Call centers | Calls or contacts per interval |
| Warehouses | Units picked, packed or shipped |
| Cleaning | Square feet and visits |
| Healthcare and home care | Patients, visits or acuity |
| Security | Posts and patrol hours required by contract |
Pull at least 8 to 12 weeks of history by hour and day, plus last year’s same season. Note special events, weather and promotions that distort the pattern.
For each role, decide how much work one person can handle per hour at your service standard. Use your own data: total volume divided by total productive hours over a few normal weeks. For example, a counter employee might handle 20 transactions an hour, or a picker 90 units. Set a minimum staffing level too: the number of people you need for safety, security or opening and closing, regardless of volume.
Divide expected volume by the productivity standard for each hour, round up, and apply the minimum staffing level.
| Hour | Expected transactions | Standard per person-hour | People needed |
|---|---|---|---|
| 7 to 8 a.m. | 55 | 20 | 3 |
| 8 to 9 a.m. | 70 | 20 | 4 |
| 9 to 10 a.m. | 38 | 20 | 2 |
| 10 to 11 a.m. | 22 | 20 | 2 (minimum) |
| 11 a.m. to 12 p.m. | 45 | 20 | 3 |
Add up the hours for the day and the week. This is your productive labor requirement.
People are not productive every paid hour. Add an allowance for:
This allowance is often called shrinkage in workforce planning. If 15% of paid time is non-productive, divide productive hours by 0.85 to get scheduled hours.
Turn weekly hours into people. A mix of contract types gives stability and flexibility:
| Type | Strengths | Watch out for |
|---|---|---|
| Full-time | Stability, knowledge, leadership | Overtime if hours are not managed; benefit eligibility |
| Part-time | Covers peaks and weekends | Availability limits; turnover |
| On-call or flex pool | Covers absences and spikes | Reporting-time and on-call pay rules in some states |
| Seasonal | Covers predictable seasonal peaks | Training time; early hiring |
| Overtime | Short, unexpected gaps | Cost at 1.5 times pay; fatigue |
Use headcount math: weekly scheduled hours ÷ average hours per person by contract type. Keep some extra capacity, often 5 to 10% of hours, in a trained flex pool so one call-out does not break the schedule. See FTE and the staffing calculator.
Compare planned labor cost with revenue or budget. Labor cost percentage is the common check in restaurants and retail; cost per unit or per visit works for operations and services. If the model shows labor above budget, look first at the productivity standard and the shape of the schedule, such as shift start times, before cutting people at peak times.
Our guide on how to create an employee schedule covers the details.
A regional distributor ships an average of 7,200 units a day, with Mondays about 30% busier. Pickers handle 90 units per productive hour, so an average day needs 80 productive picking hours and a Monday about 104. Breaks, the start-of-shift huddle, cleaning and absence take about 15% of paid time, so the scheduled requirement is roughly 94 hours on an average day and 122 on Mondays. Over a five-day week that is about 500 scheduled hours. The manager covers 400 hours with ten full-time pickers, adds two part-timers at 30 hours each for Mondays and Fridays, and keeps three trained on-call workers for spikes and absences. The remaining 40 or so hours are covered by the on-call workers, and overtime is reserved for unexpected surges, not built into the plan.
Some roles do not change with volume: a shift supervisor, a security guard at a fixed post, a cook who must be present while the kitchen is open. Plan these as fixed coverage first, then add variable roles on top. Also plan coverage for skills, not only heads: every shift needs someone who can open, close, handle cash or operate key equipment. A simple skills matrix shows where you depend on one person and where cross-training would help.
A staffing model is a living tool. Each month, compare forecast with actual volume, scheduled with actual hours, and service measures such as wait times or order accuracy. Update productivity standards when processes or equipment change, and rebuild the seasonal forecast once a year.
EZTime gives you the actual hours behind the model: who worked, when and on which job or location. Managers build schedules by role and location, post open shifts to a flex pool and get labor rule alerts before overtime or rest limits are crossed. Exports make it easy to compare scheduled and actual hours.
A plan that converts expected demand into labor hours, shifts and headcount by role, based on productivity standards and allowances for non-productive time.
Divide expected volume by the work one person can handle per hour, add non-productive time, then divide weekly hours by the average hours per employee.
The share of paid time that is not available for productive work, such as breaks, training and absence.
Review it monthly and rebuild seasonal forecasts at least once a year.
For short gaps, sometimes. For ongoing gaps, hiring is often cheaper. Compare both with your own numbers.
EZTime schedules by role and location and shows actual hours against the plan. Small teams pay the $20 monthly minimum; larger teams pay from $2 per employee.