Why ‘budget vs actual’ is already too late

Posted · 9 min read
Updated
Share:
A monthly project budget report for the North Tower Fit-out showing five budget lines, with the Subcontract — M&E line highlighted in red: a £47,000 overrun against a £147,000 budget, with £194,000 actual. A timeline below shows the history of that overrun: the decision was made on August 24, the PO was approved on August 27, delivery happened on October 1, the invoice arrived on October 20, and the report was issued on November 1. A dashed line runs from the red row down to the decision date, labelled '10 weeks ago'. The caption reads 'The overrun was committed 10 weeks before it appeared on the report'.

It is the second Tuesday of the month and the reporting pack has landed. The CFO scrolls to the budget vs actual page. Three project lines are red. One of them, a fit-out job that looked healthy four weeks ago, is now 11% over.

The question in the room is the obvious one: what happened? Nobody can answer it cleanly, because the report shows invoices, not committed expenditure. The spend that turned the line red was decided six to ten weeks earlier, by a project manager who has since moved on to the next phase. The report is accurate. It is also describing a past that can no longer be changed.

That is the problem with budget vs actual in a project-based business. It is not a bad report. It is a late one, and it is late by design.

'Actual' means invoiced, and that's the problem

In most finance systems, "actual" means one thing: an invoice has been received, coded and posted to the ledger. That sounds like the right definition until you trace how a cost reaches that point.

A cost passes through five steps before it shows up as actual:

  1. Someone decides to spend.
  2. A purchase order is raised and approved.
  3. The supplier delivers or the subcontractor does the work.
  4. The supplier invoices.
  5. Accounts payable codes and posts the invoice.

Each step adds between one and four weeks. The total gap between the decision and the dashboard is typically 4 to 12 weeks, depending on supplier terms and delivery times.

Take a concrete case. The M&E subcontract line on a fit-out project is budgeted at £147K, and earlier packages have already committed all of it. In week 2, the project manager approves another £47K M&E package. The money is spoken for from that moment. The subcontractor starts in week 4, invoices at the end of the month, and the invoice clears approval in week 10.

On the budget vs actual report, the M&E line looks healthy from week 2 to week 10, because most of the packages committed against it have not been invoiced yet. For eight weeks, the report shows headroom that does not exist. When the invoices arrive, the line lands at £194K against a £147K budget: a £47K overrun that was decided two months earlier. Anyone approving more subcontract work in that window was deciding against a number that was wrong.

Multiply that by every open purchase order on every live project, and the budget vs actual report becomes a picture of the business as it was two months ago.

What CFOs should be asking instead

The useful question is not "what have we spent?" It is "what have we committed?"

A cost commitment is money the business has agreed to pay, whether or not the invoice has arrived. Committed expenditure is the total of those agreements against a budget: approved purchase orders, signed subcontracts and ongoing contracts, plus planned purchases that are already in the approval queue.

That total moves when decisions are made, not when the paperwork arrives. It is the number that tells a CFO how much of a budget is genuinely still available.

The difference sounds technical. In practice it changes what a finance team can do. Invoiced cost tells you where the money went. Committed cost tells you where it is going while there is still time to change direction. If you want the full definition and the mechanics behind it, we cover them in tracking committed cost.

Why standard tools don't show committed cost

If committed cost is the better number, why do so few businesses report on it? Because the tools most finance teams use were not built to hold it. Each of the three usual options has a fair reason for falling short.

ERP and accounting systems are built to record transactions once they clear. That is their job, and they do it well. But a commitment is not a transaction in the ledger sense. Some systems can hold open purchase orders, but they rarely treat commitment as a first-class figure that sits next to budget and actual on every project line.

Spreadsheets are where most project teams try to fill the gap. A commitment log in Excel works on the day it is built. After that it depends on every project manager updating it every time they approve something. Under deadline pressure that stops happening, and the sheet drifts from reality without anyone noticing. The result is worse than no data, because people make decisions on it.

Generic procurement platforms capture purchase orders, often very well. What they rarely do is connect the PO to the project budget line at the moment it is approved. The PO exists, the budget exists, and the link between them is a monthly reconciliation exercise.

None of these tools is wrong. They answer different questions. The CFO's question, how much of this budget is already spoken for, sits in the gap between them. We go deeper on the reporting side in the CFO's guide to real-time cost control.

What a real-time commitment view looks like

A commitment view tracks four numbers for every budget line, in the order costs actually move:

StageWhat it showsWhen it updates

