Earned Value Management (EVM), otherwise known as earned value analysis, is a technique to measure the performance and progress of a project. The basic premise of earned value is that the cost spent is relative to the work completed. Put simply, earned value is a way of placing a monetary value on the progress of work achieved. With earned value, you can quickly tell you if your project is behind schedule or over budget at any given time.
Generally, projects are planned in terms of budgeted costs, which is how much you plan to spend, and actual costs, which is how much you actually spent. However, it is not possible to compare the percentage of work achieved with just these two monetary values. This is where earned value comes in. Using earned value, you are able to see poor project planning that may not be immediately apparent when just monitoring budgeted and actual durations and costs.
In this article, we will be covering how to calculate earned value to measure project performance using examples from Primavera P6 Professional. Although this article will focus on the process within Primavera P6, earned value management can be performed on any project, regardless of project management software.
What is Earned Value?
Earned value is a monetary value that indicates the amount of work achieved on a project. Regardless of how much you planned to spend or actually spent on the project so far, earned value specifically indicates the value of the project’s progress.
Earned value management requires 3 basic elements for its calculations: Planned Value (PV), Earned Value (EV), and Actual Cost (AC).
- Planned Value (PV) is the budget for the work scheduled to be completed by a specified date. This is sometimes also referred to as the budgeted cost of work scheduled. This is how much you plan to spend on the project based on the assigned resources and expenses.
- Earned Value (EV) is a monetary value for the progress of work completed. Put simply, this is the amount of money that should have been spent for the amount of work that has been completed.
- Actual Cost (AC) is the actual monetary value spent on the project. The actual cost of the project will come about as the project progresses and actual cost values are added to activities.
To best understand how earned value is calculated, we are going to look at a simple example project. In the following example, we have a project to construct 10 concrete columns for a building. Each column is planned to take 1 day to be built and has a budgeted cost of $100. This means that we are planning on spending $100 per day for 10 days, with a total project cost of $1000. This is the Planned Value for the project – $1000 total, at $100 per day.
Based on this baseline schedule, we would assume that by the end of day 4, we would have 4 columns built and $400 would have been spent. Therefore, our Planned Value for day 4 of this project would be $400.
However, once the actual activities started, we were informed by our field crew that things didn’t go exactly as planned. At the end of day 4, we have only completed 2 columns. We were also informed that each column actually costs $200 to build. This would make our Actual Cost on day 4 of this project $400.
We can now calculate the Planned Value, Earned Value and Actual Cost for this project by the end of day 4:
- We had planned to spend $100 per day on this project, according to the baseline schedule. Because we are now on day 4, our Planned Value is $400 – the amount we had planned to spend by this point in the project.
- However, in actuality, only 2 columns have been created. Based on our baseline schedule, the completion of two columns should have cost us $200, at $100 per column. By day 4, our Earned Value is $200 – the amount we had planned to spend based on the actual work completed.
- Because we have only completed 2 columns and each cost $200, the Actual Cost at this point is $400 – the amount that we have actually spent so far.
Using just this information, we can compare the Planned Value and Actual Cost to the Earned Value to determine whether the project is behind schedule or over budget.
With a simple project like this, it’s easy to manually calculate these different values. However, you can perform Earned Value Management using Primavera P6 Professional to automatically calculate these values, as well.
Setting Up P6 for Earned Value Management
There are seven steps that must be completed to set up Primavera P6 for Earned Value Management:
- Step 1: Cost-load the project with resources that don’t automatically compute actuals
- Step 2: Create and assign a baseline to calculate earned value
- Step 3: Setup the activity table columns for Earned Value Management
- Step 4: Adjust all activity types to Physical
- Step 5: Set the technique for computing Performance Percent Complete for each WBS layer
- Step 6: Status the activities with actuals and reschedule the project
- Step 7: Set the technique for computing Estimate to Complete for each WBS layer
Setting up the program to calculate earned value can be complicated, so it is recommended to follow these steps in order for the best results.
Step 1: Cost-load the project with resources that don’t automatically compute actuals
The first thing you’ll need to do is make sure that you’re working with a cost loaded schedule with a tight logical path. I’ve created a project in P6 for the earned value example we looked at earlier, with the construction of the 10 columns over 10 days. Each column is represented by an activity, each with a duration of 1 day. Each activity has been assigned a material resource of concrete and has a budgeted cost of $100, with a total budgeted cost of $1000.
This is a good example of the type of project you’ll want to use when performing Earned Value Management: the logical path is tight with no loose ends and each activity is fully cost loaded.
Another important thing to note when calculating earned value is that the resources you use should NOT automatically compute actuals. Actuals should be based upon actual costs incurred and actual hours booked, so we do not want the resources to automatically compute these values based on our original estimates.
By default, resources will automatically have the Auto Compute Actuals setting turned on. To turn this option off, you will need to navigate to the Resources screen by selecting Enterprise > Resources.
Select the resource you would like to use from the table and then navigate to the Details tab. Here, there is an option to Auto Compute Actuals – again, by default this will be checked, so it’s important to uncheck this if the resource is going to be used to calculate earned value. You will want to do this before assigning the resource to activities in your project.
Because my material resource, Concrete, currently does not have Auto Compute Actuals checked, I know that this resource will work for calculating earned value in my project.
Step 2: Create and assign a baseline to calculate earned value
Next, you will need to create a baseline and assign it to the project. You will not be able to track variance on a project unless you have created and assigned a baseline. Earned value is all about comparing your current schedule, or your actual progress, with your original schedule, or your planned progress. Where there are differences, P6 will calculate different data sets to help quantify any deviation from the baseline.
To create a new baseline for the project, select Project > Maintain Baselines.
In the Maintain Baselines window, select Add and choose to Save a copy of the current project as a new baseline. This will automatically save the project as it currently is as a baseline.
With this baseline created, you will now need to assign it to the project. However, before doing that, you will need to tell P6 which baseline you will be using to calculate earned value. This can be done in the Projects window. If this is not already open, you can open the Projects window by selecting Enterprise > Projects.
In the Projects table, select the desired project and use the Settings tab to choose a baseline to use for earned value. By default, this will be set to the Project Baseline, but you can also use the User’s Primary Baseline.
You can choose to use either baseline, but you’ll want to make sure to assign the created baseline to whichever option you choose.
Next, you can assign the newly created baseline by selecting Project > Assign Baselines.
In the Assign Baselines window, select the baseline of the project that you just created for whichever baseline type was selected in the Settings tab of the Projects screen – either the Project Baseline or the User’s Primary Baseline – and press OK.
Step 3: Setup the activity table columns for Earned Value Management
The next step would be to set up the activity table for Earned Value Management. After adding the desired columns, it is recommended to save the configuration as a layout for use later on.
There are a variety of different columns that can be added to aid in calculating earned value, but I recommend having at least the following columns display:
- Original Duration
- Actual Duration
- Planned Value Cost
- Actual Cost
- Earned Value Cost
- Budget At Completion
- Duration % Complete of Original
- Performance % Complete
- Schedule Performance Index
- Cost Performance Index
- Estimate to Complete
To add these columns to the activity table, select View > Columns. Move the desired columns from Available Options to Selected Options, and select OK.
With all the columns added, your earned value layout should look somewhat like this:
Step 4: Adjust all activity types to Physical
Next, you will need to adjust all activity types to Physical. This is because earned value can only be calculated when the duration of the activity is separate from the percent of work completed. For this reason, you will want to be using the Physical Percent Complete type for all activities you will be performing Earned Value Management on.
The easiest way to do this to all activities simultaneously is to add the Percent Complete Type column to the layout. With the column displaying, you can quickly adjust each activity type to Physical.
You could keep the Percent Complete Type column displaying, but because Earned Value Management utilizes so many columns already, you may want to remove this column after performing this step.
Step 5: Set the technique for computing Performance Percent Complete for each WBS layer
You then will need to set up how P6 is going to calculate the earned value costs. This can be done in the WBS screen, which can be opened by selecting Project > WBS.
In the details section, select the Earned Value tab. Using the left side of the tab, you can determine the technique for computing Performance Percent Complete, which is the amount of work actually performed on activities after actuals are entered. Essentially, this is the way that you will be earning value for activities within the selected WBS element.
By default, Activity Percent Complete is selected – this means that the activity will earn value for the activity percentage that has been completed. You can also choose to earn value based on WBS Milestones. As these are completed, activities within the layer will earn a portion of the completed total cost for that WBS. The final 3 options are 0/100, 50/50, and custom percent complete. Selecting one of these options will cause each activity below the WBS element to earn value based on these criteria. For example, if you were to choose the 0/100 option, activities in this WBS element would not earn any value until they have an Actual Finish date and a status of Completed. At that point, the activity would earn the full budgeted value.
Performance percent complete techniques can not be entered for individual activities; they can only inherit the technique from their immediate parent WBS element. Because I’m only using one WBS layer for my project, I don’t need to adjust too much here. To keep things simple, I’ll keep Activity Percent Complete selected as the performance percent complete technique.
Step 6: Status the activities with actuals and reschedule the project
At this point, you can now begin to status the project to show the actual work completed and the actual costs spent. This can be done back on the Activities screen.
Going back to the original earned value example, it is now day 4 of the project and 2 columns have been built so far, so I’ll need to update the statuses of activities Column 1 and Column 2.
Starting with Column 1, I’ll use the Status tab of the details section to mark off that the activity has both Started and Finished. Because this column actually took 2 days to complete, I’ll adjust the Actual Duration to 2.
I’ll also need to add in the actual costs, which can be done in the Resources tab. Although we were planning on only spending $100 per column, this column actually cost $200. I’ll show this by setting the Actual Units for the resource to 2 – this will automatically adjust the Actual Cost to $200.
I’ll do the same thing for Column 2, which also took 2 days to complete and had an actual cost of $200.
The Actual Duration for the activities can be viewed and contrasted with the Original Duration from the table. The Planned Value and Earned Value fields won’t automatically update with this schedule progress – you will have to move the data date forward and recalculate the schedule for these fields to populate.
To reschedule the project, select Tools > Schedule. Select Apply selected data date and move the data date to match the statused activities. In this example, we have just completed the fourth workday for the project, so I’ll move the data date forward to the date of the fifth workday. Then, select Schedule.
With the schedule statused, the columns have populated. We can now see that this project has an Actual Cost of $400, a Planned Cost of $400, and an Earned Value of $200.
Again, the Actual Cost is how much has been spent so far in the project, and by day 4, $400 have been spent. The Planned Cost is how much we had planned to spend by day 4 based on our baseline estimates; we had planned to have 4 columns finished at this point, each at a cost of $100. The Earned Value is how much has been spent based on the amount of work that has been completed; according to our baseline schedule, 2 columns being completed should have cost us $200.
These were the same values that we were able to calculate manually – however, using Primavera P6, we are given this information automatically. This can be extremely useful for longer and more complex projects.
We can now analyze the schedule’s performance and cost thus far using the activity table columns.
From the Duration % Complete of Original column, we can see how much of the project would be completed at this point according to the baseline schedule. Right now, it is at 40% complete – as this is how much of the project was supposed to be completed by day 4. In the Performance % Complete column, we can see how much of the project has actually been completed based on the actual work done. This is currently at 20%, as only 2 columns have been built. Automatically, seeing the difference between these two columns, we can tell that this project is running behind schedule.
In terms of cost performance, we can see from the Planned Value Cost that $400 of work should have been completed at this point. However, our Actual Cost is $400 and we’ve only been able to achieve $200 of work in this time, as shown by Earned Value. This shows that the project is also over budget.
0o00We can get more information on the project’s performance using the Cost Performance Index, Schedule Performance Index, and Estimate to Complete columns.
What is the Cost Performance Index?
The Cost Performance Index is a ratio of what was earned in value and the actual cost spent so far. An index less than 1 is over budget, and an index greater than 1 is under budget. This ratio is calculated using the following formula:
Earned Value / Actual Cost = Cost Performance Index
In this project, the Earned Value is $200 and the Actual Cost is $400. $200 divided by $400 would give us a ratio of 0.5. A Cost Performance Index of 0.5 lets us know that the schedule is currently over budget. Although we can compute the ratio manually, Primavera P6 will also provide it automatically when the Cost Performance Index column is displaying.
What is the Schedule Performance Index?
The Schedule Performance Index is a ratio of what has been earned in value and what was originally planned to be spent at this time. Once again, an index less than 1 is behind schedule and an index greater than 1 is ahead of schedule. This ratio is calculated using the following formula:
Earned Value / Planned Value = Schedule Performance Index
In this project, the Earned Value is $200 and the Actual Cost is $400. $200 divided by $400 would give us a ratio of 0.5. A Schedule Performance Index of 0.5 lets us know that the project is currently also behind schedule. Again, we can find this ratio manually, but with the Schedule Performance Index column displaying in Primavera P6, we can get it automatically.
Lastly, we can also look at the Estimate to Complete – but before we do that, we need to choose how P6 will compute this.
Step 7: Set the technique for computing Estimate to Complete for each WBS layer
The last step to performing earned value management in Primavera P6 is to choose a technique for computing Estimate to Complete. Estimate to Complete (ETC) is the estimated remaining costs for the rest of the activities in the schedule. The Estimate To Complete value is ultimately added to the Actual Cost value to calculate an Estimate At Complete – the amount we will be spending overall on the project. One of the objectives of Earned Value Management is to try to keep the Estimate At Complete value as close as possible to the Budgeted at Complete (BAC) value, or the total Planned Value for the baseline project
Before being able to calculate this, we need to return back to the Earned Value tab in the details sections of the WBS screen.
On the right side of the tab, there are several options for how to compute the ETC value. The first option is ETC = remaining cost for activity. This is a basic manual forecast that will not recalculate any of the ETC values based upon performance.
In the current project, we had originally planned to build 8 more columns, and each column was originally planned to cost $100 each. Using this option would make the Estimate to Complete value be $800. However, we now know that the planned costs weren’t accurate – keeping this option at ETC = remaining cost would not give us a good estimate for the rest of the project.
The remaining options all use a Performance Factor (PF). A Performance Factor is a multiplier that is used to trend the remaining ETC values based on past project performances. These performance factors can be based on a simple 1 value, meaning not trending, or can be set to trend based on the Cost Performance Index (CPI), Schedule Performance Index (SPI), or both.
You can also enter in a custom performance factor based on some other externally driven value.
In this project, we now know how much each column will cost. Because we know that this amount is exactly twice as much as originally expected, I’ll choose the last option and set the Performance Factor to 2. This will simply multiply our original planned costs by 2 – increasing them from $100 to $200 for the columns that have not yet been built.
Returning to the Activities page, we can now see the Estimate to Complete is now at $1600. Adding in the $400 that has been spent so far, this would make our Estimate At Complete be $2000 in total. With each column continuing to cost $200, this would be an accurate estimate for how much we now plan to spend on the project as a whole.
Using Earned Value, you can gain more information on your project’s schedule and cost performance. If you choose to use Earned Value Management, you should continue to monitor these fields as the project progresses. Insights gained from performing Earned Value Management can be used to help mitigate schedule and cost variances for future projects.
If you have any comments, questions or suggestions, please use the comment section on the bottom of this page, and don’t forget to subscribe to our blog to get more Primavera P6 tips & tricks directly in your inbox!
Lauren Hecker is a Primavera P6 Professional Instructor and teaches onsite and virtual Primavera P6 Fundamentals and Advanced courses. To see her next open enrollment course, please visit our calendar. To schedule an onsite or custom course, please contact us!