Milestone Payments are a very common scenario in Fixed Price Contracts, where a certain portion of agreed contract price is paid upon achieving the pre-agreed milestones. Generally, this is tracked as a Fixed Cost at the Milestone Level, or Cost Resources at the task level. You can take a look at this article for more details on these techniques.

However, both of these techniques work very well, when the payment amounts are fixed for the miletsone (which is very common).

How would you handle it if the ‘payment’ amounts need to be derived from the actual costs (or Estimated Costs) of tasks for a given stage/milestone, by resources? This question did come up on Technet Forums recently.

In this blog post, I will cover ‘one’ technique for doing this. There could be several other techniques, which I will be glad to hear about, if you point me to them. We will limit this to a Project Client scenario, because for Project Server, there are several BI methods to get this information.

Step 1: Create a new Custom Field

  • Start by opening your schedule and creating a new text Custom Field, called “Milestone Name”. Make sure it is set to be a Lookup type.

Now set your lookup to match with the various Milestones in your schedule where Payments are needed, and Click OK.
  • Now all you need to make sure is that this field and the “Cost” or “Actual Cost” fields (based on whichever you are using) are added to the view you are using, and then Group By the Milestone Name Field.

This will give you a view like this, giving you the aggregated cost of tasks that tie to a specific Milestone. You can add/remove the tag of Milestone Name, based on which tasks drive a specific Milestone Payment.

If you wanted this across an enterprise reporting model, just make the Milestone Payments an Enterprise Custom Field and you could easily build a report in Excel or Power BI.

Hope this helps!