Budget

What the line is allowed to cost

When the budget is set or formally revised

Committed

What has been approved and agreed

The moment a PO is approved

Invoiced

What suppliers have billed

When an invoice is received and matched

Paid

What has left the bank

When payment runs

The order matters. Budget vs actual compares the first row with the third. A commitment view compares the first row with the second, and keeps the other two for reconciliation and cash planning.

Go back to the £47K M&E package. In a commitment view, the line already shows £147K committed against a £147K budget before the package is approved: 100% utilised, no headroom left. Approving it takes the line to £194K, or 132% of budget, and the approver sees that on the approval screen in week 2, not in a report in week 10. The invoice in week 10 changes nothing on the budget line, because the cost was already counted. It only moves the invoiced column.

Nothing about the project changed. What changed is when the number became visible. That timing is where most overruns are born. Small approvals pile up against a budget that looks healthier than it is, which is the pattern we describe in where project money quietly leaks.

The single change that fixes the lag

There is one change that closes the gap: capture the commitment at PO approval, not at invoice arrival.

Everything else follows from it. If the commitment is recorded when the PO approval step happens, the budget line is current the moment a decision is made. Reports built on that line are current too. The month-end pack stops being the first place anyone sees a problem.

This is not a reporting project. You do not need a new dashboard layer, a data warehouse or a weekly export from three systems. You need the approval and the budget to live in the same place, so that approving a PO and committing the cost are the same event.

CostTracker's budget control is built around this one capture point. When a PO is approved, the commitment is logged against its budget line immediately, not when the invoice lands. The approver sees the budget utilisation before deciding. If the PO would take the line over budget, approval is blocked until the budget is revised or the PO is changed.

What this looks like in a weekly cost meeting

The difference shows up most clearly in the meeting where project costs get reviewed.

Before. The meeting runs on last month's budget vs actual report. Most of the time goes on explaining red lines. Project managers reconstruct decisions from memory and email threads. The conclusions are about what should have happened. Corrective action is limited to the work that has not started yet, which is usually the smallest part of the problem.

After. The meeting starts with one question: what was committed this week, and against which lines? That review takes five minutes per project, because the numbers are already current. Lines that are close to budget get discussed before the next approval, not after the invoice. The conversation moves from explaining variance to deciding what to do about it.

Once commitments are captured at approval, forecasting improves as a side effect. Estimate at completion is only as good as the cost-to-date figure underneath it. Built on invoiced cost, EAC lags by the same 4 to 12 weeks as the report. Built on committed cost, it reflects the decisions the project has actually made. Project cost forecasting becomes a calculation, not a guess about which invoices are still in the post.

How to make the shift

Moving from budget vs actual to budget vs committed is a process change before it is a system change. Three steps, in order:

  1. Audit a recent overrun. Pick a project that ended 10–20% over budget. List every purchase order and subcontract on the overrun lines, with the date it was approved and the date the invoice was posted. Plot both. The gap between the two columns is your budget variance analysis, and it usually tells you more than the variance itself.
  2. Define the commitment per budget line before any PO is raised. Every budget line needs a clear owner and a clear scope of what can be committed against it. If budgets are too coarse ("materials", "labour"), the commitment view has nothing useful to compare against. Our best practices for project budgeting cover how to structure lines so POs can be coded to them.
  3. Capture the commitment at approval and report against it. Approvals move into the system that holds the budget. Reports switch from budget vs actual to budget vs committed, with invoiced and paid kept alongside for reconciliation.

The first step costs an afternoon and no software. It is also the one that convinces the rest of the business the change is worth making.

The report CFOs actually need

Budget vs actual still has a job. It tells you what the business has been billed and what it has paid. It is the right report for closing the books and reconciling suppliers. It is a rear-view mirror, and every business needs one.

But you cannot steer a project by the rear-view mirror. The report CFOs need for that is budget vs committed: what each line was allowed to cost, and how much of it is already spoken for, as of today. That is the windshield.

It is also the answer to the question in the month-end meeting. When the commitment is visible at approval, the red line does not arrive as a surprise six weeks later. This is the same gap that explains why the CFO is last to know, and it shows up again at the other end of the process as paying incorrect invoices.

Close it at the start. The report CFOs actually need is budget vs committed. See how CostTracker captures cost commitments at the PO approval step, or read more about the committed expenditure view.

Share:

Subscribe to get the latest updates

Get the latest articles delivered straight to your inbox.

Related articles