ForHosting KIT · Finance & money

Schedule variance calculator

Earned value of 45,000 against planned value of 50,000 gives a schedule variance of −5,000 and an SPI of 0.9: the project is behind. Enter both figures and get the variance, the index, the percent gap and a plain status. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Earned value
45,000
Planned value
50,000
You get
Schedule variance
-5,000
Schedule performance index
0.9
Percent variance
-10
Status
behind

Schedule variance is the earned-value metric that answers a single question every project control meeting cares about: is the work actually completed ahead of or behind the baseline plan? This schedule variance calculator accepts earned value (EV, the budgeted cost of work performed) and planned value (PV, the budgeted cost of work scheduled), then returns schedule variance SV equals EV minus PV, the schedule performance index SPI equals EV divided by PV, percent variance relative to the plan, and a clear status of ahead, on schedule, or behind. Project managers, PMO analysts, and contractors use the same numbers in status reports, dashboards, and bid claims.

What schedule variance and SPI mean in earned value management

In earned value management, planned value is the slice of the approved budget that should have been earned by a reporting date according to the baseline schedule. Earned value is the slice of that same budget represented by the work that has actually been completed. Schedule variance is simply the difference: SV equals EV minus PV.

When EV is larger than PV, the team has completed more budgeted work than the plan called for at that date, so SV is positive and the project is ahead of schedule in value terms. When EV is smaller than PV, less budgeted work has been accomplished than planned, SV is negative, and the project is behind schedule.

The schedule performance index SPI equals EV divided by PV and restates the same comparison as a ratio: SPI greater than one means ahead, equal to one means on plan, and less than one means behind. Percent variance is SV divided by PV times one hundred, which is convenient for dashboards that already show other percentages. These definitions match the classic PMI and AACE formulas used on capital projects, software programs, and government contracts.

Important nuance: schedule variance is measured in currency (or budget units), not calendar days. A large negative SV says the value of unfinished planned work is high; it does not by itself say how many days late the finish milestone will be. Still, SV and SPI are the standard first-line schedule health indicators before you dig into critical-path float or resource leveling.

This calculator stays focused on that first-line arithmetic so every status report can recompute SV and SPI from the same two inputs without reinventing the formulas.

Who relies on schedule variance figures

Portfolio offices and program controls teams need a deterministic schedule variance calculator that every status pack and every automated roll-up can call without opening a spreadsheet template that someone might have edited. Construction and engineering contractors use EV and PV from their cost systems each period and must publish SV and SPI in owner reports under contract language that already cites those formulas.

Software product and IT program managers track story-point or budget burn against a release plan; mapping completed work to EV and planned work to PV lets them reuse the same language executives already understand from capital projects. LMS and PMP exam platforms need an oracle that marks SV and SPI items correctly for arbitrary EV and PV pairs, including the edge where EV equals PV. Failed validation does not consume balance.

Monthly project status packs

Feed period EV and PV from the cost system and publish SV, SPI, percent variance, and ahead/behind status in the PMO status pack without hand formulas.

PMP and controls exam practice

Generate or grade schedule variance items with a deterministic oracle for arbitrary EV and PV pairs, including on-schedule edge cases.

What does a negative schedule variance mean?

SV < 0 means earned value is less than planned value: less budgeted work has been completed than the baseline scheduled for that date, so the project is behind schedule in EVM terms.

How do you calculate schedule variance?

Subtract planned value from earned value: SV = EV − PV. With an earned value of 45,000 and a planned value of 50,000, the schedule variance is −5,000, so less budgeted work is done than the plan expected by that date.

What does an SPI of 0.9 mean?

It means earned value is below planned value, so the project is behind schedule. SPI is earned value divided by planned value: above 1 is ahead, exactly 1 is on plan and below 1 is behind.

Is schedule variance measured in days?

No. Schedule variance is expressed in currency or budget units, not calendar days. A large negative figure says the value of unfinished planned work is high, but on its own it does not tell you how many days late the finish will be.

Why must planned value be greater than zero?

Because the schedule performance index divides earned value by planned value, and a zero baseline would leave that ratio undefined. Earned value may be zero, for example at the very start, but planned value has to be positive.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/biz/schedule-variance

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/biz/schedule-variance \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"earned_value":45000,"planned_value":50000}'
{
  "earned_value": 45000,
  "planned_value": 50000
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "biz.schedule_variance",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

The pure analytic path powers both the free browser tool and the API, so spreadsheet checks, portfolio roll-ups, and automation pipelines never disagree on whether the project is early or late against the approved baseline.

Input contract, response fields, and validation rules

Example: EV of forty-five thousand and PV of fifty thousand yields SV of negative five thousand, SPI of zero point nine, percent variance of negative ten, and status behind. Swap the figures so EV is fifty-five thousand and PV is fifty thousand and you get positive five thousand SV, SPI of one point one, and status ahead. POST a JSON body with two required finite numbers. earned_value (aliases ev, bcwp) is the budgeted cost of work performed to date and must be non-negative. planned_value (aliases pv, bcws) is the budgeted cost of work scheduled to date and must be strictly greater than zero, because SPI is defined as EV over PV and a zero baseline would leave the index undefined. Both fields accept JSON numbers or numeric strings. Missing fields, empty strings, non-finite values, negative EV, and non-positive PV fail with invalid_input and are not billed. On success the response echoes earned_value and planned_value, then returns schedule_variance (EV minus PV), schedule_performance_index (EV divided by PV), percent_variance ((SV divided by PV) times one hundred), a status enum of ahead, on_schedule, or behind derived from the sign of SV, a formula string restating the PMI identities, and a short interpretation sentence suitable for tooltips or report footnotes. Equal EV and PV return zero variance, SPI of one, and on_schedule. The endpoint does not compute cost variance, estimate at completion, or critical-path days; those are separate metrics that need different inputs.

Portfolio roll-up dashboards

Call the API for each active project and chart SPI and schedule variance so leadership sees which programs are behind the baseline plan.

How do I calculate schedule variance from EV and PV?

Send earned_value (EV) and planned_value (PV). The API returns SV = EV − PV, SPI = EV / PV, percent variance, and a status of ahead, on_schedule, or behind.

What is SPI and how does it relate to SV?

SPI is EV divided by PV. SPI > 1 matches positive SV (ahead), SPI = 1 matches zero SV (on plan), and SPI < 1 matches negative SV (behind).

Why must planned value be greater than zero?

SPI is defined as EV / PV. A zero or negative PV would make the index undefined or meaningless as a schedule baseline, so the API rejects those inputs with invalid_input.

What does the schedule variance calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →