For humans · Map + Measure
Plan against reality. On the model that explains the gap.
Load budgets, forecasts and reforecasts as business models. They run through the same calculation pipeline as your actuals and land on the same causal tree, so every variance arrives with the drivers beneath it, each scored for confidence and statistical significance, and the named owner who can act on it.
Plan and actuals, calculated as one. Variance with the why attached.
One pipeline. No reconciliation. Same maths as your actuals
Business model values run through the identical calculation pipeline as your actuals: sums sum, rates average, balances carry their last value. Plan and reality cannot disagree about how a number was computed, at any granularity.
Variance that explains itself. Drivers, not rows
A miss is not a red cell in a report. It is a node on the causal tree, with driver edges beneath it carrying confidence and statistical significance, and a named Accountable owner beside it.
Monthly plan, daily answer. Ramp profiles
A budget written in monthly rows becomes a daily series through ramp profiles: flat, linear or weekday-aware, set per metric. You can read performance against plan mid-month instead of waiting for the close.
Variance analysis is not analysis. It is reconciliation.
The plan lives in a planning tool or a spreadsheet. The actuals live in the warehouse and the BI layer. The two carry different calendars, different aggregation logic and different owners, so the first week of every month goes on making them agree before anyone asks why they differ. Even when the budget is loaded into the warehouse, it shares no calculation logic with the actuals, so every comparison is hand-built and quietly fragile. KPI Tree treats the plan as a first-class citizen of the same model as the actuals, and the reconciliation step disappears.
One calculation pipeline. Plan and reality can never disagree.
A business model maps your budget, forecast or target onto the same metrics your actuals flow into. From that moment the plan is computed by the identical pipeline: each metric's aggregation semantics are respected, values re-aggregate to daily, weekly, monthly, quarterly or yearly views, and plan sits alongside every comparison frame you already use. There is no parallel spreadsheet logic to maintain and no month-end argument about whose number is right. The question moves from which figure to trust to what to do about the gap.
Budget, reforecast, downside case. As many models as the year demands.
A year rarely survives on one plan. Each business model is named, described and given its own colour: the board-approved budget, the rolling reforecast, the downside case for the credit committee. The Q3 reforecast does not overwrite the original budget; both live alongside the actuals, and you switch between them on the canvas. The model overlays every node's chart and every grid view sparkline in its own colour, so when the reforecast lands, the whole business is looking at the same version of it.
The plan is monthly. The business is daily.
Budgets are written in monthly or quarterly rows, but the metrics they govern move every day. Ramp profiles turn sparse plan points into a daily series: flat carries the value forward, linear spreads the change evenly across the gap, and the weekday options skip non-working days. Each metric carries its own profile, so a product launch can ramp while a rent line stays flat. The result is a plan you can track against on the 14th of the month, not only at the close. And it is the same daily series that the strategy module reads: a key result checks its progress against it, and an initiative's budget is judged by it, so the plan on the tree and the target on the objective are never two numbers.
The variance is a node on the tree. The explanation is beneath it.
In a report, a missed number is a row, and the explanation is a meeting. Here the missed number is a node on the causal tree, and beneath it sit its driver edges, each carrying confidence and statistical significance, retested against your data daily. You follow the chain from the P&L line that missed plan down to the operational metric that actually moved, and you arrive at a driver with a name on it rather than a theory.
Driver
Conversion rate
Outcome · 58% contribution
Revenue
A miss finds its owner. Before the board pack does.
Every metric in KPI Tree carries RACI ownership. When a period closes with a metric off its target, the period-close trigger fires, with the tolerance you set for how far it can slip, and pushes to the named Accountable owner with the driver behind the miss attached. The action they take is tracked against the metric, and the next close verifies whether it worked. Nobody discovers a variance for the first time in the quarterly review, and no miss dies in an unread report.

KPI Tree app · 09:14
Revenue is 15% below target. Conversion rate is the primary driver (Granger-causal at lag 3d). @Sarah Chen you are Accountable.
Ask the agent whether you are on budget. It knows.
Plan context is part of Canopy, the business context layer your AI agents read over MCP. Budgets and reforecasts travel with the metrics they govern, computed by the same pipeline, so an agent asked about performance against plan answers from the numbers, with your permissions applied, rather than guessing which warehouse table might be the budget. What was planned, what landed, and who owns the gap are questions any sanctioned agent can now answer.
The budget funds initiatives. The portfolio shows the return.
A budget is not only targets to track against. Part of it is investment: the projects, launches and programmes meant to move the numbers. In KPI Tree that work is modelled as initiatives on the strategy map, each carrying its budget, actual spend, a named owner, milestones and the metrics it is meant to move, with the key results above them reading from the same pipeline as the plan. The portfolio view then lays the evidence across every funded bet: how far each targeted metric has moved since the work began, in the direction it intended, against the share of spend behind it. The quarterly investment review stops being a slide of status updates and becomes a chart that can separate a bet that is failing from one that is simply early, so finance can see where the money is working before deciding where it goes next.
Where the money is working
Bubble area = budgetMetric movement since each initiative started, signed by the direction it bet on.
Share of portfolio spend
Your planning tool builds the budget. This is where it meets reality.
KPI Tree is not where you build the budget; your FP&A tool and your planning models stay exactly where they are. A business model is where the finished plan lands so the loop can run on it: the actuals move, the variance surfaces with its drivers, the owner is pushed, the action is tracked, and the impact is verified before the next reforecast. Planning stays in your planning tool. Learning whether the plan survived contact with the business happens here.
Common questions
How does the budget get into KPI Tree?
Can we hold more than one plan at the same time?
Our budget is monthly but our metrics are daily. Does that work?
Does this replace our FP&A or planning tool?
How does the owner of a missed number find out?
Can AI agents see the plan?
Do targets and key results use the same numbers?
Can finance see whether funded work paid back?
Metric Trees
The causal model the plan lands on.
Root Cause Analysis
From a missed number to the driver that moved.
Metric Ownership
The push that finds the owner of every miss.
Strategy Execution
Initiatives carry the budget; the portfolio reads the return.
Metric trees for finance teams
The P&L as a causal model.

