Who's working,
who's not, and why.
A construction company runs on people-time. If a Site Manager is on annual leave, the Plumber is in training and the Electrician's contractor is out of office, three jobs probably aren't getting done that day. The Holiday Planner is the single place the office sees the team - and the place employees request leave, admins approve it, and allowances stay in check.
One calendar. Whole team. The "which Tuesday can we pour the foundations" view.
Filter who's shown by checkbox, group by role, switch bank holidays on or off. Drag to extend, click to edit. Calendar entries are colour-coded by team member in Team View, by leave type in My Holidays.
Different reasons, different rules - tracked separately.
Annual Leave counts against the allowance and goes through approval. Sick is logged after the fact. Bank holidays auto-import. Each type has its own colour, its own icon, and its own dashboard tile.
Annual Leave
Counts against the allowance. Goes through admin approval before becoming a calendar entry.
Sick Leave
Tracked but doesn't count against allowance. Usually logged after the fact, no approval needed.
Training
Courses, certifications, CPD. Visible to scheduling so courses don't double-book.
Site Meeting
Off-site meetings that aren't billable as project work - client reviews, supplier visits.
Out of Office
Contractor-specific. Generic "not available" - projects know they're off-grid that day.
UK Bank Holiday
Auto-imported (England & Wales). Switch on or off from the filter panel - your company doesn't manage them manually.
Aftercare Appointment
Pre-scheduled homeowner visits booked in the Aftercare module appear here too - no double-bookings.
Travel Time
Time spent travelling that isn't billable to a project - kept separate from real work hours.
The same page, sized to whoever is looking at it.
Employee (PAYE)
- Personal calendar - only their own entries, colour-coded by leave type
- Stats by type - days used per category, plus their allowance ledger
- Submit annual leave requests with title, dates, type and notes
- Track requests - pending, approved or rejected, with reviewer notes
- Cancel pending requests until they're decided
Admin
- My Holidays - their own calendar, no team noise
- Team View - everyone's calendar, sidebar to filter, capacity table below
- Requests - pending leave, badge count on tab, approve / reject inline
- Book on behalf - bypass the request flow, log sickness or training centrally
- Set allowances - per-employee, per-year, edit any time
Contractor
- One leave type - Out of Office only, no allowance ledger
- Self-book - log days they're not available, no approval needed
- Visible to projects - appears on Team View so admins can plan around them
- Total card - sees only their OOO total for the year, no other types
From request to calendar entry - without a single email.
Employee
Submit request
Open the planner, click + New Request. Title, dates, type, optional notes. Defaults to next available business day.
Annual Leave only triggers approvalSee it sitting "Pending"
Yellow status label in the Leave Requests panel. Cancel button stays visible until the admin decides - easy to revise dates and resubmit.
Get the decision
Approved or rejected, with the reviewer's name and any notes they left. Approved entries land on their calendar automatically - no copy-paste.
Stats & allowance update liveAdmin
See the badge
Pending count appears on the Requests tab and in the main menu. The persistent indicator that says "you have work to do" - without checking.
Engine of the workflowReview in context
Each pending card shows the requester, dates, day-count, type and their notes. Team capacity table is one scroll away - see who else is off that week.
Approve or reject
Optional review note ("enjoy your holiday" / "site visit clashes - try a different week"). Approve in bulk for a quiet August week. Decisions move to Recent Decisions.
Calendar entry created on approvalThe admin inbox, and the employee tracker.
Same data, two angles. The admin sees pending and acts; the requester sees status and reviewer notes. Cancel-then-resubmit stays painless because nobody pretends it's an unusual workflow.
Pending requests
My requests
Annual leave used vs. allowed - one sentence, one bar.
Below the calendar in Team View. Search by name, filter by role group, sort by any column. Pagination kicks in past ten rows. Edit the year's allowance per person from the same row.
Team - 2025
| Name | Annual Leave | Sick | Training | Site Meeting | Travel | |
|---|---|---|---|---|---|---|
|
JT
James ThompsonSite Manager
|
12 / 25
|
2 d | 3 d | 7 d | 4 d | |
|
PR
Priya RamanSite Manager
|
22 / 25
|
0 d | 5 d | 9 d | 2 d | |
|
MC
Marc CostaElectrician
|
8 / 22
|
1 d | 4 d | 2 d | 6 d | |
|
SK
Sara KhanPlumber
|
25 / 25
|
3 d | 2 d | 1 d | 3 d | |
|
DO
Daniel O'BrienCarpenter
|
5 / 22
|
0 d | 2 d | 3 d | 1 d |
Holiday data goes where it needs to.
Tasks & scheduling
Assigning a task that spans an assignee's leave dates? You get a warning before the conflict bites - not after.
Aftercare
Pre-scheduled homeowner appointments from the Aftercare module appear here as Aftercare Appointment entries.
Invoicing
The same bank holiday data that drives this calendar prevents invoices being posted on UK bank holidays.
User profile colours
Each person's chosen colour is their entry colour in Team View - and the same colour their avatar uses across the rest of the app.
Designed for vans, sites, and Tuesday mornings.
Mobile-first
Site managers approve leave from their phone in the van. Sections stack into a tab bar on small screens - calendar, requests, team, never crammed onto one canvas.
The badge is the engine
Pending count lives in the page tabs AND in the main app menu. The persistent indicator that drives the workflow without anybody having to remember to check.
One sentence, not two numbers
"12 of 25 annual leave days used" with a small bar carries more weight than 12 and 25 floating apart. Same idea everywhere allowance shows up.
Colour + icon, never colour alone
Eight types is a lot. Every entry pairs colour with an icon so the calendar reads even when you're colour-blind, sun-washed or printing it black-and-white.
Bank holidays are signal and noise
Default-on for admins planning around them, default-off for employees who just want their own week. The setting sticks per person - switch it once.
Cancel-then-resubmit isn't a flaw
Real people get the dates wrong. Cancel stays visible on pending, resubmits don't get a guilty footnote, and admins see the audit trail without anyone being shamed.
Plan around people, not around spreadsheets.
See the Holiday Planner in your account - bring your own team, and we'll walk through approvals, allowances and the bits that connect to Tasks and Aftercare. Thirty minutes.