Construction project controls, consulting, and In Project AI
Construction Cost Control: How to Forecast Cost at Completion
A practical guide to construction cost control: how to structure the budget, track commitments, calculate estimate to complete and forecast at completion, manage contingency and pending changes, and report cost to owners with a worked example.
Article summary
A practical guide to construction cost control: how to structure the budget, track commitments, calculate estimate to complete and forecast at completion, manage contingency and pending changes, and report cost to owners with a worked example.
Why cost control is about the forecast, not the actuals
Most construction budget problems are visible months before they show up in actual cost. A subcontract bought out over budget, a pending change waiting for approval, or general conditions running long because the schedule slipped all affect the final cost long before the invoices arrive. Cost control is the discipline of seeing those movements early and acting on them.
That is why the most important number in a construction cost report is not the actual cost to date. It is the forecast at completion (FAC): the best current estimate of what the project will cost when it is finished. This guide explains how to build that forecast, keep it honest, and report it in a way owners and executives can act on.
The building blocks of a construction cost report
| Column | Definition |
|---|---|
| Original budget | The approved budget at contract award, by cost code |
| Approved changes | Executed change orders and budget transfers |
| Current budget | Original budget plus approved changes |
| Committed cost | Subcontracts and purchase orders issued, plus approved subcontract changes |
| Actual cost to date | Invoices and labor posted to the job |
| Estimate to complete (ETC) | Cost still expected to finish each line |
| Forecast at completion (FAC) | Actual cost to date plus estimate to complete |
| Variance | Current budget minus forecast at completion (positive is favorable) |
| Pending exposure | Changes submitted or anticipated but not yet approved |
Organize the budget by a consistent cost code structure, usually based on CSI MasterFormat divisions or your company's own codes. Keep the same structure across projects so trends and benchmarks are comparable.
How to calculate forecast at completion
The basic formula is simple: FAC = actual cost to date + estimate to complete. The hard part is a realistic estimate to complete. There are three common ways to build it, and good cost engineers use the right one for each line.
| Method | How it works | Best for |
|---|---|---|
| Committed-cost method | Remaining value of the subcontract or PO, plus expected changes | Subcontracted scopes with firm contracts |
| Bottom-up re-estimate | Re-estimate the remaining quantities and unit costs | Self-performed work and scopes not yet bought out |
| Performance-based (EVM) | Remaining budget divided by the cost performance index (CPI) | Large scopes with reliable progress measurement |
Never let the estimate to complete default to "budget minus actual." That assumes the rest of the work will go exactly to plan, which hides overruns until the line runs out of money.
A worked example
Consider a concrete scope with a current budget of $1,000,000. The subcontract was bought out at $940,000, $25,000 of approved subcontract changes have been executed, and $610,000 has been billed to date. The superintendent expects an additional $35,000 for winter protection that is not yet in the subcontract.
| Item | Amount |
|---|---|
| Current budget | $1,000,000 |
| Committed cost ($940,000 + $25,000) | $965,000 |
| Actual cost to date | $610,000 |
| Remaining commitment ($965,000 - $610,000) | $355,000 |
| Anticipated additional cost (winter protection) | $35,000 |
| Estimate to complete | $390,000 |
| Forecast at completion ($610,000 + $390,000) | $1,000,000 |
| Variance | $0 (fully consumed) |
On a "budget minus actual" view this line would look like it had $390,000 of headroom. In reality it is fully consumed, and any further change on concrete will come out of contingency. That is exactly the kind of insight a cost report must surface.
Buyout: where cost control really starts
The first big cost movement on most projects happens during buyout, when subcontracts and major purchase orders are awarded. Each scope is bought for more or less than its budget line, and the difference, often called buyout savings or buyout loss, should be recorded immediately instead of waiting for invoices.
- Track a buyout log with budget, awarded value, and variance for every subcontract and major PO.
- Note scope gaps between bid packages; unassigned scope is a common source of later overruns.
- Decide in writing whether buyout savings go to contingency, the owner, or another line, as your contract requires.
By the time buyout is 80 to 90 percent complete, the forecast for subcontracted work should be reliable. If it is not, the problem is usually scope gaps or unpriced changes, not the math.
Owner and contractor views of cost
Owners and contractors look at the same project through different budgets. The owner tracks the total project budget, including design fees, permits, furniture and equipment, and owner contingency, against the construction contract value. The contractor tracks its own cost against the contract value, including general conditions, fee, and construction contingency.
Problems start when the two views are not reconciled. A simple monthly reconciliation of contract value, approved changes, and pending changes between owner and contractor prevents most end-of-project disputes, and it makes every pay application review faster.
Managing contingency
Contingency is the money held for risks that cannot be assigned to a specific cost code yet. There are usually two pools: the contractor's construction contingency for buyout gaps and execution risks, and the owner's contingency for scope changes and unforeseen conditions. Track each separately.
- Log every draw from contingency with the date, amount, reason, and approval.
- Report contingency remaining and the monthly burn rate.
- Compare remaining contingency with risk-adjusted exposure from the risk register.
- Release unused contingency deliberately at milestones rather than letting it disappear into overruns.
A useful early warning: if contingency is burning faster than the percent complete, the project is likely to run out before it finishes.
Pending changes and exposure
Approved changes adjust the budget. Pending changes do not, but they are often the biggest source of cost surprise. Keep a separate exposure log with every potential change, its estimated value, its status, and how long it has been waiting for a decision.

