I am not understanding how MS Project (2016, in this case) calculates the BCWP component of Earned Value. To illustrate: below is a one-task project. The task is five days long, has one resource assigned 8/hrs per day at $10 per hr. The task starts 4/29 and finishes 5/5.The task is set to use Physical % Complete as the basis for Earned Value calculations, and the project is set to not calculate Actual Cost automatically (so I can enter an Actual Cost manually).

I set the project's baseline and all works as it should: baseline cost is set to $400.

Then I set the task to 100% complete and the Physical % Complete also to 100%. I enter an actual cost of $500. ACWP correctly displays that value, and correctly displays the $400 BCWS.

Lastly, I set the Project Status Date to 5/9/16, after the finish date of the task.

What I get is shown below. I don't understand why BCWP is $0.00. The task has been performed, it has a Budget Cost of $400. Shouldn't Project show $400 for the BCWP on this completed task? Calculating the Project has no effect.

Earned Value for one task

I'm not the world's greatest MS Project expert, so I suspect I'm doing something wrong here, and I'd appreciate any insights as to what my error is. Am I mis-understanding BCWP? Do I have some setting wrong?

Thanks for any help.


An important aspect of both BCWS and BCWP is that they are time-phased values.

Their values will change based on the date values of a task's baseline start and the project status date.

This aspect was not brought out explicitly in the MS explanation of BCWP.

Part of the pseudocode formula for BCWP and BCWS is this: [status_date] - [baseline_start] = ["time period with which to calculate baseline (cumulative) cost relative to the status date"]

Note: where there is no project status date, today's date is used.

In practice this works fine if your project's performance is adhering to the baseline dates, BUT if the baseline start of a given task is LATER than the status date, and you are reporting progress on this task, the time calculation for BCWP and BCWS will be negative, and Project will resolve that to just zero.

In short, it would appear that if your project is over-performing and you're completing work well in advance of your baseline plan, Project will calculate zero for the SPI of such tasks!

Incidentally, you can create a workaround for this phenomenon by creating a custom field with your own formula to calculate SPI, aiming to avoid a divide by zero error when calculating CPI/SPI.

I'd be interested to know why Project's EVM calculations are set up this way.

Andrew M.


My guess is that you didn't save a baseline before marking the tasks as 100% complete.

Based on the definition of BCWP by Microsoft:

How is BCWP Calculated?

When a task is first created, the BCWP is 0.00. As soon as a baseline is saved and progress is reported for the task (as actual work, actual duration, or percentage of work complete), Microsoft Office Project calculates BCWP. This calculation is based on the percentage of work complete, as compared with the task's baseline duration. Project then calculates the cumulative baseline cost and provides the value of what the task's actual costs should be, given the task's progress to that point in the task's baseline duration.

  • 1
    Thanks for the response, but I have set - many times - a baseline for the project, with no effect. – johnz May 2 '16 at 21:45
  • 2
    Actually, Danny, you may have hit on the answer. I may have had a percent complete and then set the baseline. If there is a % complete, it's necessary to unwind it to 0% and then set the baseline and then put the % complete back up to zero. Makes sense...kind of. I'm testing to see if that's the case. – johnz May 2 '16 at 21:51

I'm running into the same problem. I haven't completely figured out the answer, but do check your project settings to make sure it is calculating EVM based on Physical % Complete. There is also an option to select which baseline is used to calculate evm... not sure how that works yet.

Go to File -> Options -> Advanced -> Scroll Down to Earned Value options.

  • Thanks for your response, Constantly (nice name - that's how I feel much of the time with Project). Eventually I got it to work, but I just started a new project and ran into the same thing. I'll try your suggestion. – johnz Dec 17 '16 at 17:11
  • I read your comment from May 2nd, and confirmed that it worked for me. (excuse my poor formatting, I'm new to stack exchange. "Actually, Danny, you may have hit on the answer. I may have had a percent complete and then set the baseline. If there is a % complete, it's necessary to unwind it to 0% and then set the baseline and then..." – ConstantlyConfused Dec 20 '16 at 17:49

PEOPLE - it's all about the updating!

You have to actually use the 'update project' button in the 'Project' Tab, 'Status' section and the 'update Project' button.

You can enter the % complete or other value and it will still not update the BCWP until you give the project a formal update via the 'Update Project' button.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.