CIV-450 · Lesson 7 of 12 · 19 min

Cost control, earned value and progress payments

Once construction starts, money moves every month. The contractor is paid for the work done, the owner tracks spending against the budget, and both want early warning if the project is heading for an overrun. This lesson looks at cost control from both sides of the contract: the contractor's earned value tracking, which tells it whether the job is making or losing money, and the owner's payment process, which turns measured work into progress payments while protecting the owner and the subcontractors. CON-310 treats contractor cost control in more depth; here the focus is on what an engineer needs to read, check and certify.

Budgets, baselines and cost codes

Cost control starts with a baseline: the budget divided into cost accounts that match the work breakdown structure and the schedule. A contractor sets up cost codes for each bid item and for indirect costs such as site supervision, and records labour hours, equipment hours, materials and subcontract costs against them. Comparing actual cost with budget for each code, every week or month, shows where the money is going. But a simple comparison of spending with budget is misleading on its own: a project that has spent half its budget may be half done, or a quarter done, or nearly finished. Earned value management solves this by measuring progress in the same units as cost.

Earned value management

Earned value management, EVM, compares three quantities at a status date. Planned value, PV, is the budgeted cost of the work scheduled to be done by that date. Earned value, EV, is the budgeted cost of the work actually done. Actual cost, AC, is what that work actually cost. From these come the cost variance, EV minus AC, and the schedule variance, EV minus PV, and two indices: the cost performance index, CPI = EV/AC, and the schedule performance index, SPI = EV/PV. Values below 1 mean over budget and behind schedule respectively.

\[CV = EV - AC, \quad SV = EV - PV, \quad CPI = \frac{EV}{AC}, \quad SPI = \frac{EV}{PV}\]

The indices support forecasts. If cost performance to date continues, the estimate at completion is EAC = BAC/CPI, where BAC, the budget at completion, is the total baseline. If both cost and schedule problems persist and interact, a more pessimistic forecast is EAC = AC + (BAC − EV)/(CPI × SPI). The to-complete performance index, TCPI, gives the cost efficiency needed on the remaining work to finish within the budget. Studies of many projects have found that once a project is about 20 % complete, its CPI rarely improves much, which is why EVM is valued as an early warning.

\[EAC = \frac{BAC}{CPI}, \qquad TCPI = \frac{BAC - EV}{BAC - AC}\]

Earned value on the Ridgeway package

In a unit-price contract, the owner does not usually see the contractor's costs. On the Ridgeway package, however, Northline shares its earned value report at the monthly progress meeting, because the city's contract includes a partnering arrangement for exchanging forecasts. The budget at completion is the contract price, and earned value is the measured work at contract unit prices. Sofia ran the numbers at the end of August, month 4.

Earned value indices and forecasts at month 4, the progress payment certificate, and the monthly cash flow with holdback or retainage.
# Earned value at the end of month 4, then the progress payment certificate
UNITS = "SI"
SI = UNITS == "SI"
CUR = "CAD" if SI else "USD"
BAC = 7242426 if SI else 5998610          # Northline's corrected contract price
# planned value from the cost-loaded schedule, cumulative fraction of BAC by month (May to November)
pv_frac = [0.06, 0.19, 0.37, 0.56, 0.76, 0.93, 1.00]
m = 4                                     # end of August
PV = BAC * pv_frac[m - 1]
EV = BAC * 0.49                           # measured quantities at contract unit prices
AC = BAC * 0.53                           # contractor's reported cost (open-book clause on this contract)
CV, SV = EV - AC, EV - PV
CPI, SPI = EV / AC, EV / PV
EAC1 = BAC / CPI                          # if the cost performance so far continues
EAC2 = AC + (BAC - EV) / (CPI * SPI)      # if both cost and schedule performance persist
TCPI = (BAC - EV) / (BAC - AC)
print(f"BAC {BAC:,.0f}  PV {PV:,.0f}  EV {EV:,.0f}  AC {AC:,.0f}  ({CUR})")
print(f"CV {CV:,.0f}  SV {SV:,.0f}  CPI {CPI:.3f}  SPI {SPI:.3f}")
print(f"EAC = BAC/CPI {EAC1:,.0f};  EAC = AC + (BAC - EV)/(CPI x SPI) {EAC2:,.0f}")
print(f"TCPI to finish within BAC: {TCPI:.3f}")
# the owner's side: payment certificate number 4
work_to_date = EV + (186500 if SI else 154200)   # plus approved change orders valued to date
prev_paid = (2421000 if SI else 2005000)
hb = 0.10 if SI else 0.05                         # holdback (Ontario) or retainage (Minnesota public work)
held = hb * work_to_date
due = work_to_date - held - prev_paid
print(f"\nPayment certificate 4: work to date {work_to_date:,.0f}")
print(f"  less {'holdback' if SI else 'retainage'} {hb:.0%}: {held:,.0f}")
print(f"  less previous certificates: {prev_paid:,.0f}")
print(f"  amount due this certificate (before {'HST' if SI else 'any taxes'}): {due:,.0f}")
# cash flow: monthly payments and the amount held back
print("\nMonth  cumulative PV    paid in month    held back")
prev = 0.0
for i, f in enumerate(pv_frac, 1):
    cum = BAC * f
    print(f"{i:5d} {cum:14,.0f} {(cum - prev) * (1 - hb):16,.0f} {cum * hb:12,.0f}")
    prev = cum
