Skip to main content
Skip table of contents

WIP Run Chart Gadget

What this gadget actually does

image-20251216-155238.png

The WIP Run Chart shows two very important things every Agile team should keep an eye on:

  1. How many issues are currently “In Progress” each day

  2. How old these in-progress issues are

Think of it as your early-warning system for bottlenecks, aging work, and “why is nothing getting done?” moments.

This gadget helps teams:

  • monitor workflow health day by day

  • understand where work is piling up

  • catch aging tasks before they turn into painful cycle time spikes

  • and drill down into details when something looks suspicious on the chart

Who typically uses it

  • Agile coaches & Scrum Masters

  • Delivery / Project managers

  • Team leads

  • Developers & QA who want to understand why the board suddenly looks like a Christmas tree of “In Progress” cards

Where the data comes from

The gadget uses standard Jira fields and historical data from the issue changelog.

Issue fields used

  • Issue key

  • Summary

  • Assignee

  • Status

  • Created date

  • Full status history with timestamps (Jira changelog)

Calculated fields

  • WIP Count — how many issues were in a status with statusCategory = "In Progress" at the end of each day

  • WIP Age — how many total calendar days an issue has already spent in any “In Progress” status

  • Average WIP Age — average age of all in-progress items for that specific day

No hard-coded status names — the gadget automatically picks any status under the “In Progress” category (e.g., In Progress, In Review, QA, Blocked, etc.)

Adding the gadget to your dashboard

  1. Go to any Jira Dashboard

  2. Click Add gadget

  3. Find Time Metrics Tracker | WIP Run Chart

  4. Add it

  5. Configure the project, date range, and statuses

  6. Done 🎉

(The gadget follows your Jira permissions - if you don’t have access to a project or issue, you won’t see it in the chart.)

Configuration Options

1 . Project selection

Pick the Jira project you want the WIP chart for.
The selection will later be persistent (so you don’t lose your setup after page refresh).

2. Date range

Choose:

  • Last 7 days

  • 30 days

  • 90 days

  • or any custom range

The chart uses calendar days (24/7) - weekends, holidays, everything.

3. Status selection

You’ll see a list of all statuses that belong to statusCategory = "In Progress".

You can:

  • select all of them (default)

  • focus on specific ones (e.g., only QA statuses)

  • or combine them in any way that makes sense for your workflow

If no statuses are selected, the gadget may still run based on all In-Progress-category statuses.
Adding a hint in UI is recommended so the user understands what happens.

4. Issue filtering

If your team has:

  • epics that live for years,

  • container tasks,

  • long-running tech initiatives,

…your WIP Age will look like a horror movie graph.

Best practice:

  • filter out Epics / container-type issues

  • or use a JQL filter to include only Story/Bug/Task-level work

Reading the chart

1. Axes and lines

  • X-axis: calendar days

  • Left Y-axis: WIP Count (blue line)

  • Right Y-axis: Average WIP Age (days) (orange line)

2. Tooltips

Hovering on a data point shows:

  • Date

  • WIP Count

  • Avg WIP Age

Clicking the point opens detailed WIP info in a modal window.

6. Summary metrics (top part of the gadget)

These give you a quick snapshot of your overall flow health:

  1. Current WIP
    Number of issues in progress on the last day of the selected range.

  2. Average WIP
    Mean WIP Count across all days in the chart.

  3. WIP Range
    Minimum–maximum WIP over the selected timeframe.

  4. Trend (Stable / Increasing / Decreasing)
    Based on the slope of the WIP line — a friendly way of saying
    “Is your WIP under control or spiraling?”

  5. Avg Age
    Overall average age of in-progress work across the entire period.

7. Drill-down: WIP Details Modal

Click any point on the chart → you get a detailed snapshot of that day.

1. Modal summary

Shows:

  • Total WIP

  • Average age (days)

  • Breakdown by status (e.g., 6 in Progress, 3 In Review, 2 QA)

2. Work item table

Columns:

  • Issue key (with a link to Jira)

  • Summary

  • Assignee

  • Total WIP Time (days)

Sorted automatically by Total WIP Time descending, so the oldest items are on top.

8. Detailed Status History (expanded item view)

When you expand a single issue in the modal, you’ll see:

  1. A horizontal timeline bar
    showing each In-Progress-category status the issue went through
    (distinct colors for each status)

  2. Status durations
    shown in calendar days, with start/end timestamps from the changelog

  3. Total WIP time
    sum of all durations in “In Progress” statuses

  4. Full transition timeline
    ideal for spotting things like:

    • stuck in review

    • bouncing between QA and Dev

    • work that keeps getting reopened

9. How the calculations work (the nerdy but important part)

1. What counts as WIP

Any issue that at 23:59:59 (workspace timezone) was in a status with:

CODE
statusCategory = "In Progress"

2. WIP Count per day

For each day in your date range:

  • look at the issue’s status at end-of-day

  • if its status category is “In Progress” → it counts toward WIP

3. WIP Age per issue

Total time the issue has spent in any In-Progress-category statuses, calculated from:

  • the moment it entered the first In Progress status

  • up to the end of the selected day

  • using calendar days (no workday logic)

Statuses like To Do, Selected for Development, Backlog, Done do not count into WIP Age.

4. Average WIP Age (daily)

For each day:

Average WIP Age=∑(WIPAge of each issue)# issues in WIP that dayAverage\ WIP\ Age = \frac{\sum (WIP Age\ of\ each\ issue)}{\#\ issues\ in\ WIP\ that\ day}Average WIP Age=# issues in WIP that day∑(WIPAge of each issue)​

5. Summary metrics

  • Current WIP: WIP for the final day

  • Average WIP: mean WIP across all days

  • WIP Range: min–max WIP value

  • Avg Age: aggregated average WIP Age

  • Trend: based on the slope of WIP values across the timeline

10. How to interpret the chart (a quick guide)

Stable WIP + stable Avg WIP Age

Your flow is predictable and healthy.

WIP rising + Avg WIP Age rising

This is the “your system is choking” alert.

Possible reasons:

  • the team is picking up too much work

  • QA / Review / external dependency bottleneck

  • multitasking

  • unclear priorities

WIP decreasing

Often a good signal - delivery is catching up.

Avg WIP Age spikes without WIP Count changes

Classic hidden bottleneck.
Work is aging somewhere (likely review or QA).

11. Practical tips & known limitations

1. Epics and container issues distort the graph

Because they live “In Progress” forever, they inflate WIP Age dramatically.

→ Filter issue types or use a JQL filter.

2. Timezone and weekend logic

  • full calendar days

  • includes weekends and holidays

  • based on your Jira workspace timezone

3. Permissions matter

If something looks off (e.g., fewer issues than expected), check Jira project/issue access.

4. Saving configuration

The gadget will support configuration persistence (project, date range, statuses) so you don’t have to re-select everything after a refresh.

12. FAQ

Q: My Average WIP Age looks wrong - why?

A: Double-check:

  • only time spent in In Progress category counts

  • calculations use calendar days 24/7

  • values are based on end-of-day snapshot

  • rounding may affect visible numbers

Open the issue in the modal → expand status history to verify.

Q: Why is Trend = Decreasing when it doesn’t feel like it?

A: Trend compares the start vs end of the selected range.
Even if WIP is still “high,” it may be lower than it was at the beginning.

Q: Can I open the WIP selection for a specific day in Jira?

A: Yes - recommended to have an “Open in Jira” button generating a JQL for that exact date’s WIP selection.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.