Kelly schedule calendar generator (firefighter, 9-day)
Three 24-hour shifts, each followed by 24 hours off, with the last followed by four days off: a nine-day cycle with three platoons. That is about 122 shifts and 2,922 hours a year at 24 hours a shift, an average of 56 hours a week. Put your start date in below for your own 2027 calendar.
- Free, no sign-up
- Runs in your browser
- Nothing uploaded or kept
How to use it
Set your start date
Enter a date from your roster that is the first day of a block, and say which block it is.
Check the year
Every shift and day off is drawn, with the hours a year, the days off and the weekends you have free.
Print it or add it to your phone
Download the calendar file, print the year, or copy the link to share it.
Pick a date you know from your roster; the whole year lines up with it.
Shift times and hours
Kelly (9-day), 2027
9-day cycle: 1W 1O 1W 1O 1W 4O
Next 14 days
Shifts in 2027
123
Days off
242
of 365
Hours in 2027
2,952
24 h a shift
Average a week
56 h
Weekends fully off
17 of 52
Longest run
1 on
4 off at most
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Friday 1 January: shift | Saturday 2 January: day off | Sunday 3 January: shift | ||||
| Monday 4 January: day off | Tuesday 5 January: shift | Wednesday 6 January: day off | Thursday 7 January: day off | Friday 8 January: day off | Saturday 9 January: day off | Sunday 10 January: shift |
| Monday 11 January: day off | Tuesday 12 January: shift | Wednesday 13 January: day off | Thursday 14 January: shift | Friday 15 January: day off | Saturday 16 January: day off | Sunday 17 January: day off |
| Monday 18 January: day off | Tuesday 19 January: shift | Wednesday 20 January: day off | Thursday 21 January: shift | Friday 22 January: day off | Saturday 23 January: shift | Sunday 24 January: day off |
| Monday 25 January: day off | Tuesday 26 January: day off | Wednesday 27 January: day off | Thursday 28 January: shift | Friday 29 January: day off | Saturday 30 January: shift | Sunday 31 January: day off |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Monday 1 February: shift | Tuesday 2 February: day off | Wednesday 3 February: day off | Thursday 4 February: day off | Friday 5 February: day off | Saturday 6 February: shift | Sunday 7 February: day off |
| Monday 8 February: shift | Tuesday 9 February: day off | Wednesday 10 February: shift | Thursday 11 February: day off | Friday 12 February: day off | Saturday 13 February: day off | Sunday 14 February: day off |
| Monday 15 February: shift | Tuesday 16 February: day off | Wednesday 17 February: shift | Thursday 18 February: day off | Friday 19 February: shift | Saturday 20 February: day off | Sunday 21 February: day off |
| Monday 22 February: day off | Tuesday 23 February: day off | Wednesday 24 February: shift | Thursday 25 February: day off | Friday 26 February: shift | Saturday 27 February: day off | Sunday 28 February: shift |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Monday 1 March: day off | Tuesday 2 March: day off | Wednesday 3 March: day off | Thursday 4 March: day off | Friday 5 March: shift | Saturday 6 March: day off | Sunday 7 March: shift |
| Monday 8 March: day off | Tuesday 9 March: shift | Wednesday 10 March: day off | Thursday 11 March: day off | Friday 12 March: day off | Saturday 13 March: day off | Sunday 14 March: shift |
| Monday 15 March: day off | Tuesday 16 March: shift | Wednesday 17 March: day off | Thursday 18 March: shift | Friday 19 March: day off | Saturday 20 March: day off | Sunday 21 March: day off |
| Monday 22 March: day off | Tuesday 23 March: shift | Wednesday 24 March: day off | Thursday 25 March: shift | Friday 26 March: day off | Saturday 27 March: shift | Sunday 28 March: day off |
| Monday 29 March: day off | Tuesday 30 March: day off | Wednesday 31 March: day off |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Thursday 1 April: shift | Friday 2 April: day off | Saturday 3 April: shift | Sunday 4 April: day off | |||
| Monday 5 April: shift | Tuesday 6 April: day off | Wednesday 7 April: day off | Thursday 8 April: day off | Friday 9 April: day off | Saturday 10 April: shift | Sunday 11 April: day off |
| Monday 12 April: shift | Tuesday 13 April: day off | Wednesday 14 April: shift | Thursday 15 April: day off | Friday 16 April: day off | Saturday 17 April: day off | Sunday 18 April: day off |
| Monday 19 April: shift | Tuesday 20 April: day off | Wednesday 21 April: shift | Thursday 22 April: day off | Friday 23 April: shift | Saturday 24 April: day off | Sunday 25 April: day off |
| Monday 26 April: day off | Tuesday 27 April: day off | Wednesday 28 April: shift | Thursday 29 April: day off | Friday 30 April: shift |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Saturday 1 May: day off | Sunday 2 May: shift | |||||
| Monday 3 May: day off | Tuesday 4 May: day off | Wednesday 5 May: day off | Thursday 6 May: day off | Friday 7 May: shift | Saturday 8 May: day off | Sunday 9 May: shift |
| Monday 10 May: day off | Tuesday 11 May: shift | Wednesday 12 May: day off | Thursday 13 May: day off | Friday 14 May: day off | Saturday 15 May: day off | Sunday 16 May: shift |
| Monday 17 May: day off | Tuesday 18 May: shift | Wednesday 19 May: day off | Thursday 20 May: shift | Friday 21 May: day off | Saturday 22 May: day off | Sunday 23 May: day off |
| Monday 24 May: day off | Tuesday 25 May: shift | Wednesday 26 May: day off | Thursday 27 May: shift | Friday 28 May: day off | Saturday 29 May: shift | Sunday 30 May: day off |
| Monday 31 May: day off |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Tuesday 1 June: day off | Wednesday 2 June: day off | Thursday 3 June: shift | Friday 4 June: day off | Saturday 5 June: shift | Sunday 6 June: day off | |
| Monday 7 June: shift | Tuesday 8 June: day off | Wednesday 9 June: day off | Thursday 10 June: day off | Friday 11 June: day off | Saturday 12 June: shift | Sunday 13 June: day off |
| Monday 14 June: shift | Tuesday 15 June: day off | Wednesday 16 June: shift | Thursday 17 June: day off | Friday 18 June: day off | Saturday 19 June: day off | Sunday 20 June: day off |
| Monday 21 June: shift | Tuesday 22 June: day off | Wednesday 23 June: shift | Thursday 24 June: day off | Friday 25 June: shift | Saturday 26 June: day off | Sunday 27 June: day off |
| Monday 28 June: day off | Tuesday 29 June: day off | Wednesday 30 June: shift |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Thursday 1 July: day off | Friday 2 July: shift | Saturday 3 July: day off | Sunday 4 July: shift | |||
| Monday 5 July: day off | Tuesday 6 July: day off | Wednesday 7 July: day off | Thursday 8 July: day off | Friday 9 July: shift | Saturday 10 July: day off | Sunday 11 July: shift |
| Monday 12 July: day off | Tuesday 13 July: shift | Wednesday 14 July: day off | Thursday 15 July: day off | Friday 16 July: day off | Saturday 17 July: day off | Sunday 18 July: shift |
| Monday 19 July: day off | Tuesday 20 July: shift | Wednesday 21 July: day off | Thursday 22 July: shift | Friday 23 July: day off | Saturday 24 July: day off | Sunday 25 July: day off |
| Monday 26 July: day off | Tuesday 27 July: shift | Wednesday 28 July: day off | Thursday 29 July: shift | Friday 30 July: day off | Saturday 31 July: shift |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Sunday 1 August: day off | ||||||
| Monday 2 August: day off | Tuesday 3 August: day off | Wednesday 4 August: day off | Thursday 5 August: shift | Friday 6 August: day off | Saturday 7 August: shift | Sunday 8 August: day off |
| Monday 9 August: shift | Tuesday 10 August: day off | Wednesday 11 August: day off | Thursday 12 August: day off | Friday 13 August: day off | Saturday 14 August: shift | Sunday 15 August: day off |
| Monday 16 August: shift | Tuesday 17 August: day off | Wednesday 18 August: shift | Thursday 19 August: day off | Friday 20 August: day off | Saturday 21 August: day off | Sunday 22 August: day off |
| Monday 23 August: shift | Tuesday 24 August: day off | Wednesday 25 August: shift | Thursday 26 August: day off | Friday 27 August: shift | Saturday 28 August: day off | Sunday 29 August: day off |
| Monday 30 August: day off | Tuesday 31 August: day off |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Wednesday 1 September: shift | Thursday 2 September: day off | Friday 3 September: shift | Saturday 4 September: day off | Sunday 5 September: shift | ||
| Monday 6 September: day off | Tuesday 7 September: day off | Wednesday 8 September: day off | Thursday 9 September: day off | Friday 10 September: shift | Saturday 11 September: day off | Sunday 12 September: shift |
| Monday 13 September: day off | Tuesday 14 September: shift | Wednesday 15 September: day off | Thursday 16 September: day off | Friday 17 September: day off | Saturday 18 September: day off | Sunday 19 September: shift |
| Monday 20 September: day off | Tuesday 21 September: shift | Wednesday 22 September: day off | Thursday 23 September: shift | Friday 24 September: day off | Saturday 25 September: day off | Sunday 26 September: day off |
| Monday 27 September: day off | Tuesday 28 September: shift | Wednesday 29 September: day off | Thursday 30 September: shift |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Friday 1 October: day off | Saturday 2 October: shift | Sunday 3 October: day off | ||||
| Monday 4 October: day off | Tuesday 5 October: day off | Wednesday 6 October: day off | Thursday 7 October: shift | Friday 8 October: day off | Saturday 9 October: shift | Sunday 10 October: day off |
| Monday 11 October: shift | Tuesday 12 October: day off | Wednesday 13 October: day off | Thursday 14 October: day off | Friday 15 October: day off | Saturday 16 October: shift | Sunday 17 October: day off |
| Monday 18 October: shift | Tuesday 19 October: day off | Wednesday 20 October: shift | Thursday 21 October: day off | Friday 22 October: day off | Saturday 23 October: day off | Sunday 24 October: day off |
| Monday 25 October: shift | Tuesday 26 October: day off | Wednesday 27 October: shift | Thursday 28 October: day off | Friday 29 October: shift | Saturday 30 October: day off | Sunday 31 October: day off |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Monday 1 November: day off | Tuesday 2 November: day off | Wednesday 3 November: shift | Thursday 4 November: day off | Friday 5 November: shift | Saturday 6 November: day off | Sunday 7 November: shift |
| Monday 8 November: day off | Tuesday 9 November: day off | Wednesday 10 November: day off | Thursday 11 November: day off | Friday 12 November: shift | Saturday 13 November: day off | Sunday 14 November: shift |
| Monday 15 November: day off | Tuesday 16 November: shift | Wednesday 17 November: day off | Thursday 18 November: day off | Friday 19 November: day off | Saturday 20 November: day off | Sunday 21 November: shift |
| Monday 22 November: day off | Tuesday 23 November: shift | Wednesday 24 November: day off | Thursday 25 November: shift | Friday 26 November: day off | Saturday 27 November: day off | Sunday 28 November: day off |
| Monday 29 November: day off | Tuesday 30 November: shift |
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
| Wednesday 1 December: day off | Thursday 2 December: shift | Friday 3 December: day off | Saturday 4 December: shift | Sunday 5 December: day off | ||
| Monday 6 December: day off | Tuesday 7 December: day off | Wednesday 8 December: day off | Thursday 9 December: shift | Friday 10 December: day off | Saturday 11 December: shift | Sunday 12 December: day off |
| Monday 13 December: shift | Tuesday 14 December: day off | Wednesday 15 December: day off | Thursday 16 December: day off | Friday 17 December: day off | Saturday 18 December: shift | Sunday 19 December: day off |
| Monday 20 December: shift | Tuesday 21 December: day off | Wednesday 22 December: shift | Thursday 23 December: day off | Friday 24 December: day off | Saturday 25 December: day off | Sunday 26 December: day off |
| Monday 27 December: shift | Tuesday 28 December: day off | Wednesday 29 December: shift | Thursday 30 December: day off | Friday 31 December: shift |
- W shift
- · day off
See every crew side by side
With all the crews working this pattern, exactly one crew is on every day. One cycle of 9 days, then it repeats.
| Day | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|---|---|---|---|---|---|---|---|---|
| Your crew | Wshift | ·day off | Wshift | ·day off | Wshift | ·day off | ·day off | ·day off | ·day off |
| Platoon 2 | ·day off | ·day off | ·day off | Wshift | ·day off | Wshift | ·day off | Wshift | ·day off |
| Platoon 3 | ·day off | Wshift | ·day off | ·day off | ·day off | ·day off | Wshift | ·day off | Wshift |
Check the result against your roster: employers run these patterns in slightly different ways.
How the Kelly (9-day) pattern works
Departments run several versions of the Kelly schedule: the extra day off can fall every ninth day, every three weeks or on another rhythm. This page uses the nine-day version (shift, off, shift, off, shift, then four days off). It has the same average time on duty as 24/48 but packs the time off into a four-day block. If your department's version differs, type it into the custom box.
Also searched for as: Kelly shift schedule, Kelly day schedule, 24 on 24 off 24 on 24 off 24 on 4 off.
The cycle is 9 days long: 1 shift, 1 day off, 1 shift, 1 day off, 1 shift, 4 days off, and then it starts again.
Every crew, day by day
One full cycle for each crew, so you can see who covers what.
| Day | Your crew | Platoon 2 | Platoon 3 |
|---|---|---|---|
| 1 | Won | ·off | ·off |
| 2 | ·off | ·off | Won |
| 3 | Won | ·off | ·off |
| 4 | ·off | Won | ·off |
| 5 | Won | ·off | ·off |
| 6 | ·off | Won | ·off |
| 7 | ·off | ·off | Won |
| 8 | ·off | Won | ·off |
| 9 | ·off | ·off | Won |
The numbers
| Cycle length | 9 days |
|---|---|
| Shifts in a cycle | 3 of 9 days |
| Shifts a year | about 122 |
| Days off a year | about 244 |
| Hours a year (at 24 h a shift) | about 2,922 |
| Average hours a week | 56 |
| Longest run of shifts | 1 |
| Longest break | 4 days |
A year is 365.25 days on average, so the yearly figures are averages; the calendar above counts the exact days of the year you pick.
Good and bad about Kelly (9-day)
In its favour
- A four-day block of time off
- Three platoons still give round-the-clock cover
- Same average hours on duty as 24/48
Against it
- Three shifts within five days
- Versions vary between departments
- 24 hours on duty at a time
Who uses Kelly (9-day)
Used by some fire departments; the name comes from the extra 'Kelly day' off, the origin of which is told in several ways.
Employers run these patterns in slightly different ways, and a union contract or roster can differ from the version here. The grid above is exact for the cycle shown: if your roster differs, choose “My own cycle” in the calendar and type it in.
Other shift patterns
- 24/48 (firefighter)One 24-hour shift, then 48 hours off, on a three-day cycle with three platoons, so one platoon is always on duty.Open
- 48/96 (firefighter)Two 24-hour shifts in a row (48 hours on duty), then four days (96 hours) off, on a six-day cycle with three platoons.Open
All shift patterns and the cycle builder
Frequently asked questions
How many hours a week is Kelly (9-day)?
On average 56 hours a week, at 24 hours a shift: 3 shifts in every 9-day cycle. The weeks are not all alike, so a single week can hold more or fewer hours than the average. Change the shift length in the calendar and every number follows.
How many days off a year do I get on Kelly (9-day)?
About 244 days off in a 365-day year and about 122 shifts, with a longest run of 1 shift and a longest break of 4 days. Put your real start date in the calendar for the exact count in your year, including how many weekends are fully off.
What is a Kelly day?
An extra day off added to a firefighter rotation, so the average hours on duty fall. How often it comes round, and how it is scheduled, differs between departments, so check your own agreement; the calendar above lets you edit the cycle to match it.
Can I put the Kelly (9-day) pattern in Google Calendar or on my phone?
Yes. Pick your start date, press Add to my calendar, and open the .ics file in Google Calendar, Apple Calendar or Outlook. Each shift has a fixed ID, so importing the file again later replaces your shifts instead of adding a second set.
More free tools
AoE deadline converter
Turn an Anywhere on Earth deadline into your time zone, with a live countdown and a calendar file.
Open the toolPhD and research proposal Gantt chart maker
Start from a PhD, master's or proposal timeline, edit the tasks and download the chart as an image.
Open the toolDissertation word count breakdown
Words per chapter for any word limit, and how many words a day to finish by your deadline.
Open the toolPerson-months and percent effort calculator
Convert percent effort to person-months and back, for 12, 9 and 3-month appointments or an EU-style FTE.
Open the toolGrant burn rate calculator
Burn ratio, runway and run-out date for a grant, with commitments counted.
Open the toolCustody schedule calendar generator
2-2-3, 2-2-5-5, 3-4-4-3, week on week off: see the year, the split and the handovers, then print it.
Open the toolFree PDF tools
Merge, split, reorder, rotate and compress PDFs to a size you choose, and turn pictures into PDFs and back. In your browser: no upload, no limits.
Open the tool