A Complete Guide to Understanding Cumulative Flow Diagram
Learn all about the cumulative flow diagram—a visual tool for tracking work progress, optimizing workflows, and detecting bottlenecks.

Your Kanban board looks fine. Tickets move from left to right. Work gets done. But the team feels slower than last month, sprint commitments keep slipping, and nobody can explain why. The daily standup produces shrugs. A cumulative flow diagram (CFD) would show the answer in seconds: the "In Review" column has been steadily widening for three weeks, meaning work is entering review faster than it is being completed. You have a bottleneck, and the CFD makes it visible.
What Is a Cumulative Flow Diagram?
A cumulative flow diagram is a stacked area chart that shows the total number of work items in each stage of your workflow over time. The horizontal axis represents time (days, weeks, or sprints). The vertical axis represents the cumulative count of work items. Each workflow stage (such as Backlog, In Progress, In Review, Done) is represented by a colored band.
The CFD was popularized by David Anderson as part of the Kanban method for knowledge work, building on ideas from lean manufacturing. Unlike a burndown chart (which only shows remaining work) or a velocity chart (which only shows completed work per sprint), the CFD shows the entire system: how much work is waiting, how much is in progress, and how much is done, all in a single view across time.
How to Read a Cumulative Flow Diagram
Reading a CFD is straightforward once you know what to look for. There are three key properties of the bands.
Band Width = Work in Progress
The vertical distance between the top and bottom of any band at a given point in time tells you how many items are in that stage. If the "In Progress" band is 15 items wide on March 15, you have 15 items being worked on. If it was 8 items wide on March 1, your WIP has nearly doubled in two weeks.
Band Slope = Throughput
The slope of the top edge of a band shows how quickly items are entering that stage. The slope of the bottom edge shows how quickly items are leaving. When the top and bottom edges are roughly parallel, work is flowing through that stage at a steady rate. When they diverge (the band gets wider), work is accumulating.
Horizontal Distance = Approximate Cycle Time
The horizontal distance between the left edge of the "In Progress" band and the left edge of the "Done" band at the same height gives you an approximation of how long items take to move through the system. This is your approximate average cycle time. If that distance is growing, items are taking longer to complete.
Patterns in the CFD and What They Mean
Healthy Flow: Parallel Bands
When all bands maintain consistent width and the edges run roughly parallel, work is flowing smoothly through each stage. Items enter and leave each stage at approximately the same rate. This is what you want to see. The "Done" band grows steadily, and the in-progress bands stay narrow and stable.
Bottleneck: Widening Band
When a band gets progressively wider, that stage is a bottleneck. Items are entering faster than they are leaving. The most common culprit: "In Review" or "QA" stages where a limited number of reviewers cannot keep up with the development pace.
Example: A team of eight developers and two QA engineers saw their "Testing" band widen from 3 items to 12 items over four weeks. Developers kept finishing features, but QA could not test them fast enough. The fix was not hiring more QA; it was implementing automated testing for regression scenarios, freeing QA to focus on exploratory and edge-case testing. The testing band returned to a stable width of 4-5 items within two sprints.
Starvation: Narrowing Band
When a band gets progressively narrower, that stage is running out of work. This often happens downstream from a bottleneck: if development is blocked, the "In Review" and "QA" stages will eventually run out of items to process. Starvation means resources in that stage are underutilized.
Flat Line: Stalled Work
When a band goes flat (its top and bottom edges are horizontal), nothing is entering or leaving that stage. This is a red flag indicating a complete stall. A flat "In Progress" band might mean the team is blocked by an external dependency. A flat "Done" band means nothing has been completed during that period.
Staircase Pattern: Batch Processing
When the "Done" band grows in steps rather than a smooth slope, work is being completed in batches rather than continuously. This is common in teams that deploy on a fixed schedule or where testing is batched. While not necessarily bad, it indicates that you have opportunities to improve flow by moving toward continuous delivery.
Bulge Pattern: Scope Increase
A sudden widening of the "Backlog" band means a large amount of new work was added. If the other bands do not widen proportionally, the team has absorbed a scope increase without additional capacity. Watch what happens next: if the "In Progress" band stays stable, the backlog will grow, and lead time (the time from adding an item to completing it) will increase.
How to Create a Cumulative Flow Diagram
Using Project Management Tools
Most modern project management tools generate CFDs automatically. Jira includes a built-in CFD in the board reports section for both Scrum and Kanban boards. You can filter by sprint, date range, or specific columns.
ClickUp provides CFD-style analytics through its dashboard widgets, showing work item distribution across statuses over time. The interface is more visual than Jira and easier to share with non-technical stakeholders.
Azure DevOps offers a configurable CFD that lets you select which columns to include, set the date range, and adjust the rolling average period. It also supports saving different CFD views for different audiences.
Building One From Scratch
If your tool does not generate CFDs, you can build one with a spreadsheet. Capture a daily snapshot of items in each workflow stage. Set up columns for each stage and a row for each day. The values are cumulative counts (not new items per day; the total items that have ever entered that stage up to that date). Create a stacked area chart from this data.
Daily snapshot example:
- March 1: Backlog: 25, In Progress: 8, Review: 3, Done: 12
- March 2: Backlog: 27, In Progress: 9, Review: 4, Done: 13
- March 3: Backlog: 27, In Progress: 10, Review: 3, Done: 15
When plotted as a stacked area chart, these numbers produce the characteristic CFD bands. The key is consistency: capture the snapshot at the same time each day.
Using CFDs in Practice
In Sprint Retrospectives
Pull up the CFD at the start of each retrospective. It provides an objective visual of what happened during the sprint. "The Review band widened from day 3 to day 8" is a fact everyone can see, rather than a subjective complaint about slow reviews. This grounds the retrospective conversation in data.
For WIP Limit Decisions
CFDs are the best tool for setting and adjusting WIP (Work in Progress) limits. If the "In Progress" band has been averaging 12 items but the team works most efficiently at 8, set a WIP limit of 8. The CFD will show whether the limit is helping: the band should stabilize, and the "Done" band should maintain or increase its slope.
For Capacity Planning
By observing the throughput (the slope of the "Done" band), you can forecast how much work the team can complete in a given time period. If the team completes an average of 15 items per week, and there are 60 items in the backlog, the backlog represents approximately four weeks of work at the current pace. This is far more reliable than gut-feel estimates.
For Stakeholder Communication
CFDs communicate progress more honestly than a simple "percent complete" metric. Showing a stakeholder that the "Done" band is growing steadily while the "In Progress" band remains controlled demonstrates that the team is delivering consistently. Showing a widening "Review" band explains why delivery slowed, without pointing fingers.
CFD vs. Other Agile Charts
Burndown Chart: Shows remaining work in a sprint. Useful for single-sprint tracking but provides no system-level visibility. A burndown can look fine while WIP is dangerously high.
Burnup Chart: Shows completed work and total scope over time. Better than burndown for tracking scope changes, but still does not show where work is stuck.
Velocity Chart: Shows completed story points per sprint. Useful for capacity planning but is a lagging indicator; it tells you what happened, not what is happening now.
Cycle Time Scatter Plot: Shows how long individual items take to complete. Useful for identifying outliers and setting service-level expectations, but does not show workflow stage distribution.
The CFD is the most comprehensive single chart for understanding flow health. It combines throughput, WIP, and cycle time information in one view. For most teams, the CFD plus a cycle time scatter plot provides a complete flow analytics picture.
Common CFD Mistakes
- Including "Done" items without a boundary: If you never archive completed items, the "Done" band will dominate the chart and compress the in-progress bands, making them impossible to read. Set a rolling window (last 30 or 90 days) or exclude "Done" from the chart.
- Ignoring the backlog band: A growing backlog band means lead time is increasing even if cycle time is stable. If customers care about total delivery time (from request to completion), backlog growth is a problem.
- Using it with too few items: CFDs work best with a continuous flow of 20+ items through the system. With very small item counts, the chart is too noisy to show meaningful patterns.
- Not acting on what the chart shows: A CFD is a diagnostic tool, not a decoration. If it reveals a bottleneck, the team needs to address it; whether by limiting WIP, adding capacity to the constrained stage, or redesigning the workflow.
- Confusing cumulative with absolute counts: The Y-axis is cumulative. A "Done" band that appears to stop growing does not mean nothing was completed; it means you need to check whether you are looking at cumulative data or daily snapshots.
Putting It All Together
Start with a simple CFD from your project management tool. Spend five minutes studying it before your next team meeting. Look for widening bands (bottlenecks), flat sections (stalls), and whether the "Done" band is growing at a consistent rate. Share what you see with the team and ask them what they think is causing any anomalies.
The goal is not to produce a perfect chart. The goal is to make invisible workflow problems visible so you can have better conversations about how to fix them. A CFD that sparks one productive team discussion about a bottleneck has already paid for the five minutes it took to look at it.
Advanced CFD Techniques
Using CFDs to Set and Monitor WIP Limits
WIP limits are the foundation of Kanban flow management, and the CFD is the primary tool for calibrating them. Here is a practical approach: observe the "In Progress" band width over 4-6 weeks of data without any WIP limit. Note the average width and the variation. If the band averages 10 items but ranges from 5 to 18, that volatility is causing unpredictable cycle times.
Set your initial WIP limit slightly below the observed average, say 8 items. Then watch the CFD. If the "In Progress" band stabilizes at 8 and the "Done" band slope stays the same or increases, the WIP limit is working. If throughput drops, the limit might be too tight; try 9 or 10. The CFD gives you objective feedback on whether your WIP limits are helping or hurting.
Filtering the CFD for Insights
Most tools let you filter the CFD by work item type, priority, team, or label. This unlocks deeper analysis:
- Filter by item type (bug vs. feature vs. tech debt): If the "In Progress" band is wide only for bugs, your bug-fixing process might need attention, not your overall workflow.
- Filter by priority: If high-priority items have a wider cycle time band than low-priority items, your prioritization system might be causing context-switching rather than accelerating important work.
- Filter by assignee or team: In organizations with multiple teams contributing to one board, filtering by team can reveal which team is creating a bottleneck.
Combining CFDs with Other Metrics
The CFD is most powerful when paired with two other charts:
Cycle time scatter plot: While the CFD shows system-level flow, the scatter plot shows individual item variability. A stable CFD with a wide scatter plot means your averages look fine but individual items are unpredictable. Look for outliers (items that took 3-4x the average) and investigate why.
Throughput run chart: A simple chart showing completed items per day or per week. When the CFD shows a bottleneck forming, the throughput chart will show the decline in completed work. Together, they tell both the "what" (throughput is dropping) and the "where" (which stage is causing it).
CFD Case Study: Diagnosing a Delivery Slowdown
A product team at a SaaS company noticed that customer feature requests were taking 30% longer to deliver than three months earlier. Standups did not surface any obvious issues; everyone was busy and work was moving.
The Scrum Master pulled up the CFD for the last 90 days. Three patterns jumped out:
- The "Code Review" band had widened from an average of 3 items to 8 items over the period
- The "QA" band had also widened slightly, from 2 to 4 items
- The "Done" band slope had flattened, meaning throughput had decreased
Investigation revealed the root cause: the team had grown from 6 to 9 developers over the quarter, but the number of senior developers doing code reviews stayed at 2. More developers meant more pull requests competing for review attention. The fix was two-fold: establish a code review rotation that included mid-level developers (with guidelines for when to escalate to seniors) and set a WIP limit of 4 on the code review column.
Within three weeks, the "Code Review" band narrowed to 4 items, cycle time dropped 25%, and the throughput slope returned to its previous rate. The CFD made a problem visible that subjective team discussions had missed for months.
CFDs for Non-Software Teams
CFDs are not limited to software development. Any team that processes work items through stages can benefit:
Marketing teams: Track content pieces through stages like Ideation, Writing, Design, Review, Published. A widening "Review" band often reveals that approval bottlenecks are slowing content output.
Recruiting teams: Track candidates through Sourced, Screened, Interviewed, Offer, Hired. A widening "Interviewed" band might mean hiring managers are slow to provide feedback, stalling the pipeline.
Support teams: Track tickets through New, Triaged, In Progress, Waiting on Customer, Resolved. A wide "Waiting on Customer" band is expected (you cannot control customer response time), but a widening "Triaged" band means work is piling up before agents begin working on it.
Legal teams: Track contracts through Drafted, Internal Review, Client Review, Negotiation, Executed. Cycle time data from the CFD helps set realistic timeline expectations for new contract requests.
Each of these use cases can be set up in project management tools like ClickUp or Monday.com using board views with custom statuses matching the workflow stages.
Setting Up Your First CFD: A 15-Minute Guide
If you have never used a CFD, here is the fastest way to start:
- Step 1: Open your project management tool and navigate to the board or project you want to analyze
- Step 2: Verify your workflow columns match your actual process. If work sits in "In Progress" whether it is being coded, reviewed, or tested, you need more granular columns to get useful CFD data
- Step 3: In Jira, go to Board > Reports > Cumulative Flow Diagram. In ClickUp, create a dashboard widget. In Azure DevOps, go to Analytics > Cumulative Flow
- Step 4: Set the date range to the last 30 days for your first look
- Step 5: Look for the three key patterns: widening bands (bottleneck), flat sections (stall), and the slope of the "Done" band (throughput)
- Step 6: Share what you see with the team. Ask: "Does this match your experience?" The conversation that follows is where the value comes from.
You do not need to become a flow metrics expert to get value from a CFD. The chart makes patterns visible that are invisible in daily standups and sprint reviews. That visibility alone changes how teams think about their work.
CFD Troubleshooting Guide
Problem: The chart looks like a triangle with "Done" dominating. This means you are showing all-time data and completed items overwhelm the chart. Solution: Filter to the last 30-60 days.
Problem: All bands are very thin and hard to read. Your team processes very few items. Solution: Reduce the time granularity (use weekly instead of daily snapshots) or expand the date range.
Problem: The bands are very jagged and noisy. Normal variation is creating visual noise. Solution: Apply a 3 or 5-day rolling average to smooth the data.
Problem: Items jump backward in the workflow. Work items moved from "Done" back to "In Progress" will cause the "Done" band to shrink, which should not happen in a cumulative chart. Solution: Most tools handle this by not decrementing the cumulative count, but if yours does not, create a "Rework" status instead of moving items backward.
Problem: The chart does not show bottlenecks you know exist. Your workflow columns may be too coarse. If "In Progress" includes coding, review, and testing, you cannot see which sub-stage is the bottleneck. Solution: Add more columns to your board to reflect actual workflow stages.
Frequently Asked Questions
What is a Cumulative Flow Diagram (CFD)?▼
A Cumulative Flow Diagram is a visual chart used in Agile and Kanban that shows the quantity of work items in different stages of a workflow over time. Each colored band represents a workflow state, and the chart accumulates upward, making it easy to spot bottlenecks, WIP issues, and flow problems at a glance.
How do I read a Cumulative Flow Diagram?▼
The x-axis represents time, and the y-axis shows the cumulative count of work items. Each colored band represents a workflow stage. The width of a band shows how many items are in that stage. A widening band indicates a bottleneck. The vertical distance between bands shows work in progress, and the horizontal distance indicates lead time.
What problems can a CFD help identify?▼
CFDs reveal bottlenecks (widening bands), scope creep (steepening top line), stalled work (flat bands), growing WIP (expanding middle bands), inconsistent throughput (irregular slopes), and delivery problems (growing gap between started and completed work). They provide early warning signs before problems become critical.
How is a CFD different from a burndown chart?▼
A burndown chart shows remaining work decreasing over time toward a sprint goal. A CFD shows cumulative work across all workflow stages over time. CFDs provide more information—they reveal where work is stuck, not just how much remains. CFDs are better for continuous flow (Kanban), while burndown charts suit time-boxed sprints.
What tools generate Cumulative Flow Diagrams?▼
Most Agile project management tools include CFD capabilities, including Jira, ClickUp, Azure DevOps, Monday.com, Kanbanize, and SwiftKanban. Some teams also build custom CFDs using Excel or Google Sheets with the data exported from their task management tools.
What makes a healthy Cumulative Flow Diagram?▼
A healthy CFD shows relatively parallel, evenly spaced bands with consistent slopes, indicating smooth flow and stable WIP limits. The bands should not widen dramatically or flatten out. The top line (incoming work) and bottom line (completed work) should have similar slopes, indicating balanced throughput.
About the Author

Noel Ceta is a workflow automation specialist and technical writer with extensive experience in streamlining business processes through intelligent automation solutions.
Don't Miss Our Latest Content
Subscribe to get automation tips and insights delivered to your inbox