Skip to main content
Planview Customer Success Center

Calculating Project and Task % Complete

This video demonstrates % Complete and its 5 methods for tracking project/task progress. Duration: 7 min.

PPM Pro supports several approaches for calculating a project's progress or % complete. Organizations that track time and schedule tasks can take advantage of the default approach, which calculates % Complete by dividing actual hours (captured from timesheet data) by the sum of actual hours and hours to complete (HTC). However, other organizations might like to measure project % complete in other ways for a variety of reasons, such as:

  • they do not use timesheets
  • they have few tasks defined
  • they consider some tasks more impactful towards project % complete than others

The following are the available methods for calculating % complete - each is described in more detail later in the topic (click the link):

  • Timesheet Actuals - This method is useful for organizations that also use Timesheets to track time. The % complete value is calculated as the task's Actual Hours divided by the sum of Actual Hours and Hours to Complete. Even if you do not have the % complete method configured on your category's task or project views, this calculation is always available for reporting; it requires no manual entry and is simply available to be shown in project and task details as well as reports.
  • Task Manual - This method is useful if you want to allow your users to just manually enter each leaf level task's % complete value. Each higher level task's % complete is automatically calculated by summing the % complete values of its immediate child tasks and dividing by the number of those tasks. If you will be importing tasks from MSP (discussed later) and want to use the MSP task % complete entries, this or one of the other two manual methods should be selected.
  • Task Manual (Weighted) - This method is identical to Task Manual except that it allows users to also manually enter a value representing the "relative weight" of the task. It is useful when a project has tasks that contribute differently to overall project % complete. For example, one task might impact project % complete more significantly than another task, and be given a weight of 50 versus 10. Each higher level task's % complete is automatically calculated by summing the product of the % complete value and the relative weight of its immediate tasks and dividing by the sum of the relative weights. 
  • Task Manual (Duration) - This method is identical to the Task Manual (Weighted) method, except that instead of using a manually entered relative weight value, it uses the task's Duration value as a non-editable relative weight value when calculating the % Complete (relative weight value is duration x #hours/day as specified by the project calendar). It is useful when you want to have the task Duration contribute to task and overall project % complete. 
  • Number of Tasks Complete - Use this method if you want to simply evaluate the project's progress by having the system calculate the project % complete based on how many active tasks are completed without having to manually enter any values. Whenever a leaf level task does not have a complete date, its % complete is 0%. When it does have a complete date, its % complete is 100%. Each higher level task's % complete is automatically calculated as the total number of completed active immediate child tasks divided by the total number of open active child tasks.

Note: Active tasks only are included in % complete calculations. You can switch between methods as needed; fields will be enabled/disabled or given default values as needed. 

Importing

When you import a project, you must include a value for the % Complete Method field. Valid values are:

0 = Timesheet Actuals

1 = Task Manual

2 = Task Manual (Weighted)

3 = Task Manual (Duration)

4 = Number of Tasks Complete 

Importing Tasks from MSP

If you import from MSP and you want to use the % Complete values, use one of the manual entry methods, either Task Manual, Task Manual (Weighted), or Task Manual (Duration). Note that the data is always captured, but only used when you choose one of the manual methods. Also note that the import takes the MSP leaf level task % complete values and then calculates the parent values according to the selected PPM Pro % complete method.

Setup

Use SSA to add the % Complete Method field to the project Settings section. It will default to the original Timesheet Actuals method, which is useful for users who are currently doing time entry - the calculations will still be displayed in the % Complete field you are already using. For users who are not doing time entry and therefore previously not using the % Complete field, you can go ahead and add the field and then decide which of the new methods you want to use. (Note that this setting is not related to the % Complete Field used in Gantt charts to simulate progress bars. That setting uses % fields, not % Complete calculation methods.)

method_menu.png

