Overview
Milestones are deadline-based groupings of tasks within a project. They represent key dates or deliverables that your work needs to be completed by, helping you track whether tasks will be finished on time.
Milestones give you visibility into:
- When work needs to be completed by
- Whether deadlines are at risk based on remaining working hours and task estimates
- Who is responsible for overseeing a milestone
- Which tasks are grouped under each deadline
You can access milestones from several places:
- Calendar — The main calendar view on the Dashboard shows all milestones alongside meetings, bookings, and annual leave
- Within a Project — Each project's Gantt chart displays milestones and their associated tasks on a timeline
- Overdue Milestones Widget — The Dashboard highlights any milestones that are past their due date
- Task Drawer — Individual tasks can be assigned to a milestone via the Milestone dropdown
Creating a Milestone
You can create a milestone from the Calendar view using the unified creation modal, or from within a project.
Fields
| Field | Required | Description |
|---|---|---|
| Milestone Title | Yes | A descriptive name for the milestone (e.g. "Phase 1 Delivery", "Design Review"). |
| Date Due | Yes | The deadline date. Selected using a date picker. The time is automatically set to the end of the account owner's workday. |
| Who's Responsible? | No | The person overseeing this milestone. Select from your team members. Defaults to the current user. |
| Project | Yes | The project this milestone belongs to. Only active (unlocked) projects are available. |
| Visible to Client? | No | Toggle to control whether external clients can see this milestone. Defaults to private. |
| Complete? | No | Toggle to mark the milestone as complete. This is disabled if there are incomplete tasks assigned to it. |
Important Notes
- The due date is automatically adjusted to the end of the account owner's configured workday
- Milestones can only be created within active (unlocked) projects — you cannot create milestones on locked projects
- The Visible to Client? toggle uses the privacy system to control whether clients with read access can see this milestone
The Calendar View
The Calendar is the primary view for managing milestones. It displays a full calendar powered by FullCalendar, showing multiple event types in one place.
What Appears on the Calendar
| Event Type | Description |
|---|---|
| Milestones | Displayed with a bullseye icon. Click to open the edit modal. |
| Meetings | Team meetings and appointments |
| Bookings | Resource bookings |
| Annual Leave | Team member leave |
Filters
Use the filter bar at the top of the calendar to narrow what you see:
| Filter | Description |
|---|---|
| Project | Show milestones from a specific project |
| User | Show milestones assigned to a specific person |
| Event Type | Toggle visibility of milestones, meetings, bookings, or annual leave |
Drag-and-Drop
You can reschedule milestones directly on the calendar by dragging and dropping them to a new date. When you move a milestone:
- The due date is updated immediately
- If other milestones exist in the same project, a Bulk Move modal may appear (see Bulk Move section below)
- Overdue statuses are recalculated automatically
Creating from the Calendar
Click on a date in the calendar to open the unified creation modal, which lets you create a new milestone, event, or booking directly from the calendar view.
Editing a Milestone
Click on a milestone (on the calendar, in the overdue widget, or anywhere it appears) to open the edit modal.
The Edit Modal
The edit modal has a two-column layout:
- Left side — The milestone form with all editable fields (Title, Date Due, Who's Responsible, Project, Visibility, Complete)
- Right side — A scrollable list of the project's incomplete tasks with checkboxes for assigning or unassigning tasks to this milestone
Task Assignment Sidebar
The right-hand sidebar shows all incomplete tasks from the milestone's project. Each task displays:
- The assigned user's avatar
- The task summary (clickable to open in a new tab)
- A checkbox to assign or unassign the task from this milestone
Conflicting tasks — If a task is already assigned to a different milestone, it is shown with a warning dot and the assigned user's text is muted. A tooltip shows which milestone the task currently belongs to. You can still reassign the task, but a confirmation prompt will appear.
Restrictions When Tasks Are Assigned
While a milestone has incomplete tasks assigned to it, the following are restricted:
- Project cannot be changed
- Complete toggle is disabled
- Delete button is disabled
A message reads: "You can't change the Project, Complete or Delete this Milestone while it has associated Tasks."
Assigning Tasks to Milestones
There are two ways to assign a task to a milestone:
From the Milestone Edit Modal
- Open the milestone edit modal
- In the Project Tasks sidebar on the right, tick the checkbox next to any task you want to assign
- The task is immediately linked to the milestone
From the Task Drawer
- Open the task by clicking its summary
- In the Milestone dropdown field, select the milestone you want to assign the task to
- Only incomplete milestones from the task's project are shown in the dropdown
Conflicting Assignments
If a task is already assigned to a different milestone and you try to assign it to a new one:
- A warning indicator (coloured dot) appears next to the task
- A tooltip shows which milestone the task is currently assigned to
- A confirmation prompt asks you to confirm the reassignment
Overdue Detection & Notifications
Beeswax automatically monitors milestones and their associated tasks to detect when deadlines are at risk.
How Overdue Is Calculated
For each task assigned to a milestone, Beeswax calculates:
- The total estimated time remaining for the task and all higher-priority tasks assigned to the same user
- The number of working hours between now and the milestone's due date
- If there are not enough working hours to complete the work, the task (and milestone) is flagged as overdue
This means overdue detection is based on working hours, not calendar days — weekends and non-work hours are excluded from the calculation.
Visual Indicators
| Where | What You See |
|---|---|
| Task list | A pulsing red bullseye icon next to overdue tasks linked to milestones |
| Task list (not overdue) | A yellow/warning bullseye icon for tasks linked to milestones that are on track |
| Overdue Milestones widget | A pulsing red bullseye icon with the milestone title, how long ago it was due, and the formatted date |
| Calendar | Milestone events are visually distinct on the calendar |
Email Notifications
Beeswax sends email notifications at two thresholds:
| Threshold | When | Description |
|---|---|---|
| Warning | 5 days before the due date | An early warning that the milestone is approaching |
| Overdue | After the due date has passed | Notification that the milestone is now overdue |
Each notification is sent only once per milestone. If the due date is changed, the notification flags are reset and notifications can be sent again for the new dates.
Dashboard Overdue Widget
The Dashboard displays an Overdue Milestones section that lists all milestones past their due date. Each entry shows:
- The milestone title (clickable to open the edit modal)
- How long ago it was due (e.g. "3 days ago")
- The formatted due date
Bulk Move
When you drag a milestone to a new date on the calendar, Beeswax checks if there are other milestones in the same project. If so, a "Move other Milestones?" modal appears.
How It Works
The modal shows:
- The milestone you moved — its name, project, and how far it was moved (e.g. "+3 days")
- Other milestones in the project — displayed in two columns showing their current dates and what their new dates would be if shifted by the same amount
Your Options
| Button | What It Does |
|---|---|
| No, Just this Milestone | Only the milestone you dragged is moved. Other milestones stay where they are. |
| Yes, Move All Milestones | All milestones in the same project are shifted by the same number of days. |
This is useful when a project timeline shifts and you need to adjust all deadlines together.
The Gantt Chart
The Gantt chart provides a visual timeline of milestones and their associated tasks within a project.
What It Shows
- Milestones are displayed as dots on the timeline at their due dates
- Tasks are shown as bars spanning their estimated duration
- The relationship between tasks and their milestones is visually clear
Where to Find It
- Within a project — The Gantt chart tab shows the timeline for that project's milestones and tasks
- Dashboard widget — A compact version showing upcoming milestones across projects
Interactivity
- Milestones can be dragged on the Gantt chart to reschedule them
- Hovering shows details about the milestone and its tasks
- The timeline period can be adjusted to show different date ranges
Calendar Subscription (iCal)
You can subscribe to the account calendar from your preferred calendar application. The subscription includes milestones and events.
Subscription Options
| Method | How |
|---|---|
| Copy Link | Copy the iCal URL to your clipboard for manual setup |
| Subscribe (Mac/Outlook) | One-click subscription using the webcal protocol |
| Subscribe in Google Calendar | One-click setup that opens Google Calendar with the subscription URL pre-filled |
The calendar subscription uses a secure token unique to your account. Any changes to milestones and events in Beeswax will be reflected in your subscribed calendar.
Completing a Milestone
To complete a milestone, toggle the Complete? switch in the milestone edit modal.
Rules
- A milestone cannot be marked as complete while it has incomplete tasks assigned to it. The toggle is disabled in this case.
- When a milestone is completed, all overdue flags on its tasks are automatically cleared
- Completed milestones no longer appear in the incomplete milestones list or the overdue widget
- Completed milestones can be viewed in the milestone history
What to Do If the Toggle Is Disabled
If you cannot mark a milestone as complete, it means there are still incomplete tasks assigned to it. You need to either:
- Close all remaining tasks (move them through the workflow to Closed)
- Unassign tasks from the milestone (untick them in the task sidebar)
Deleting a Milestone
You can delete a milestone from the edit modal by clicking the Delete button.
Rules
- The Delete button is disabled when the milestone has incomplete tasks assigned to it
- A confirmation dialog appears before deletion: "Are you sure you want to delete this milestone?"
- When a milestone is deleted, any tasks previously assigned to it are unlinked (their milestone reference is set to null) — the tasks themselves are not deleted
- Milestones on locked projects cannot be deleted
What to Do If the Delete Button Is Disabled
If you cannot delete a milestone, it means tasks are still assigned to it. You need to either:
- Unassign all tasks from the milestone
- Close all assigned tasks first
How-to Guides
Create a Milestone
- Navigate to the Project
- Access the Milestones section (or use the Calendar view)
- Click New Milestone
- Set the title and due date
- Attach relevant tasks from the project
Edit a Milestone
- Find the Milestone (on the calendar, in the overdue widget, or within a project)
- Click to open the edit modal
- Modify the title, date, or attached tasks
Delete a Milestone
- Locate the Milestone
- Click the Delete icon
- Confirm deletion
Note: Milestones with incomplete tasks assigned cannot be deleted. Unassign or close the tasks first.
Understanding the Milestone Bar Graph
The bar graph calculation assumes tasks are completed linearly (worst case scenario) and uses working hours from your account Settings. Milestones are due at the end of the workday on the due date. Weekends are not accounted for in the calculation. This is not a Gantt chart — it is a simpler visual approach designed to give you a quick sense of whether deadlines are at risk.
Permissions by Role
Different roles have different levels of access to milestones. Here is what each role can do:
| Action | Owner | Super Admin | Admin | Accountant | General User | Contractor | Client |
|---|---|---|---|---|---|---|---|
| View milestones | All | All | All | All | Own assigned only | All | Public/shared only |
| Create milestones | Yes | Yes | Yes | Yes | Own assigned only | Yes | No |
| Edit milestones | All | All | All | All | Own assigned only | All | No |
| Delete milestones | Yes | Yes | Yes | Yes | Own assigned only | Yes | No |
| View calendar | Yes | Yes | Yes | Yes | Yes | Yes | No |
| View Gantt chart | Yes | Yes | Yes | Yes | Yes | Yes | Read only |
| Drag-drop reschedule | Yes | Yes | Yes | Yes | Own assigned only | Yes | No |
Key Permission Notes
- General Users can only manage milestones that are assigned to them. They cannot see or edit milestones assigned to other users.
- Contractors can manage all milestones across all projects they have access to.
- Clients can only view milestones that have been made visible to them via the "Visible to Client?" privacy toggle. They cannot create, edit, or delete milestones.
- Gantt chart and overdue refresh actions require read permission, which all roles except Client have for their accessible milestones.
- Milestones on locked projects cannot be created, edited, or deleted regardless of role.
Tips & Best Practices
- Use milestones for key deadlines. Group related tasks under a milestone to track whether a deadline is achievable based on remaining work and available hours.
- Set realistic due dates. Overdue detection uses working hours, not calendar days — weekends and non-work hours are excluded. Set dates that reflect actual working time.
- Assign responsibility. Use the "Who's Responsible?" field to designate who is overseeing the milestone. This person receives overdue notifications.
- Share with clients when appropriate. Use the "Visible to Client?" toggle to give external stakeholders visibility into key delivery dates without exposing internal task details.
- Use Bulk Move for timeline shifts. When a project timeline changes, drag one milestone on the calendar and use the Bulk Move option to shift all milestones in the project by the same amount.
- Check the Gantt chart. The Gantt chart within a project gives you a visual timeline of how tasks align with milestone deadlines.
- Subscribe to the calendar. Use the iCal subscription to see milestones and events in your preferred calendar app (Apple Calendar, Google Calendar, Outlook).
- Close or unassign tasks before completing. Milestones with incomplete tasks cannot be marked as complete or deleted. Close remaining tasks or unassign them first.
- Watch for overdue warnings. Pulsing red bullseye icons on tasks and in the overdue widget are early indicators that deadlines are at risk — take action before the due date passes.