Documentation

Cycle Time Scatter Chart for Jira Dashboard

Last updated: 1 October 2026

This page covers everything the app does. It is written to match the app's behaviour, including the parts that are unflattering — where the numbers can mislead, this page says so.

1. What the app does

It is a Jira dashboard gadget. You give it a JQL filter, the status that means work started, and the status that means work is done. It draws one point for every work item that was completed inside the time window:

Four horizontal lines are drawn on top: the 50th, 70th, 85th and 95th percentiles of those cycle times, each labelled in days. A summary line shows the sample size, the median and the 85th percentile.

Why a scatter plot instead of an average: an average cycle time of 6 days can hide a tail of items that took 40. The tail is what misses deadlines, and only a scatter shows it.

2. Requirements

3. Add the gadget to a dashboard

  1. Open a Jira dashboard and choose Edit.
  2. Choose Add gadget and search for Cycle Time Scatter Chart.
  3. Add it, then open its configuration (the gadget's menu → Configure).
  4. Fill in the four settings below and choose Save.

4. Settings

JQL filter

Which issues the chart is built from. Use the Preview button to see how many issues currently match before you commit to a filter. If you name a project in the filter, the status pickers below are narrowed to that project's statuses.

Start status and Done status

Cycle time is measured from the moment an item entered the start status to the moment it entered the done status. Pick both from the lists — you never type a status name.

Statuses are stored by ID, not by name. Jira instances often contain several statuses that share one name (for example, more than one status called Done). If two statuses in the list have the same name, the app shows a #id after each so you can tell them apart. Because the ID is what is saved, changing your Jira display language does not break an existing gadget.

Time window (weeks)

How far back to look for completed items. Only items completed inside the window are plotted.

5. How cycle time is counted

These rules exist because Jira's history does not always contain a clean "entered" event. The app resolves each case explicitly rather than guessing:

6. Percentile lines and sample size

A 95th percentile calculated from 20 issues is, in practice, just the largest of those 20 numbers. It is not an estimate of anything.

The app therefore only draws a percentile line when there is enough data for it to mean something. Below that threshold the line is omitted, and the gadget shows why instead of drawing a line that would be mistaken for a measurement.

7. Languages

The gadget interface is available in English and Chinese (Simplified). Because statuses are stored by ID (section 4), a gadget configured in English keeps working when Jira is switched to another display language.

8. Data and privacy

The app reads issues through the Jira REST API using a read-only scope. It does not send data to any external service, and it has no third-party integrations. The full description of what is read, what is stored and where is in the privacy policy.

9. Support

Questions, bug reports and feature requests: see the support page, or email wangxydlut@gmail.com.