/* Header visible at all times on every page (Eric 2026-09-14: "put the header on the page visible all the time"). It used to hide on the homepage until 60% scroll. */
Capacity

Warehouse Capacity Math: Turn Backlog, Attendance, and Rate Into a Shift Decision

Warehouse aisle with stocked shelves

A warehouse can hit its productivity rate and still miss the customer promise. Rate is only one input. The shift begins with backlog, receives new demand, loses paid time to attendance and shrinkage, and ends with whatever capacity did not clear.

Short answer: calculate units required, productive hours per rostered person, and effective capacity in the same function and shift. Then compare overtime, temporary labor, and controlled deferral against the service consequence.

The five-line model

For one function and one shift:

required units = beginning backlog + forecast arrivals − allowed ending backlog

productive hours per rostered person = paid shift hours × attendance × (1 − shrinkage)

units per rostered person = productive hours × units per productive hour

required roster = required units ÷ units per rostered person

Round required people up. An operation cannot schedule 0.6 of a person.

Worked example

Assume:

  • Beginning backlog: 2,400 units.
  • Forecast arrivals: 7,800 units.
  • Allowed ending backlog: 500 units.
  • Rate: 28 units per productive hour.
  • Shift: 8 paid hours.
  • Attendance: 94%.
  • Shrinkage after attendance: 14%.

Required units are:

2,400 + 7,800 − 500 = 9,700

Each rostered person supplies:

8 × 0.94 × 0.86 = 6.467 productive hours

At 28 units per hour:

6.467 × 28 = 181.08 units per rostered person

Required roster:

9,700 ÷ 181.08 = 53.57, rounded to 54 people.

If only 50 are rostered, expected capacity is about 9,054 units. Ending backlog becomes:

2,400 + 7,800 − 9,054 = 1,146 units

That is 646 units above the 500-unit tolerance. Every number here is an illustrative example.

Keep attendance and shrinkage separate

Attendance answers: how many rostered people arrived?

Shrinkage answers: how much paid time from the people present is unavailable for the modeled function because of breaks, meetings, training, setup, travel inside the building, system delays, and other nonproductive time?

Combining them into one unexplained “efficiency” factor makes the model hard to operate. Attendance may require staffing policy. Shrinkage may require schedule or process design. Rate may require method, equipment, mix, or training. Each has a different owner.

Model each function separately

Receiving, putaway, replenishment, picking, packing, and shipping rarely share the same rate, demand timing, or skill pool. A building-level units-per-hour average can show enough total labor while one function starves the next.

Build the flow in process order:

  1. Work available at the function.
  2. New arrivals during the shift.
  3. Function-specific roster and productive time.
  4. Rate by meaningful work type.
  5. Capacity passed to the next function.
  6. Backlog remaining and its age.

A shortage in replenishment may appear later as low pick productivity. The picker cannot pick a unit that is not in the location.

Use a rate mix, not the best rate

If standard cases run at 32 units per hour and bulky items run at 14, a single 32-unit rate turns mix into a surprise.

Use forecast units and rate by work type:

hours required = standard units ÷ standard rate + bulky units ÷ bulky rate + exception units ÷ exception rate

Then divide required hours by productive hours per rostered person. This preserves the operational cause of the change.

Decide among overtime, temporary labor, and deferral

Once the shortage is explicit, compare choices on the same unit:

Overtime

Available quickly and usually uses trained labor. Cost includes the premium and any productivity degradation or attendance consequence that appears after repeated use.

Temporary labor

May protect core attendance and add capacity, but the usable rate can differ during training and unfamiliar work. Do not give a temporary employee the experienced rate on day one without evidence.

Controlled deferral

Sometimes the cheapest decision if customer commitments and downstream capacity allow it. Deferral needs an age and service rule; otherwise it becomes accidental backlog.

Cross-training or redeployment

Useful only when the upstream function can release labor and the receiving function can use it. Moving people from a constrained upstream process can make the whole building worse.

Stress the assumptions that fail in real life

Run at least these cases:

  • Forecast volume 10% above plan.
  • Attendance two points below plan.
  • Rate 10% below standard.
  • Backlog higher at shift start.
  • Temporary labor at a lower ramp rate.
  • Equipment or system downtime.

Do not average the risks into one “conservative” case. Separate them so management knows which response works.

Use backlog age, not only backlog units

Two thousand units due next week are not the same as 500 units already past promise. Segment backlog by commitment:

  • Past due.
  • Due this shift.
  • Due next shift.
  • Not yet released or blocked.

Capacity should clear the highest-consequence work first, not merely the easiest units that improve a productivity metric.

The shift huddle output

The operating page should show:

  • Starting backlog by age.
  • Forecast arrivals.
  • Required units and allowed ending backlog.
  • Roster, attendance, shrinkage, and rate.
  • Expected capacity and gap.
  • Selected response and owner.
  • Mid-shift trigger for changing the plan.

The model exists to make that decision before the last hour.

You can run the arithmetic in the free Warehouse Shift Capacity Calculator. The paid Warehouse Labor & Capacity Control Room extends it across functions and compares overtime, temporary labor, and deferral.

Check the work before you buy the work.

The proof ledger maps operating results, first-party systems, audit evidence, and representative deliverables to the offer each one supports.

Inspect the proof See services and pricing →
Tell me what's broken