How to read a CFD (the 60-second version)
Time runs left to right; each colored band is a status; band height = items in that status on that day. Three signals matter:
- A widening band → work is entering that status faster than it leaves. That status is your bottleneck. The wider it gets, the longer your queue.
- The vertical distance between the top and bottom lines ≈ your total WIP; the horizontal distance across the bands ≈ approximate cycle time. A CFD is your flow metrics drawn as geometry.
- A rising top line → scope is growing. If the top line climbs while the “Done” band doesn't, you're starting work faster than you're finishing it — the most common failure mode there is.
Flat bands aren't automatically good, either: a band that never moves can mean a status nobody uses — or work nobody looks at.
What native Jira gives you
The built-in CFD lives under your board's Reports tab. It's genuinely useful and genuinely limited: it's scoped to that one board, it can't be added to a dashboard or shared outside the board's audience, column mapping is fixed to the board's columns, and there's no way to build a CFD across projects or from a saved filter. The recurring community ask — a CFD gadget on a Jira dashboard — has no native answer.
Building a CFD on any scope
Spectra reconstructs the cumulative flow diagram from each issue's change history, which removes the board dependency entirely. The Flow history template gives you a CFD plus an open-issues-over-time chart in one click, and because it's history-based you can point it at:
- a project (no board required),
- an agile board,
- a saved filter — including cross-project filters, which is how you get a program-level CFD,
- or raw JQL with autocomplete.
And it lives where people will actually see it: as a native gadget on a regular Jira dashboard, next to your cycle-time and WIP widgets.
Because every Spectra chart is also a filter, the CFD isn't a dead end: spot the widening band, click into the period, and the other widgets refilter to show which issues were sitting in that status and who owns them. The native report shows you the shape; this lets you open it up.
From diagram to diagnosis: three CFD patterns
- Review band widening, In Progress flat → your constraint is review capacity, not dev capacity. Adding developers makes it worse. Check WIP aging for the review status; consider a WIP limit.
- Stairstep top line → scope arrives in bursts (big-batch planning). Expect cycle-time spikes roughly one band-width later.
- Done band growing but bottom bands widening too → you're shipping, but intake exceeds throughput; today's comfort is next month's queue. Pair the CFD with p85 cycle time (see below) to quantify the slide.
A CFD tells you where flow breaks; cycle time percentiles tell you how much it costs you. Use them together — Spectra's templates put them one dashboard apart.
FAQ
Does Jira have a cumulative flow diagram?
Yes — under a board's Reports tab. It's limited to that board's scope and columns and can't be placed on a Jira dashboard or built across projects.
How do I add a CFD to a Jira dashboard?
Not possible natively. Apps like Spectra reconstruct the CFD from issue change history and provide it as a native dashboard gadget on any scope — project, board, saved filter, or JQL.
What does a widening band on a CFD mean?
Work is entering that status faster than it's leaving — a bottleneck. The band's width over time is effectively the queue length in that status.
Can I build a CFD across multiple Jira projects?
Natively, no — the built-in CFD is per-board. With Spectra, point a dataset at a cross-project saved filter and the CFD aggregates the whole scope.
Does building a CFD send my Jira data anywhere?
Not with Spectra — it's built on Atlassian Forge and replays change history entirely inside Atlassian's infrastructure. No external servers. Why Forge-native matters for reporting on data you make decisions against.