Users with the appropriate permission (can edit Settings section) can configure the method (as long as it is shown and editable).

  • If you want all new projects/categories in your organization to always use a specific % complete method, you can configure the field on the Available Fields page with a default, read-only value.
  • If you want different project categories to use different methods, you can set the default on the Details page for each category. If your organization does not want to include a % Complete field in your projects, don't add it to your UI. 
  • If you want project creators to be able to set the % Complete Method on project creation, you can configure the field as "Show on New" = "Yes".

For the methods that require manual entry, add the % Complete Field to your task Details. If you think you'll use the Task Manual (Weighted) method, then you must also add the Relative Weight field - both are shown below:

task_details_fields.png

Note that you can display the Relative Weight field on task Details regardless of whether you are using the Task Manual (Weighted) method - the field simply becomes non-editable if another method is selected. It's nice to have the field available if you decide to use that method on the fly.

Each method is described below.

Timesheet Actuals

As mentioned above, this is the "original" % complete method, and useful for organizations that track time. Even if you do not have the % Complete Method or any % Complete fields configured on your task or project views, this calculation is always available for reporting. You are not required to use the % Complete Methods field if you want to continue using the Timesheet Actuals method to calculate % complete, however, you can add this field to your Settings screen, for example, and select Timesheet Actuals.  The % Complete fields, if you use them, will display a read-only value that is calculated as follows:

Screen Shot 2019-11-01 at 2.03.23 PM.png

If no actual hours have been logged to a task, then the value of % Complete = 0. Note that when you enter a Complete Date, the % Complete will reflect 100%, regardless of the actuals and HTC values on the task's Scheduling tab.

Task Manual

This method is provided for organizations that don't schedule resources to tasks or don't capture timesheet data, and want to manually enter % Complete values at the task leaf level. Note that if you import tasks from MSP, including % Complete values, use this method to map the leaf-level MSP values into the corresponding PPM Pro % Complete fields. 

Note that if the Complete Date is saved for a project or task, the project/task % Complete field will be set to 100%.

Summary Tasks, Immediate Child Tasks, and Leaf Level Tasks

The Task Manual method allows you to enter a % complete value at each leaf task level. The values will roll up to higher level tasks up to the Summary level. Starting with the leaf task that has a % Complete value manually entered, all higher levels become rolled up/calculated task % complete values. These higher-level task rollups, and the project complete rollup value, are calculated as follows considering only their immediate child tasks: 

Screen Shot 2019-11-01 at 2.05.10 PM.png

All Tasks Level

The All Tasks level will ultimately populate the Project % Complete field with a value that reflects the progress of the project. All Tasks % Complete is calculated with the same formula above except that only the Summary tasks are considered. This is consistent with how other data appearing in this row is calculated; other rollup values in this row are based just on the Summary level tasks.

The following screenshot displays a set of tasks for a project that uses Task Manual. Notice that leaf a was given a Complete Date, so the % Complete automatically shows 100%. Leaf b was manually set to 100%, and there is not yet a complete date.

manual_complete.png

Task Manual (Weighted)

This method is provided for organizations that don't schedule resources to tasks or don't capture timesheet data, and have tasks that contribute differently to overall project % complete. Note that if you import tasks from MSP, including % Complete values, you can use this method to map the leaf-level MSP values into the corresponding PPM Pro % Complete fields. 

Note that if the Complete Date is saved for a project or task, the project/task % Complete field will be set to 100%.

Summary Tasks, Immediate Child Tasks, and Leaf Level Tasks

The Task Manual (Weighted) method allows you to enter both a % complete value and a relative weight (whole numbers only) at the leaf task level. The values will roll up to higher level tasks up to the Summary level. Starting with the leaf task that has a % Complete value and Relative Weight manually entered, all higher levels become rolled up/calculated task % complete values. When you use this method, remember to add the Relative Weight field to the task Details pane in SSA. 

These relative weight rollups for higher-level tasks are calculated as follows, considering only their immediate child tasks:

Screen Shot 2019-11-01 at 2.06.02 PM.png

The task % Complete rollups are calculated as follows, considering only their immediate child tasks:

Screen Shot 2019-11-01 at 2.06.33 PM.png

All Tasks Level

The All Tasks level will ultimately populate the Project % Complete field with a value that reflects the progress of the project. All Tasks % Complete is calculated with the same formula above except that only the Summary tasks are considered. This is consistent with how other data appearing in this row is calculated; other value rollups in this row are based just on the Summary level tasks. 

The following screenshot displays a set of tasks for a project that uses Task Manual (Weighted). We added the Relative Weight field, because this value is required for this % Complete method's calculation.

2019-10-31_14-28-19.png

 

Task Manual (Duration)

This method is very similar to Task Manual (Weighted), except that instead of using a manually entered relative weight value, it uses the task's Duration value as a non-editable relative weight value when calculating the % Complete (relative weight value is duration x #hours/day as specified by the project calendar). It is provided for organizations that don't schedule resources to tasks or don't capture timesheet data, and want to have the task Duration contribute to task and overall project % complete. Note that if you import tasks from MSP, including % Complete values, you can use this method to map the leaf-level MSP values into the corresponding PPM Pro % Complete fields. 

Note that if the Complete Date is saved for a project or task, the project/task % Complete field will be set to 100%.

Summary Tasks, Immediate Child Tasks, and Leaf Level Tasks

The Task Manual (Duration) method allows you to enter a % complete value at the leaf task level. The values will roll up to higher level tasks up to the Summary level. Starting with the leaf task that has a % Complete value manually entered and a Duration value, all higher levels become rolled up/calculated task % complete values. When you use this method, remember that if you add the Relative Weight field to the task Details pane in SSA, its value is non-editable and reflects the task's Duration in hours. 

These relative weight rollups for higher-level tasks are calculated as follows, where Relative Weight again is the task Duration in hours, considering only their immediate child tasks:

Screen Shot 2019-11-01 at 2.06.02 PM.png

The task % Complete rollups are calculated as follows, where Relative Weight again is the task Duration in hours, considering only their immediate child tasks:

Screen Shot 2019-11-01 at 2.06.33 PM.png

All Tasks Level

The All Tasks level will ultimately populate the Project % Complete field with a value that reflects the progress of the project. All Tasks % Complete is calculated with the same formula above except that only the Summary tasks are considered. This is consistent with how other data appearing in this row is calculated; other value rollups in this row are based just on the Summary level tasks. 

The following screenshot displays a set of tasks for a project that uses Task Manual (Duration). We added the Relative Weight field for illustration purposes to show the Duration converted into the Relative Weight (number of hours), because this value being used for this % Complete method's calculation:

Duration and Relative Weight.png

Number of Tasks Complete

This method is provided for organizations that don't schedule resources to tasks or don't capture timesheet data, but want to simply evaluate the project's progress by having the system calculate the project % complete based on how many active tasks are completed without having to manually enter any values. Applies to active tasks only.

The Number of Tasks Complete method uses two read-only fields that display task % complete and project % complete. 

  • Leaf-level Task % Complete value is based on whether or not the task is completed (immediate child tasks only):
    • if a task does not have a Complete Date,  Task % Complete = 0%
    • if a task has a Complete Date, task % Complete = 100%
  • Summary/Parent Task/Project % Complete value is calculated as follows (immediate child tasks only):
    • (Total number of completed active tasks/total number of open active tasks) * 100
    • If there are no active tasks, project % Complete = 0%

Note that if the Complete Date is set for a project or task, the project/task % Complete field will be set to 100%. If a Complete Date was set and is then removed, the % Complete field will be set to 0%.

The task and project-level % Complete rollups are calculated as follows:

Screen Shot 2019-11-01 at 2.10.12 PM.png

The following screenshot displays a set of tasks for a project that uses Number of Tasks Complete. Notice that all tasks with a Complete Date are 100%, all lower level tasks without a Complete Date are 0%, and all parent and higher level tasks use the equation above to determine the % Complete.

Number of Tasks.png