What is the cost performance index?
The cost performance index is an earned value management (EVM) metric that compares the budgeted value of completed work with the money actually spent to complete it. It answers one question: for every unit of currency spent, how much planned value has the project earned?
The formula is short:
CPI = EV ÷ AC
- EV (Earned Value) is the budgeted cost of the work actually completed by the measurement date. It is not the money you paid; it is the value you planned to earn for that work.
- AC (Actual Cost) is the real cost incurred for that same work, including labor, materials, subcontractors, and allocated overhead.
If a task was budgeted at $10,000 and it is finished, the project has earned $10,000 of value, even if the invoice says $12,000. That gap is exactly what CPI exposes.
> Important note: CPI measures cost efficiency, not profitability and not schedule health. A project can have a beautiful CPI while running months late, because CPI only compares value earned with money spent.
How do you calculate CPI step by step?
You need four inputs before the division: the budget at completion (BAC), the planned value (PV) for the measurement date, the earned value (EV), and the actual cost (AC). Most of the work is in getting EV and AC clean, not in the arithmetic.
Join Doitify Today
Move projects forward without the chaos: all your tasks, progress, and team reports in one unified workspace. Built for companies, startups, and remote teams — with a quick setup and a free trial.
Step 1: Fix the budget baseline
Take the approved cost baseline, not the latest wish list. If the baseline was re-approved after a scope change, use the new approved figure and note the date. Mixing an old baseline with new spending is the fastest way to produce a CPI nobody trusts.
Step 2: Calculate planned value for the date
PV is the portion of the budget that should have been earned by now according to the schedule. On a $480,000 project with an even six-month spend curve, PV at the end of month 3 is $240,000. For uneven plans, sum the budgeted value of all work scheduled to be complete by the cut-off date.
Step 3: Calculate earned value
EV is the sum of budgeted values for work that is genuinely complete. This is where teams cheat without meaning to. “Ninety percent done” is not a number you can audit. Use a rule: 0/100 for short tasks, 50/50 for tasks under two weeks, or percent complete only where a physical measure exists, such as installed meters of pipe or tested modules.
Step 4: Collect actual cost for the same scope
AC must cover the same work package as EV. If you include a purchase order that covers six months of material but only two months of work is complete, you will understate CPI today and overstate it later. Match costs to the period, not to the payment date.
Step 5: Divide and record the context
CPI = EV ÷ AC. Write down the date, the baseline version, and one sentence describing what happened this period. A number without context becomes a weapon in the next meeting instead of a decision tool.
Worked example: a six-month software migration
A company is migrating 40 internal applications to new infrastructure. The approved budget is $480,000 over six months. At the end of month 3:
| Input | Value |
|---|---|
| Budget at completion (BAC) | $480,000 |
| Planned value (PV) | $240,000 |
| Earned value (EV) | $210,000 |
| Actual cost (AC) | $250,000 |
| CPI = 210,000 ÷ 250,000 | 0.84 |
The project has earned $210,000 of budgeted value but spent $250,000. For every dollar spent, it has delivered 84 cents of planned value. The cost variance is EV − AC = −$40,000.
Notice what the number does not say. It does not say the team is slow, although the schedule performance index of 210,000 ÷ 240,000 = 0.875 suggests it is. It does not say the vendor overcharged. It says cost efficiency is 16% below plan, and that is the signal worth investigating.
How do you interpret a CPI result?
A CPI of 1.00 is on budget. Below 1.00 is overspending relative to earned value. Above 1.00 is underspending relative to earned value. That is the whole scale, but the useful interpretation lives in the context around it.
| CPI range | Plain meaning | What to check before acting |
|---|---|---|
| Above 1.10 | Work is costing less than budgeted | Is the estimate too generous, or has scope quietly shrunk? |
| 1.01 – 1.10 | Mild underspend | Is the saving real or just timing of invoices? |
| 1.00 | On budget for earned value | Confirm EV rules are consistent across work packages |
| 0.95 – 0.99 | Slight overspend | Usually timing; watch the trend for two more periods |
| 0.85 – 0.94 | Material overspend | Look at labor rates, rework, and scope changes |
| Below 0.85 | Serious cost problem | Reforecast, escalate, and review remaining scope |
Two rules keep interpretation honest.
First, look at the trend, not the snapshot. A single 0.96 after three months of 1.02 is noise. Four consecutive periods of decline is a pattern, and patterns deserve a written explanation.
Second, never treat a CPI above 1 as automatic good news. It can mean the team is efficient. It can also mean the original estimate was padded, the scope was reduced without updating the baseline, or costs are being recorded late. In a fixed-price contract, a high CPI may simply reflect a conservative bid that is now squeezing the contractor.
> Common mistake: Reporting CPI to two decimal places in a status deck without saying which baseline and which cut-off date it uses. The number looks precise, so people trust it more than the underlying data deserves.
CPI vs SPI: what is the difference?
CPI compares earned value with actual cost; SPI compares earned value with planned value. CPI tells you whether money is being used efficiently. SPI tells you whether work is being completed on schedule. They are related but not interchangeable, and reading them together is far more useful than reading either alone.
| Combination | What it usually means | Typical response |
|---|---|---|
| CPI below 1, SPI below 1 | Over budget and behind schedule | Rebaseline scope, add resources only where it changes the critical path |
| CPI below 1, SPI above 1 | Spending fast to go fast | Check for rework, overtime, and premature completion claims |
| CPI above 1, SPI below 1 | Cheap but slow | Investigate bottlenecks, dependencies, and approval queues |
| CPI above 1, SPI above 1 | Efficient and ahead | Verify EV rules and cost completeness before celebrating |
In the migration example, CPI is 0.84 and SPI is 0.875. The project is both overspending and behind. Adding contractors might fix the schedule and make the cost problem worse; cutting scope may fix both. That trade-off is a management decision, and the two indexes frame it clearly.
For a deeper walkthrough of the schedule side, see our guide to the schedule performance index and the comparison of cost variance vs schedule variance.
How do you forecast the final cost with CPI?
The most common forecast is EAC = BAC ÷ CPI. It assumes the cost efficiency observed so far will continue for the rest of the project. For the migration: $480,000 ÷ 0.84 = $571,428. The projected overrun is $91,428, or 19% above budget.
That single formula is useful, but it is not always the right one. EVM defines several forecast variants, and choosing between them is a judgment call about the future.
| Forecast method | Formula | When it fits |
|---|---|---|
| CPI-based EAC | BAC ÷ CPI | Current efficiency is likely to continue |
| Budget-rate EAC | AC + (BAC − EV) | The cost problem was a one-off and remaining work will run at plan |
| Composite EAC | AC + (BAC − EV) ÷ (CPI × SPI) | Cost and schedule problems are both constraining delivery |
| Bottom-up EAC | Re-estimate remaining work | Scope changed materially or the baseline is no longer credible |
The composite version is often the most honest for troubled projects. In the migration, AC + (480,000 − 210,000) ÷ (0.84 × 0.875) = 250,000 + 270,000 ÷ 0.735 = $617,347. That is a much darker forecast than the simple CPI version, and it reflects the fact that schedule pressure usually costs money.
Two additional measures complete the picture:
- Variance at completion (VAC) = BAC − EAC. Negative means the projected final cost exceeds the approved budget.
- To-complete performance index (TCPI) = (BAC − EV) ÷ (BAC − AC). In the example, (480,000 − 210,000) ÷ (480,000 − 250,000) = 1.17. The team must deliver the remaining work at 17% better cost efficiency than plan to finish within budget. That is a useful reality check: if the required TCPI is implausible, the budget needs to change, not just the effort level.
Why is CPI sometimes misleading?
CPI is a good metric with sharp edges. Knowing the edges is what separates a useful status report from a false sense of control.
Front-loaded costs distort the early number. Mobilization, licenses, and deposits often land before any earned value appears. A project can show CPI of 0.6 in month one and 0.98 by month four without anyone changing behavior.
Earned value rules can be gamed. Percent-complete judgments, especially on long tasks, drift toward optimistic. If the same person reports progress and approves the invoice, the incentive to round up is real.
Scope changes break the baseline. If approved changes are not reflected in BAC and PV, CPI compares new work against an old budget. The result is technically correct and practically meaningless.
Cost cuts can look like efficiency. Deferring maintenance, skipping reviews, or replacing senior staff with juniors can lift CPI this quarter and raise total cost next quarter through rework.
CPI ignores quality and revenue. A cheaper deliverable that fails acceptance is not efficient. A project that saves $50,000 in delivery but delays $2 million of revenue is not a success. CPI is one lens, not the whole camera.
Different granularity produces different answers. Measuring at the work-package level can show a healthy CPI while one subsystem is bleeding. Roll-ups hide the distribution; always check the top three variance contributors.
> Practical tip: Keep a one-line “CPI driver” note for each reporting period. “CPI fell to 0.84 because two senior contractors started a month early and rework on the billing module added 180 hours.” Six months later, that sentence is worth more than the spreadsheet.
What operating range should you set?
A single target of 1.00 is not a control limit. Real projects fluctuate, and teams need a pre-agreed band that says when a deviation is normal and when it triggers action.
Set the band during planning, using historical data from similar projects, contract type, and the stability of the environment. A repetitive manufacturing line might accept 0.97–1.03. A first-of-its-kind construction project with weather and supply-chain exposure might need 0.90–1.10 before anyone escalates. Document the band in the cost management plan so the conversation is about the project, not about whether the threshold is fair.
Three escalation triggers work well in practice:
- CPI leaves the agreed band for two consecutive reporting periods.
- Any single work package falls below 0.80, regardless of the project total.
- The CPI-based EAC exceeds the approved budget by more than the contingency reserve.
Each trigger should have a named owner and a required response date. A metric without a response path is just decoration.
How do you track CPI without a full PMO?
You do not need enterprise project controls to use CPI. You need a budget baseline, a consistent progress rule, and actual costs recorded against the same work packages. A spreadsheet can handle that for a project with 30 to 80 tasks, provided someone owns the data.
The failure mode is usually tooling, not math. When the budget lives in finance, the schedule lives in a Gantt chart, and time is tracked in a third system, the monthly CPI becomes a manual reconciliation exercise that nobody trusts. Keeping planned value, earned value, and actual cost in one workspace shortens the loop from days to minutes.
That is the problem Doitify is built for: tasks, sub-tasks, owners, budgets, and progress reports in one place, with dashboards that show planned versus actual without exporting three files. It is not a replacement for a dedicated EVM engine on a $500 million capital project, and it does not claim to be. For a 20-person team that needs a reliable monthly CPI, the value is having the inputs in the same system as the work.
CPI in agile and hybrid projects
CPI was designed for plan-driven work with a stable baseline. Agile teams often ask whether it applies. The honest answer: the ratio still works, but the inputs need translation.
In agile, earned value can be based on completed story points mapped to budget, or on the budgeted cost of accepted increments. Planned value becomes the budgeted value of the backlog the team intended to finish by the sprint boundary. The risk is that velocity is not a currency, and converting it into one can create false precision.
A pragmatic hybrid approach works better than dogma:
- Use CPI at the release or phase level, not per sprint.
- Base earned value on accepted work, not on “done” columns.
- Keep a contingency reserve for discovery and rework, because agile scope is deliberately flexible.
- Pair CPI with cycle time and throughput, which are better leading indicators for delivery flow.
If the organization cannot maintain a stable baseline, skip CPI and use burn rate against a rolling forecast. A metric that requires a fiction to calculate is worse than no metric.
Common CPI mistakes to avoid
- Using actual spend as earned value. Spending money is not progress. If EV equals AC by definition, CPI will always be 1.00 and the metric becomes useless.
- Ignoring the cut-off date. EV and AC must refer to the same moment. Mixing a mid-month EV with an end-of-month invoice run produces a meaningless ratio.
- Comparing CPI across projects without normalizing. A CPI of 0.92 on a fixed-price project and 0.92 on a cost-plus project mean different things for the business.
- Reporting only the project total. Check the distribution. Ten healthy work packages can hide one catastrophic one.
- Recomputing the baseline to make CPI look better. Rebaselining is legitimate when scope changes are approved; doing it to improve a report is not.
- Treating the forecast as a promise. EAC is a projection based on current performance. It should move when performance moves.
FAQ
Conclusion
CPI is one division sum with an unusually high return on effort. Earned value divided by actual cost gives you a defensible answer to the budget question, a forecast you can explain, and an early warning signal that is hard to fake for long.
Use it with three habits: keep the baseline honest, record earned value and actual cost against the same scope and date, and write down the driver behind every meaningful move. Then pair it with SPI, because a project can be cheap and late at the same time. Teams that track both, and act on the trend rather than a single reading, make better trade-offs than teams that only watch the bank balance.
If this post on cost performance index was helpful, you might also enjoy Client Onboarding Project Template and What Is Resource Overallocation? Meaning, Examples & Fixes.
Join Doitify Today
Move projects forward without the chaos: all your tasks, progress, and team reports in one unified workspace. Built for companies, startups, and remote teams — with a quick setup and a free trial.