◆ Milestones (0 Duration) vs █ Non-Milestones in Microsoft Project
A milestone is a point in time (event). A non-milestone is work over time (activity). Understanding this makes your schedule cleaner, more professional, and easier to control.
Gantt: ◆ diamond vs █ bar
Reporting & control points
Construction scheduling
Critical path aware
🟦 Milestones (0 Duration)
What they are: Tasks with Duration = 0 days. They represent a single event date, not work spread over time.
Main question it answers:
“Has this key event happened yet?”
“Has this key event happened yet?”
Key characteristics
- Duration = 0
- Start = Finish (same day)
- Shown as a diamond (◆) on Gantt
- Can be critical or non-critical
- Can have predecessors/successors (logic links)
- Best used as control points
Common milestone examples
- Contract signed
- Permit approved
- Inspection passed
- Concrete pour completed
- Phase handover / Practical completion
- Final handover
🟨 Non-Milestones (Normal Tasks)
What they are: Tasks with Duration > 0. They represent activities where work happens across days/weeks.
Main question it answers:
“What work is happening during this period?”
“What work is happening during this period?”
Key characteristics
- Duration > 0
- Shown as a bar (█) on Gantt
- Can have resources, work, cost
- Can be split, overlapped, delayed
- Best for tracking execution and progress
Common activity examples
- Excavate foundation (5 days)
- Rebar fixing (3 days)
- Formwork installation (2 days)
- Wall plastering (7 days)
- Electrical rough-in (4 days)
⚖️ Side-by-Side Comparison
| Item | Milestone | Non-Milestone |
|---|---|---|
| Duration | 0 days | > 0 days |
| Represents | Event / decision point | Activity / work |
| Gantt symbol | ◆ Diamond | █ Bar |
| Work over time | No | Yes |
| Uses resources/cost | Usually no | Yes |
| Can be critical | Yes | Yes |
| Best for | Control & reporting | Execution & planning |
🟥 Critical Path Relationship (Important)
A task is critical because of logic + float, not because it is a milestone.
- A milestone can be critical (example: Final Inspection on the critical path).
- A non-milestone is critical if Total Float = 0.
⚠️ Common Mistakes (Avoid These)
Milestones are for events. Tasks are for work. Mixing them makes schedules unclear.
- Mistake 1: Using long “inspection” tasks instead of a milestone.
❌ “Inspection” = 3 days → ✅ “Inspection Completed” = 0 day milestone - Mistake 2: Forgetting to link milestones (unlinked milestones don’t control schedule).
- Mistake 3: Too many milestones — keep them only for real key checkpoints.
🏗 Construction Best Practice Pattern
Use tasks for execution, and milestones for control points:
Rebar Fixing (5d)
↓
Concrete Pour Completed (0d milestone)
↓
Curing Period (7d)
↓
Formwork Removal Approved (0d milestone)
This pattern gives you:
- Clear activities (work)
- Clear checkpoints (events)
- Better reporting and professional control
📌 Quick Help (Tap to Open)
How do I convert a task into a milestone?
- Set the task Duration to 0d, OR
- Use the “Mark task as milestone” option (depending on your version/view).
Can a milestone have % Complete?
Yes. In practice, milestones are usually 0% until the event happens, then set to 100%. Many teams use milestones as “done/not done” checkpoints.
What is the simplest way to remember the difference?
Non-milestone = work happens
Milestone = something is achieved
Milestone = something is achieved