The S-Curve in Construction Scheduling, Explained Simply
What Is an S-Curve in Construction?
An S-curve is a graphical representation of cumulative progress (cost, hours, or quantities) plotted against time. It is called an S-curve because the shape typically resembles the letter “S” – slow start, rapid middle, slow finish. In construction scheduling, it is the most common way to visualise planned versus actual performance.
The curve is built by summing the budgeted cost (or man-hours) for each period and plotting the cumulative total. The result shows how much work should be complete at any point in time according to the baseline schedule.
Planned vs Earned vs Actual Curves
To get the full picture, you need three curves:
- Planned (PV / BCWS): The budgeted cost of work scheduled. This is your baseline S-curve.
- Earned (EV / BCWP): The budgeted cost of work performed. Shows the value of work actually completed.
- Actual (AC / ACWP): The actual cost incurred for the work performed.
Comparing these three curves tells you if you are ahead/behind schedule (EV vs PV) and under/over budget (EV vs AC).
What the Shape Tells You About Progress
The S-curve shape is not accidental. It reflects the natural lifecycle of a project:
- Early slow growth: Mobilisation, design, early site work. Resources are being ramped up.
- Steep middle section: Peak construction activity. Most of the work is done here.
- Flattening tail: Completion, punch lists, demobilisation.
If your actual curve deviates from the planned S-shape, you can diagnose issues:
- Flatter than planned: Work is behind schedule. Could be due to delays, resource shortages, or rework.
- Steeper than planned: Work is ahead of schedule (or you are overrunning cost if actual costs are also high).
- Multiple inflection points: Possible changes in scope or execution strategy.
How to Build an S-Curve from a Primavera P6 Schedule
You can generate an S-curve from P6 using earned value reports or by exporting resource/cost data. Here is a step-by-step method:
- Export the schedule: In P6, go to Activities view, add columns for Budgeted Total Cost (or Budgeted Units) and Planned/Actual dates.
- Calculate cumulative values per period: Use a spreadsheet to sum costs for each time period (e.g., weekly) based on the activity dates.
- Plot cumulative cost vs time: Create a line chart with time on the X-axis and cumulative cost on the Y-axis.
- Repeat for actuals: Use actual start/finish dates and actual costs to plot the actual curve.
Alternatively, you can use a free tool like Project Assure – a browser-based Primavera P6 XER analyser. It automatically generates S-curves (planned vs earned vs actual) from your XER file, with no upload required.
Common Pitfalls When Using S-Curves
- Ignoring the time axis scale: A compressed time scale can make a curve look steeper than it is. Always check the period increments.
- Using cost curves without context: A cost S-curve does not show physical progress if cost is not proportional to work (e.g., material purchases upfront).
- Not updating the baseline: If the baseline is not updated after approved changes, the planned curve becomes meaningless.
Practical Example
Imagine a 12-month, $12M project. The planned S-curve shows $1M in month 1, $3M by month 3, $6M by month 6, $9M by month 9, and $12M by month 12. At month 6, your actual curve shows only $4M earned. That indicates you are behind schedule – you should have completed $6M worth of work. The cost variance (EV – AC) might reveal if you are also over budget.
By monitoring the S-curve monthly, you can spot trends early and take corrective action.
Linking S-Curves to Earned Value Management
The S-curve is the foundation of EVM. Key metrics derived from it:
| Metric | Formula | Meaning |
|---|---|---|
| Schedule Variance (SV) | EV – PV | Negative = behind schedule |
| Cost Variance (CV) | EV – AC | Negative = over budget |
| Schedule Performance Index (SPI) | EV / PV | <1 = behind schedule |
| Cost Performance Index (CPI) | EV / AC | <1 = over budget |
These metrics are best visualised as S-curves over time.
Conclusion
The S-curve is a simple yet powerful tool for construction schedule analysis. It turns raw schedule data into a visual story of progress. By understanding its shape and comparing planned vs actual curves, you can quickly assess project health. Tools like Project Assure make this analysis accessible to anyone with a P6 XER file – no complex setup required.
Run these checks free, in your browser
Free, browser-based Primavera P6 XER schedule analyser — DCMA 14-point, GAO & NASA checks, EVM/S-curve, and forensic baseline-vs-update comparison. Nothing is uploaded; your XER is parsed locally in the browser. 3 free analyses, no card required.
Analyse your XER →Frequently asked questions
What does an S-curve show in construction?
An S-curve shows cumulative progress (cost, hours, or quantities) over time. It compares planned vs actual performance, helping you see if you are ahead or behind schedule and under or over budget.
How do you read an S-curve?
The vertical axis shows cumulative value (e.g., cost), and the horizontal axis shows time. The planned curve is your baseline. If the actual curve is below the planned curve, you are behind schedule; if above, ahead. The slope indicates the rate of progress.
What is the difference between planned, earned, and actual S-curves?
Planned (PV) is the budgeted cost of work scheduled. Earned (EV) is the budgeted cost of work performed. Actual (AC) is the actual cost incurred. Comparing EV vs PV gives schedule variance; EV vs AC gives cost variance.
Can I generate an S-curve from Primavera P6?
Yes. You can export cost or resource data from P6 and plot cumulative values in a spreadsheet. Alternatively, use a tool like Project Assure that automatically generates S-curves from a P6 XER file.
Why is it called an S-curve?
Because the cumulative progress curve typically forms an 'S' shape: slow at the start (mobilisation), steep in the middle (peak work), and flattening at the end (completion).