Output
BAC 7,242,426  PV 4,055,759  EV 3,548,789  AC 3,838,486  (CAD)
CV -289,697  SV -506,970  CPI 0.925  SPI 0.875
EAC = BAC/CPI 7,833,644;  EAC = AC + (BAC - EV)/(CPI x SPI) 8,404,381
TCPI to finish within BAC: 1.085

Payment certificate 4: work to date 3,735,289
  less holdback 10%: 373,529
  less previous certificates: 2,421,000
  amount due this certificate (before HST): 940,760

Month  cumulative PV    paid in month    held back
    1        434,546          391,091       43,455
    2      1,376,061          847,364      137,606
    3      2,679,698        1,173,273      267,970
    4      4,055,759        1,238,455      405,576
    5      5,504,244        1,303,637      550,424
    6      6,735,456        1,108,091      673,546
    7      7,242,426          456,273      724,243

The picture is clear. Northline has earned CAD 3.55 million against a plan of CAD 4.06 million, so SPI is 0.875: the work is about an eighth behind plan. It has spent CAD 3.84 million to earn that, so CPI is 0.925: each dollar spent has earned about 92 cents of work. If that continues, the job will cost Northline about CAD 7.83 million, or up to CAD 8.40 million if the schedule problems compound, against a contract price of CAD 7.24 million. To finish within the contract price, Northline would need to perform 8.5 % better than budget on the remaining work, which is unlikely.

Cumulative cost against month. The planned value curve rises in an S shape to the contract price at month 7. Earned value and actual cost curves stop at month 4, with actual cost above earned value and both below planned value. A dashed vertical line marks the status date.
Planned value, earned value and actual cost at month 4.

Why should the city care about the contractor's losses? Because a contractor losing money looks for ways to recover it: claims, aggressive change pricing, cut corners, or in the worst case default. Early knowledge lets the contract administrator anticipate trouble. Here the overrun has a known cause, the soft clay at the wall footing that lesson 9 analyses, and Priya expected a claim. The EVM report gave the city two months' notice to set aside contingency and prepare its own records.

Worked problem

Reading the indices

At a status date, PV = 2.0, EV = 1.8 and AC = 2.1 million. Find CPI, SPI and the EAC by BAC/CPI if BAC = 5.0 million.

Show solution
  1. \[CPI = 1.8 / 2.1 = 0.857, \quad SPI = 1.8 / 2.0 = 0.900\]
  2. \[EAC = 5.0 / 0.857 = 5.83\ \text{million}\]

Answer: The project is over budget and behind schedule; at the current efficiency it will cost about 5.83 million.

Measurement and progress payments

The owner pays for work as it is done, usually monthly. Under the unit-price items, the resident inspector and the contractor measure quantities together: lengths of curb and pipe from the as-built survey, excavation and granular volumes from surveyed cross sections or truck tickets, asphalt areas from field measurement. Lump-sum items are paid by percentage complete, often against a schedule of values agreed at the start. The contract administrator checks the quantities, assembles the payment certificate and recommends it to the owner. Overpaying, by certifying work not done or quantities not measured, transfers risk to the owner and is one of the most serious errors an administrator can make.

Ontario's Construction Act requires the owner to retain a holdback of 10 % of the value of work done, to protect subcontractors and suppliers who might otherwise register liens. Since 2019 the Act has also set prompt payment rules: once a proper invoice is given, the owner must pay within 28 days unless it gives a notice of non-payment within 14 days, and each tier must pay the next within 7 days of being paid. Amendments in force from January 1, 2026 add an annual release of holdback on multi-year contracts and make an invoice proper unless the owner identifies its defects in writing within 7 days. Disputes about payment can go to statutory adjudication, which lesson 9 covers. For federal government work, the federal prompt payment act, in force since December 2023, sets a similar 28-day rule.