Report two forecasts side by side: the committed forecast (approved budget and known costs) and the risk-adjusted forecast (including pending exposure and likely risk). The gap between them is where owner decisions matter most.
Earned value as a cross-check
On larger projects, earned value management (EVM) gives an independent check on the forecast. If the cost performance index (CPI) is 0.92, each dollar spent is producing about 92 cents of planned work. A performance-based estimate at completion is the budget at completion divided by CPI. If that number is far above the bottom-up forecast, one of them is wrong and the team should find out which.

The monthly cost review
- Update actuals and commitments from accounting and the subcontract log.
- Re-forecast each cost code with the right ETC method and a short note explaining any change over a set threshold.
- Update the change and exposure log, including decision aging.
- Reconcile contingency and compare it with risk exposure.
- Review with the project team, then publish the owner summary: current budget, FAC, variance, change since last month, top drivers, and decisions needed.
Weekly, a lighter review of commitments, new exposure, and big-ticket changes keeps the monthly forecast from being a surprise.
Common cost control mistakes
- Reporting budget versus actual with no forecast at completion.
- Letting estimate to complete default to budget minus actual.
- Burying pending changes inside the forecast without labeling them.
- Not explaining forecast movements, so owners stop trusting the report.
- Drawing contingency without a log or approval.
- Updating the forecast only when the pay application is due.
How In Project helps
In Project LLC helps owners and contractors set up cost reports and forecasting routines that leaders trust. In Project AI reads your budget, cost report, change log, and pay applications and drafts a budget forecast with contingency burn, pending exposure, and the drivers behind each variance, ready for professional review. For the wider picture, see What Are Project Controls in Construction? or contact us.
Frequently asked questions
What is forecast at completion in construction?
Forecast at completion (FAC) is the best current estimate of the project's final cost. It equals actual cost to date plus the estimate to complete the remaining work, and it is compared with the current budget to show the expected variance.
How do you calculate estimate to complete?
Use the remaining value of commitments plus expected changes for subcontracted work, a bottom-up re-estimate for self-performed or unbought scopes, or remaining budget divided by CPI where earned value is reliable. Avoid simply using budget minus actual.
How much contingency should a construction project carry?
It depends on design completeness, project type, and risk. Many projects carry roughly 5 to 10 percent for construction contingency, but the right amount should be checked against the risk-adjusted exposure from the project's risk register.
How often should a construction cost forecast be updated?
Monthly at minimum, aligned with the pay application and owner report, with a lighter weekly review of new commitments, changes, and exposure.
What is the difference between budget and forecast?
The budget is what the project is approved to spend: the original budget plus approved changes. The forecast is what the team currently expects the project to cost. The difference between them is the variance.