Skip to content

Forecast band chart

Where it is heading, and how sure we are.

Definition · Updated Nov 2, 2026

A forecast band chart shows the actual line up to today and a forecast after it, with a shaded band for the range of likely outcomes. The band widens with time as certainty drops. Use it for cash, demand and capacity plans.

Pay once. Every update included.

Live preview

Cash balance forecastCash balance from May to October (actual, $2.41M today) and forecast to April: $2.66M, with a p10–p90 band of $2.24M to $3.08M.3.2M2.7M2.3M1.8MMAYOCTAPRACTUALFORECAST
Cash balance forecast
MonthBalanceP10P90Kind
May$2.10M$2.08M$2.12MActual
Jun$2.20M$2.18M$2.22MActual
Jul$2.15M$2.13M$2.17MActual
Aug$2.30M$2.28M$2.32MActual
Sep$2.35M$2.33M$2.37MActual
Oct$2.41M$2.39M$2.43MActual
Nov$2.46M$2.39M$2.53MForecast
Dec$2.50M$2.36M$2.64MForecast
Jan$2.52M$2.31M$2.73MForecast
Feb$2.58M$2.30M$2.86MForecast
Mar$2.60M$2.25M$2.95MForecast
Apr$2.66M$2.24M$3.08MForecast

Sample data: cash on hand, May to April, actual to October, P10–P90 band

Size
Legend
Data shape
Actuals, then a forecast with a low and a high
Good for
Cash runway, demand, capacity
Avoid when
There is no range around the forecast
Sizes
XS, S, M and L, re-laid out from the data

Anatomy

Inspect it like the Figma file.

The same layers, names and tokens as the component. Select one to read its size, fill and style.

Layers

015 / Forecast band

chart/015-forecast-band
plot · band and line
Layer
forecast
Type
Vector
Size
393 × 41
Stroke
data/primary-soft
Group
Marks · 5

Layers

015 / Forecast band

chart/015-forecast-band
plot · band and line
Layer
forecast
Type
Vector
Size
130 × 21
Stroke
data/primary-soft
Group
Marks · 5

Sizes

Re-laid out, never scaled.

The same data at XS, S, M and L. Every size is redrawn from the data, so text and line weights never shrink.

M against S

Width360 px480 px

Plot328 px440 px

Labels77

Marks55

Height212 px246 px

Same tokens at every size: text styles, 1 px lines and mark radius stay put.

When to use

A forecast with its range.

Three signs it fits, and three signs another type fits better.

Is there a range around the forecast?

A single forecast line.

Yes: Keep the forecast band

Is it open-ended, with no budget to burn?

A budget to burn against.

Yes: Keep the forecast band

Does it continue a trend?

Steps between two totals.

Yes: Keep the forecast band

Code and Figma

One name in Figma and in code.

Every Figma property is a prop with the same name and values. One command installs it.

Figma

chart/015-forecast-band

size
legend
Property = propValuesDefault
size"xs" · "s" · "m" · "l""xs"
legendtrue · falsetrue
color"cat-1" · "cat-2" · "cat-3" · "cat-4""cat-1"
npx shadcn add @chartory/forecast-band
forecast-band.tsx
import { ForecastBand } from "@/components/chartory/forecast-band"import { cashForecast } from "./cash-forecast"export function CashForecast() {  return (    <ForecastBand      data={cashForecast}      size="m"      legend={true}    />  )}

Hearth widget

Forecast band as a widget.

The chart in a Hearth card with a hero number and two blocks. One token set, light and dark.

Code
Get the code

EmberPreset

ChartoryDefault preset

Pick the blocks, the size and the preset for your own widget.

Read the Hearth widget docs

FAQ

Forecast band questions.

What people ask before they put a forecast band in a dashboard.

Something else?

hello@usechartory.com
  • In the sample it runs from P10 to P90: nine times in ten, the outcome lands inside it. The low and high come with the data, one pair per point.

Related types

The same question, a different shape of answer. Every type ships in Figma and in code.

Same family

Change over time

Trends, levels and seasons across days, months or years.