Payment certificate 4 for the Ridgeway package values the work to date at CAD 3.74 million, the earned value plus CAD 186,500 of approved changes. The 10 % holdback is CAD 373,529, previous certificates total CAD 2.42 million, and the amount due is CAD 940,760 plus HST. The cash flow table shows the holdback building to CAD 724,000 by the end of the job, money the city holds until the holdback period ends after substantial performance, or through annual release on longer contracts.

Cash flow for both parties

For the owner, the cash flow forecast is a monthly profile of payments that the finance department needs to manage borrowing and reserves. For the contractor, cash flow decides survival. A contractor pays its workers weekly, its suppliers within 30 days and its equipment costs continuously, but is paid monthly, perhaps 28 or more days after invoicing, and less the amount held back. The gap between cost and income must be financed. Front-loaded bids, from lesson 3, are one response; prompt payment laws are another, because slow payment pushes small subcontractors into insolvency.

The S-curve of cumulative value against time is the standard picture: slow at mobilization, steep in midsummer when the main crews work in parallel, and flattening at the end. Comparing the actual S-curve with the plan each month is a quick visual check that complements the indices.

The owner's cost report

The city tracks its own project cost separately from the contractor's earned value. Each month Priya's team prepares a cost report with one line for each budget element from lesson 1: the contract price, approved changes, pending changes and claims, fees, testing, owner costs and the remaining contingency. Each line shows the original budget, the current commitment, the amount spent to date and the forecast at completion. The most important column is the forecast, because it tells the city's finance staff and council what the project will finally cost while there is still time to act.

Pending items deserve particular care. A change that has been requested but not yet priced, or a claim that has been notified but not yet assessed, is a real liability even though no money has moved. Good practice is to carry each pending item at its most likely value, with a note of the range, and to draw down the contingency as items are committed. At the end of August the Ridgeway report showed approved changes of about 2.5 % of the contract price and one notified claim, the soft clay at the wall, carried at the engineer's preliminary estimate. The contingency remaining was still above the expected value of the open items, so no request for additional funds was needed, but the margin had narrowed, and the report said so plainly.

Practical points

  • Track cost against progress, not against time alone; use earned value.
  • Read CPI and SPI together, and forecast with more than one EAC formula.
  • Measure quantities jointly with the contractor and keep the records.
  • Never certify work that has not been done or measured.
  • Apply holdback or retainage and prompt payment rules exactly as the law and contract require.

Common mistakes

  • MistakeComparing spending with budget and calling the project on track.

    InsteadHalf the budget spent may mean much less than half the work done; use EV.

  • MistakeUsing EAC = BAC/CPI when schedule problems are driving cost.

    InsteadAlso compute AC + (BAC − EV)/(CPI × SPI).

  • MistakePaying lump-sum items by time elapsed.

    InsteadPay by verified percentage complete against a schedule of values.

  • MistakeReleasing holdback early to help the contractor's cash flow.

    InsteadHoldback protects subcontractors' lien rights; release it only as the Act allows.

Summary and key terms

  • Earned value compares planned value, earned value and actual cost at a status date.
  • CPI = EV/AC and SPI = EV/PV; values below 1 signal overrun and delay.
  • At month 4, Northline's CPI was 0.925 and SPI 0.875, forecasting a cost of CAD 7.83 to 8.40 million.
  • Unit-price work is paid on jointly measured quantities; lump sums on verified percentage complete.
  • Ontario's Construction Act requires a 10 % holdback and sets 28-day and 7-day prompt payment rules.
  • Cash flow forecasts matter to both owner and contractor.
Planned value
The budgeted cost of work scheduled to be done by the status date.
Earned value
The budgeted cost of work actually done by the status date.
Actual cost
The cost actually incurred for the work done.
Cost performance index
Earned value divided by actual cost.
Schedule performance index
Earned value divided by planned value.
Estimate at completion
The forecast total cost of the project at its finish.
Holdback
The percentage of each payment the owner must retain under the Construction Act to protect lien claimants.
Schedule of values
A breakdown of lump-sum items into parts used to value progress.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. PV = 3.0, EV = 3.3 and AC = 3.0 million. Interpret the project's status.

    Show answer

    CPI = 1.10, SPI = 1.10: under budget and ahead of schedule.

  2. With BAC = 7.24, EV = 3.55 and AC = 3.84 million, what CPI is needed on the remaining work to finish on budget?

    Show answer

    TCPI = (7.24 − 3.55)/(7.24 − 3.84) = 1.085.

  3. Work to date is CAD 2.00 million and previous certificates total CAD 1.50 million. With a 10 % holdback, what is due?

    Show answer

    2.00 × 0.90 − 1.50 = CAD 0.30 million.

  4. Why might an owner want to know that its contractor is losing money?

    Show answer

    Losses lead to claims, aggressive change pricing, quality problems or default; early warning lets the owner prepare.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz