Sign in

Blog · Territory, capacity and quota planning · Finance and FP&A teams

S-curve financial model: planned and actual project costs

An S-curve financial model compares cumulative project budget and actual cost on one timeline. Build the monthly calculations, check the totals, and separate spending delays from an expected overrun.

The short answerAn S-curve financial model plots cumulative planned project cost and cumulative actual cost against the same dates. Start with monthly budget and ledger totals, calculate a running sum for each, and compare both at the reporting cutoff. A gap shows spending timing or amount differences; physical progress and the remaining-cost estimate establish whether the project is actually overrunning.

An S curve financial model compares cumulative planned and actual project costs on the same timeline. Calculate each curve from monthly amounts, then read the gap alongside completed work and the latest estimate of remaining cost. Spending below plan can reflect delayed work rather than a saving.

Start with a comparable monthly export

Take the approved project budget and the project ledger export. Keep project ID, work package, cost category, accounting month, amount, and budget version. Add an actual-cost cutoff and identify any accruals separately so a later invoice does not duplicate an accrued amount.

Use incurred costs for this example. A cash payment schedule answers a different question; connect it to the cash flow forecast when treasury needs payment timing. Keep the same cost boundary on both curves: labor, materials, subcontractors, and any consistently allocated project overhead.

Aggregate transactions to one row per month for the selected project. Include closed months with no spending as numeric zero. Leave unreported future actuals empty. Retain the detailed export so each monthly total can be checked against its source rows.

Freeze the original baseline. If an approved change adds work, retain that baseline and create a separately labeled revised budget. Otherwise a rising actual line can appear to return to plan simply because someone rewrote history. The broader approval and ownership process belongs in project cost management.

Calculate the two cumulative curves

Cumulative planned cost = Sum of monthly planned costs through the reporting month

Cumulative actual cost = Sum of monthly actual costs through the same month

Spending gap = Cumulative actual cost minus cumulative planned cost

A US facilities team budgets a warehouse refit from January through June 2026. April 30, 2026 is the last closed date. These are illustrative project figures, with all amounts in USD.

Put month in column A, monthly plan in B, monthly actual in C, cumulative plan in D, cumulative actual in E, and spending gap in F. The resulting worksheet is:

Month Monthly plan (USD) Monthly actual (USD) Cumulative plan (USD) Cumulative actual (USD) Spending gap (USD)
January 20,000 15,000 20,000 15,000 -5,000
February 60,000 45,000 80,000 60,000 -20,000
March 140,000 110,000 220,000 170,000 -50,000
April 160,000 170,000 380,000 340,000 -40,000
May 90,000 Not reported 470,000 Not reported Not reported
June 30,000 Not reported 500,000 Not reported Not reported

Enter these formulas in row 2 and fill down through row 7:

D2 =SUM($B$2:B2)
E2 =IF(C2="",NA(),SUM($C$2:C2))
F2 =IF(C2="",NA(),E2-D2)

The formulas return #N/A for future actual points, which should remain unplotted. Do not enter the words "Not reported" in numeric cells; the table uses those words to explain empty inputs.

At April, actual cost is $340,000 against $380,000 planned. The gap is $340,000 minus $380,000, or negative $40,000. Dividing by $380,000 gives negative 10.5%, rounded to one decimal place. This is a spending comparison, not an earned-value cost variance.

Plot the lines and check the proof

Select the month column and both cumulative columns. Insert a line chart with dates on the horizontal axis and cumulative USD on the vertical axis. Use one scale, name the budget version, and mark the April cutoff. The planned line continues through June; the actual line stops at April.

Before interpreting the chart, make these checks:

  • =SUM(B2:B7)-D7 returns zero: the full monthly budget equals the final planned cumulative value of $500,000.
  • =SUM(C2:C5)-E5 returns zero: closed-month actuals equal April cumulative actual cost of $340,000.
  • April ledger rows, including supported accruals, reconcile to that same $340,000.
  • Project scope and cost categories match across both series.

Do not smooth away abrupt changes. A large equipment delivery can produce a legitimate step. A construction financial model connects project economics more broadly; this curve isolates when the approved cost is scheduled and incurred.

Separate a timing shift from an overrun

Actual cost below plan cannot establish cost efficiency without progress information. The Department of Energy's earned value guidance explicitly warns that comparing spending with planned cost without physical progress can mislead. Ask which planned work has actually been completed and which costs remain unrecorded.

Now add the project manager's latest estimate to complete:

Completion check Amount (USD) Calculation or basis
Actual through April 340,000 Closed monthly actuals above
Remaining-cost estimate 190,000 Current work-package estimate, including outstanding commitments
Expected final cost 530,000 340,000 + 190,000
Approved total budget 500,000 Final cumulative planned cost
Expected overrun 30,000 530,000 - 500,000

Expected cost exceeds budget by 6.0%, calculated as $30,000 divided by $500,000. The lower actual curve at April coexists with an expected overrun. Do not add outstanding purchase orders again if the remaining-cost estimate already includes them.

NASA's earned value tutorial separates earned value against planned value from earned value against actual cost. Those comparisons need measured work completion. Keep them separate from the simpler spending gap shown here.

Where it goes wrong

  • Different cutoffs. A partially closed actual month compared with a complete budget month exaggerates underspending.
  • Cash against incurred cost. Supplier payment terms create a gap even when work and cost follow plan.
  • Future blanks turned into zero. The actual curve appears to flatten through the remaining project and implies reported results that do not exist.
  • Baseline changes without labels. Rephasing the original budget removes the evidence of a timing shift.
  • Commitments counted twice. Adding purchase orders to an estimate that already includes them overstates expected final cost.

Compare your project workbook in Covirage

Bring your monthly project budget, actual-cost export, and prepared remaining-cost estimates in a file or Google Sheet. Covirage maps the columns, and its tools compute and check the cumulative figures and differences; the external AI model explains the results with every figure traced to its rows. Create a free Covirage account and bring a sample of your own project records.

See project cost control for the supporting use case.

Questions people ask

Why is a project spending curve called an S-curve?

Spending often starts slowly, accelerates during the main work, and slows near completion. Its cumulative shape can resemble an S. Use the approved monthly budget rather than forcing that shape; some projects have a very different spending pattern.

Does actual cost below the planned curve mean a project is under budget?

It means recorded cost is below the scheduled budget at that date. Work might be late, invoices might be missing, or costs might genuinely be lower. Review completed work, accruals, commitments, and the remaining-cost estimate before calling the gap a saving.

Should an S-curve show cash payments or incurred costs?

Either can be useful, but label the basis and apply it to both series. An incurred-cost curve supports project cost control. A payment curve supports cash planning. Comparing incurred budget with cash payments introduces payment timing into the gap.

How often should project S-curves be updated?

Update them at the same frequency as the project cost close, using one common cutoff for budget, actual cost, and progress. Monthly reporting suits this example. Faster-moving projects can use weekly periods if their underlying records support reliable weekly figures.