Flow and pull
WIP aging report
WIP aging report is licensed CC BY 4.0. Attribution: Katafacts (katafacts.com).
Customise with AISkill file ↓1 · What it is
What it is
A WIP aging report answers one question a point-in-time snapshot can't: not how much work is open, but which specific pieces of it have been sitting the longest relative to their peers. Every item gets one thing measured — how many days it's been in its current stage — and from that, each stage's average age and which items are aging at least twice their stage's average get computed. Those items are stalled, not just old; a queue where everything is uniformly slow has a different problem than a queue where one item has quietly sat for months while everything else moves normally.
2 · When to use it
When to use it — and when not to
Use it when
- You have a queue, pipeline, or workflow with items currently open — not yet complete — and a record of when each entered its current stage.
- You want to know which specific items need attention now, not just an overall count of what's open.
- You suspect a small number of items are stalled and skewing the queue's overall feel, but can't point to which ones without a proper count.
Not when
- Everything in scope has already finished — that's a cycle-time or lead-time analysis on completed work, not this.
- You only have a total count of open items with no per-item entry date — there's nothing to compute an age from.
- The queue has fewer than a handful of items in most stages — the stage-average comparison this tool relies on needs more than one item per stage to mean anything.
3 · How to fill it in
How to fill it in
- Scope
- Which pipeline, workflow, or queue, as of what date? A snapshot with no stated boundary blends queues that don't belong together into a report that describes neither.
- Open items
- List every currently-open item with its current stage and the date it entered that stage. Pull real dates from a system of record — a guessed entry date defeats the point of measuring age at all.
- Stage averages
- Each stage's average age among its currently-open items — computed for you, nothing to enter here.
- Overall summary · Stalled items
- The overall average age, the single oldest item, and which items are flagged as stalled (aging at least twice their stage's average) — all computed for you.
- Narrative
- Drafted from the stall flags and your observation notes — what you've seen or heard about why a specific item is actually stuck.
- Countermeasures
- What will you do about the stalled items, ranked by impact and effort, owned and dated? A countermeasure not tied to a named stalled item is a coaching failure mode, not a real action.
4 · What good looks like
What good looks like
The example below is an IT service request queue's WIP aging: real entry dates per item, stage averages with the arithmetic shown, one item correctly flagged as stalled at more than 2x its stage's average, and a countermeasure that traces directly to that specific item rather than a generic 'work faster' push.
Same example, as a downloadable xlsx workbook.
Download .xlsxWIP aging report · as of 2026-03-01
IT service request queue — WIP aging
Sam Torres, Service Desk Lead · 2026-03-01
Team: Nina Petrov, Support · Sponsor: Alex Romero, IT Director
Scope
Scope covers every open service request as of 2026-03-01, across triage, in-progress, and review — excludes closed requests, which are a separate reporting view.
Open items
| Item | Stage | Entered | Age (days) |
|---|---|---|---|
| REQ-101 | Triage | 2026-02-27 | 2 |
| REQ-102 | Triage | 2026-02-26 | 3 |
| REQ-103Stalled | Triage | 2026-01-15 | 45 |
| REQ-104 | In progress | 2026-02-20 | 9 |
| REQ-105 | In progress | 2026-02-15 | 14 |
| REQ-106 | Review | 2026-02-28 | 1 |
Stage averages
| Stage | Items | Average age (days) |
|---|---|---|
| Triage | 3 | 16.7 |
| In progress | 2 | 11.5 |
| Review | 1 | 1 |
Overall summary · Stalled items
Average age
12.3 days
Open items
6
(2 + 3 + 45 + 9 + 14 + 1) / 6 = 12.3 days
Oldest item
REQ-103 (Triage)
45 days
Stalled items
- REQ-103 — 45 days is at least 2x this stage's average of 16.7 days — this item is stalled relative to its peers.
Narrative
REQ-103 is the one stalled item, sitting in triage for 45 days against that stage's 16.7-day average — more than double, and the oldest item in the whole queue. The observation notes point to an unanswered vendor follow-up as the specific blocker, not a triage-process problem generally, since the other two triage items are both under a week old. Overall queue average age is 12.3 days across 6 open items.
Countermeasures
Escalate the outstanding vendor follow-up on REQ-103 directly rather than waiting on the vendor's own SLA, since the ticket has already sat unanswered for 45 days.
Linked finding: REQ-103 — stalled at 45 days, 2.7x the triage stage average
Impact: high · Effort: low · Owner: Sam Torres · Due: 2026-03-08
Add a standing follow-up reminder for any triage ticket blocked on a third party for more than 10 days, so a REQ-103 situation surfaces automatically instead of relying on someone noticing.
Linked finding: REQ-103 — 45 days with no follow-up recorded since the initial ticket
Impact: medium · Effort: low · Owner: Nina Petrov · Due: 2026-03-15
5 · Common mistakes
Common mistakes
Treating every item with a nonzero age as worth flagging.
Same vital-few discipline as every other artifact in this catalogue (master-plan §1.3) — one item genuinely stalled relative to its peers beats a list of every item that isn't brand new.
Comparing an item's age against the overall average instead of its own stage's average.
A stage that's naturally slower than others (a review step vs. a quick triage step, say) will always look 'stalled' against the overall average even when every item in it is moving normally — the comparison has to be within the stage, not across the whole queue.
Running this on a stage with only one or two items and treating the result as meaningful.
There's no real 'average' to compare against with that little data — a single item can't be 2x its own average, which is exactly why this tool never flags a single-item stage.
6 · What it connects to
What it connects to
upstream
Kanban sizing calculator
A WIP limit sized too high is exactly what produces a queue with room for items to quietly stall — this report is where that shows up after the fact.
downstream
A3 problem solving
Once a stalled item is named, an A3 is where you'd run root cause analysis in depth if the blocker isn't already obvious from the observation notes.
7 · Where AI helps
Where AI helps
Judgement — stays yours
- Deciding whether a stalled item needs immediate escalation or can wait for the next regular check-in
- Committing to which countermeasure to act on first
Analysis — AI helps
- Drafting the narrative from observation notes and the stall-flag findings
- Pressure-testing whether a proposed countermeasure actually addresses the named stalled item
Drudgery — automated
- Computing every item's age, each stage's average, and which items are stalled, with the arithmetic shown
- Identifying the single oldest item in the whole queue
- Exporting to xlsx in the house format
9 · Rate this kata
