Milestones
Split a fixed fee into deliverables and recognize revenue as each one starts or completes.
A milestone breaks a fixed-fee engagement into billable deliverables — so revenue is recognized as you hit each one, instead of spread evenly over time.
Turn on Milestones on the Fixed fee & milestone type (or in Custom). Without it, a fixed fee recognizes revenue pro-rata over the contract's elapsed time instead.
Add deliverables
Each milestone has a name, a $ amount, and a due date. The sum of the milestones should match the fee — ProjectPacer warns if they don't add up. You add them on the Budget step when creating the engagement, or from the Milestones button on the engagement later.
When revenue is recognized
Each milestone recognizes its amount on a trigger:
- On start — recognized when you mark it in progress.
- On completion — recognized when you mark it done.
Move a milestone's status (planned → in progress → done → billed) and the engagement's recognized revenue updates. The burn-up chart switches to milestone delivery mode — recognized vs. scheduled steps — so you can see delivery against plan.
On a milestone-billed engagement, the invoice builder offers the fired milestones as line items — so you bill per deliverable rather than per hour.