queueglass

Runs in your browser

Which step is holding your team up?

Enter your workflow’s steps, what each finishes per day, and real arrivals from your tracker. Queueglass replays them, names the step that limits flow and reruns the line with one more unit of capacity at each step.

Enter your line

Example: purchase-order lines in the CAPEX & SOCS spend area of the BPI Challenge 2019 log, 2018, per day

Goods receipt limits flow.

It held work back on 20 of 367 days replayed.

The backlog peaks at 78 items on 31 Oct 2018 and clears by 3 Nov 2018, 3 days later.

With 47 a day at Goods receipt instead of 46, it would not clear any sooner; waiting would drop from 389 item-days to 363 item-days.

One more per day at each step

Each row is a full rerun of the same arrivals with that step’s capacity raised by one.

Capacity changePeak backlogBacklog clearedItem-days waiting
As entered783 Nov 2018389
Goods receipt 46 → 47773 Nov 2018363
Invoice receipt 49 → 50783 Nov 2018389
Invoice clearing 142 → 143783 Nov 2018389

Item-days waiting adds up, over the whole replay, every item that was ready to move and couldn’t.

Your line

Steps in order, what each finishes per day, and the work that arrived. It all stays in this browser.

Steps, in order, with measured throughput

One count per line, optionally after a date (2026-03-02,14), or paste the Created column of a Jira, Linear or GitHub CSV export and each date counts as one item.

31 Oct 2018: Goods receipt is the bottleneck

78 items could not move on from Goods receipt, which finishes at most 46.

one waiting item share of this day’s capacity used

  1. Goods receipt

    Bottleneck
    78waiting
    46 of 46 moved
  2. Invoice receipt

    Moving
    46waiting
    23 of 49 moved
  3. Invoice clearing

    Moving
    23waiting
    21 of 142 moved

Replay

367 days, including the days after the last arrival while the line drains. Drag across the lanes or use the slider.

0 to 80 items per lane
Show every period as a table

At 31 Oct 2018items

Arrived so far
5711
Finished so far
5564
In the line now
147
Held back this day
78
Average days to finish
3.02

How the replay works

Each day, that day’s arrivals join the first step. Steps are served from the last back to the first, oldest work first, each up to its capacity. An item moves at most one step per day, so a line of 3 steps takes at least 3 days end to end. With a WIP limit, a step stops passing work on while the next step already has that many waiting.

The backlog is the work that was ready to move and couldn’t. The bottleneck in a day is the step that left the most of it, and the step that limits flow is the one that was the bottleneck most often. The +1 rows are not estimates: each is the whole replay run again.

Capacity should be measured, not hoped for: count what each step actually finished on a busy day. The model assumes every item passes every step and that capacity is the same every day, weekends included.

Space plays or pauses. ← → step one day.

Where the example comes from

The arrivals are the purchase-order lines created each day of 2018 in the CAPEX & SOCS spend area of the BPI Challenge 2019 event log from a coatings and paints company: B. F. van Dongen, 4TU.ResearchData, doi:10.4121/uuid:d06aff4b-79f0-45e6-8ec8-e19730c248f1, licensed CC BY 4.0.

The three steps are the log’s goods receipt, invoice receipt and invoice clearing. Each capacity is that activity’s 90th-percentile daily count on the days it ran. Queueglass changed the data by counting events per day; the derivation script and the derived CSV are in the repository.

Your data

Your steps and arrivals are replayed in this tab. The share link keeps them after the #, which browsers do not send to any server, so the link itself is the only copy.