Here is the conclusion up front: your WES efficiency dashboard needs exactly five numbers — wave completion rate, picking UPH, task timeout rate, exception return rate, and labor/equipment utilization. Everything else belongs in the monthly review. Across 30+ go-lives I have done, any warehouse with more than eight numbers on its dashboard eventually stops looking at it. Dashboards don't get better by getting fuller; five is a ceiling, not a floor.
I have seen this hole three times. In September 2024, a 3PL in Zhengzhou doing apparel fulfillment hit week three of WES go-live and picking UPH fell from 118 units per labor-hour to 74. The owner's first instinct was that the people were the problem, so he hired 12 temps overnight — UPH did not budge. I pulled the task timeout rate: replenishment tasks were timing out at 43%. WES had dispatched every material handler to picking, nobody was replenishing, and pickers were standing in front of empty slots waiting. The rescue took three steps: 1. Carve replenishment tasks out of the picking waves into a dedicated high-priority task group; 2. Set a 15-minute timeout red line for replenishment, auto-escalated to the shift lead; 3. Make shift handover review replenishment timeouts, not UPH. Two weeks later the timeout rate was under 8% and UPH was back at 112. Remember this: when UPH drops, don't blame the people first — nine times out of ten the upstream flow broke, not the crew.
Why five, no more, no less
On November 10, 2023, at 11 p.m., an apparel e-commerce DC in California called me. Wave completion rate was 98%, everything looked great — and the next day they shorted 17,000 orders. Where was the problem? I had them pull the exception return rate: 19%. Three pallets of 'hold' inventory were stacked at the audit station — short picks, mis-picks, damaged goods — all stuck there while the system showed the waves as 'complete' and the product never shipped. Their dashboard didn't have the exception return rate, so the shift manager thought the work was done.
That is the first counterintuitive call: wave completion rate is a 'good news only' metric. It tells you how many tasks went out and came back, not whether what came back was the right product. Without the exception return rate underneath it, wave completion rate is self-deception.
Second counterintuitive call: UPH is a result metric, not a cause metric. UPH drops always trace upstream — replenishment broke, waves got chopped too small, exceptions jammed the line. Managers who only watch UPH end up as slave drivers, and the harder they push, the slower it gets. Watch the three upstream numbers (task timeout, exception return, utilization) and UPH recovers on its own.
Third is a real trade-off: the smaller you cut your waves, the prettier the wave completion rate looks — and the lower your picking UPH goes. Small waves mean constant wave changeovers and more dead walking. You have to read these two numbers together: 100% completion with UPH down 20% means your wave strategy is eating efficiency. In the healthy projects I've seen, completion rate and UPH rarely peak at the same time. Favoring one side is normal; both dropping together is the emergency.

Each number: definition, healthy range, and the three steps when it goes red
Full disclosure: the ranges below come from my project experience, and operations vary too much between sites, so don't copy these as standards. The right way to use them: run two weeks after go-live, establish your own baseline, then watch the trend — three straight days deviating more than 15% from baseline means it's time to act.
| Metric | Definition | Healthy range I've seen | First 3 steps when it stays red |
|---|---|---|---|
| Wave completion rate | Waves completed before the promised cutoff / total waves released | 95%-99% | 1. Check whether the exception return rate is climbing in parallel; 2. Check whether rush orders broke the wave release rhythm; 3. Temporarily enlarge wave batches by 20% to stabilize shipping |
| Picking UPH | Units picked per person per hour (on-shift hours, breaks excluded) | 70%-85% of designed capacity | 1. Check task timeout and exception return rates first; 2. Shadow the line for 30 minutes to see if people are waiting for product; 3. Only then consider adding headcount |
| Task timeout rate | Tasks exceeding SLA / total tasks released (split by replenishment/picking/audit) | 5%-12% | 1. Split by task type to find which one is timing out; 2. Auto-escalate timed-out tasks to the shift lead; 3. Adjust priority rules if it stays red two days running |
| Exception return rate | Short picks, mis-picks, damaged and hold units / total units picked | 2%-6% | 1. Clear the audit station — exceptions never stay overnight; 2. Root-cause by type (wrong slot / wrong label / training gap); 3. Lock and cycle-count any slot with 3 exceptions in a week |
| Labor/equipment utilization | Actual working time / planned working time (people by roster, equipment by planned uptime) | 75%-90% | 1. Below 70%, check for uneven task assignment; 2. Above 95%, check whether anyone is skipping breaks (safety red line); 3. Look at the hourly utilization curve to find idle/busy mismatch |
Let's do the math on what the task timeout rate is worth. A 200-person warehouse at 90 UPH, where timed-out tasks cause 40 minutes of dead waiting per person per day, throws away 133 labor-hours daily. At $3.50 per hour in that market, that's roughly $460 a day, over $10,000 a month. One extra number guarded on the dashboard, $10,000 a month not burned — that's the ROI of a dashboard, no grand speeches needed.
Four ways dashboards fail: the night-before-go-live checklist
- Definitions not aligned. Does UPH exclude break time? Business and IT each calculate it their own way, and the two numbers fight on day one of go-live. The night before go-live, all five definitions go on one page, signed by business, IT, and the shift lead.
- Refresh too slow. A dashboard that refreshes every 15 minutes shows you the fire after it has burned out. The five numbers the shift manager uses must refresh within 5 minutes; the owner's monthly report can be T+1. Two refresh rhythms, don't mix them.
- Waves tracked, exceptions ignored. Without the exception return rate on the screen, wave completion rate is cosmetics. Exception data belongs on the dashboard, and exceptions never stay overnight — clear them the same day, non-negotiable.
- One threshold for all seasons. The same red line for peak week and the off-season means the dashboard alarms every day, which is the same as never alarming. Set thresholds in three gears — off-season, normal, peak — and switch gears one week before peak.
In the end, the dashboard exists to keep the shift manager alive, not to make the owner's slide deck. Five numbers, aligned definitions, fast refresh, exceptions cleared daily — that's when your WES is truly live.
By Lin Xiao, WMS Implementation Consultant







