Skip to the content

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

  1. Set your start date

    Enter a date from your roster that is the first day of a block, and say which block it is.

  2. Check the year

    Every shift and day off is drawn, with the hours a year, the days off and the weekends you have free.

  3. 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

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

January 2027
MoTuWeThFrSaSu
Friday 1 January: shiftSaturday 2 January: day offSunday 3 January: shift
Monday 4 January: day offTuesday 5 January: shiftWednesday 6 January: day offThursday 7 January: day offFriday 8 January: day offSaturday 9 January: day offSunday 10 January: shift
Monday 11 January: day offTuesday 12 January: shiftWednesday 13 January: day offThursday 14 January: shiftFriday 15 January: day offSaturday 16 January: day offSunday 17 January: day off
Monday 18 January: day offTuesday 19 January: shiftWednesday 20 January: day offThursday 21 January: shiftFriday 22 January: day offSaturday 23 January: shiftSunday 24 January: day off
Monday 25 January: day offTuesday 26 January: day offWednesday 27 January: day offThursday 28 January: shiftFriday 29 January: day offSaturday 30 January: shiftSunday 31 January: day off
February 2027
MoTuWeThFrSaSu
Monday 1 February: shiftTuesday 2 February: day offWednesday 3 February: day offThursday 4 February: day offFriday 5 February: day offSaturday 6 February: shiftSunday 7 February: day off
Monday 8 February: shiftTuesday 9 February: day offWednesday 10 February: shiftThursday 11 February: day offFriday 12 February: day offSaturday 13 February: day offSunday 14 February: day off
Monday 15 February: shiftTuesday 16 February: day offWednesday 17 February: shiftThursday 18 February: day offFriday 19 February: shiftSaturday 20 February: day offSunday 21 February: day off
Monday 22 February: day offTuesday 23 February: day offWednesday 24 February: shiftThursday 25 February: day offFriday 26 February: shiftSaturday 27 February: day offSunday 28 February: shift
March 2027
MoTuWeThFrSaSu
Monday 1 March: day offTuesday 2 March: day offWednesday 3 March: day offThursday 4 March: day offFriday 5 March: shiftSaturday 6 March: day offSunday 7 March: shift
Monday 8 March: day offTuesday 9 March: shiftWednesday 10 March: day offThursday 11 March: day offFriday 12 March: day offSaturday 13 March: day offSunday 14 March: shift
Monday 15 March: day offTuesday 16 March: shiftWednesday 17 March: day offThursday 18 March: shiftFriday 19 March: day offSaturday 20 March: day offSunday 21 March: day off
Monday 22 March: day offTuesday 23 March: shiftWednesday 24 March: day offThursday 25 March: shiftFriday 26 March: day offSaturday 27 March: shiftSunday 28 March: day off
Monday 29 March: day offTuesday 30 March: day offWednesday 31 March: day off
April 2027
MoTuWeThFrSaSu
Thursday 1 April: shiftFriday 2 April: day offSaturday 3 April: shiftSunday 4 April: day off
Monday 5 April: shiftTuesday 6 April: day offWednesday 7 April: day offThursday 8 April: day offFriday 9 April: day offSaturday 10 April: shiftSunday 11 April: day off
Monday 12 April: shiftTuesday 13 April: day offWednesday 14 April: shiftThursday 15 April: day offFriday 16 April: day offSaturday 17 April: day offSunday 18 April: day off
Monday 19 April: shiftTuesday 20 April: day offWednesday 21 April: shiftThursday 22 April: day offFriday 23 April: shiftSaturday 24 April: day offSunday 25 April: day off
Monday 26 April: day offTuesday 27 April: day offWednesday 28 April: shiftThursday 29 April: day offFriday 30 April: shift
May 2027
MoTuWeThFrSaSu
Saturday 1 May: day offSunday 2 May: shift
Monday 3 May: day offTuesday 4 May: day offWednesday 5 May: day offThursday 6 May: day offFriday 7 May: shiftSaturday 8 May: day offSunday 9 May: shift
Monday 10 May: day offTuesday 11 May: shiftWednesday 12 May: day offThursday 13 May: day offFriday 14 May: day offSaturday 15 May: day offSunday 16 May: shift
Monday 17 May: day offTuesday 18 May: shiftWednesday 19 May: day offThursday 20 May: shiftFriday 21 May: day offSaturday 22 May: day offSunday 23 May: day off
Monday 24 May: day offTuesday 25 May: shiftWednesday 26 May: day offThursday 27 May: shiftFriday 28 May: day offSaturday 29 May: shiftSunday 30 May: day off
Monday 31 May: day off
June 2027
MoTuWeThFrSaSu
Tuesday 1 June: day offWednesday 2 June: day offThursday 3 June: shiftFriday 4 June: day offSaturday 5 June: shiftSunday 6 June: day off
Monday 7 June: shiftTuesday 8 June: day offWednesday 9 June: day offThursday 10 June: day offFriday 11 June: day offSaturday 12 June: shiftSunday 13 June: day off
Monday 14 June: shiftTuesday 15 June: day offWednesday 16 June: shiftThursday 17 June: day offFriday 18 June: day offSaturday 19 June: day offSunday 20 June: day off
Monday 21 June: shiftTuesday 22 June: day offWednesday 23 June: shiftThursday 24 June: day offFriday 25 June: shiftSaturday 26 June: day offSunday 27 June: day off
Monday 28 June: day offTuesday 29 June: day offWednesday 30 June: shift
July 2027
MoTuWeThFrSaSu
Thursday 1 July: day offFriday 2 July: shiftSaturday 3 July: day offSunday 4 July: shift
Monday 5 July: day offTuesday 6 July: day offWednesday 7 July: day offThursday 8 July: day offFriday 9 July: shiftSaturday 10 July: day offSunday 11 July: shift
Monday 12 July: day offTuesday 13 July: shiftWednesday 14 July: day offThursday 15 July: day offFriday 16 July: day offSaturday 17 July: day offSunday 18 July: shift
Monday 19 July: day offTuesday 20 July: shiftWednesday 21 July: day offThursday 22 July: shiftFriday 23 July: day offSaturday 24 July: day offSunday 25 July: day off
Monday 26 July: day offTuesday 27 July: shiftWednesday 28 July: day offThursday 29 July: shiftFriday 30 July: day offSaturday 31 July: shift
August 2027
MoTuWeThFrSaSu
Sunday 1 August: day off
Monday 2 August: day offTuesday 3 August: day offWednesday 4 August: day offThursday 5 August: shiftFriday 6 August: day offSaturday 7 August: shiftSunday 8 August: day off
Monday 9 August: shiftTuesday 10 August: day offWednesday 11 August: day offThursday 12 August: day offFriday 13 August: day offSaturday 14 August: shiftSunday 15 August: day off
Monday 16 August: shiftTuesday 17 August: day offWednesday 18 August: shiftThursday 19 August: day offFriday 20 August: day offSaturday 21 August: day offSunday 22 August: day off
Monday 23 August: shiftTuesday 24 August: day offWednesday 25 August: shiftThursday 26 August: day offFriday 27 August: shiftSaturday 28 August: day offSunday 29 August: day off
Monday 30 August: day offTuesday 31 August: day off
September 2027
MoTuWeThFrSaSu
Wednesday 1 September: shiftThursday 2 September: day offFriday 3 September: shiftSaturday 4 September: day offSunday 5 September: shift
Monday 6 September: day offTuesday 7 September: day offWednesday 8 September: day offThursday 9 September: day offFriday 10 September: shiftSaturday 11 September: day offSunday 12 September: shift
Monday 13 September: day offTuesday 14 September: shiftWednesday 15 September: day offThursday 16 September: day offFriday 17 September: day offSaturday 18 September: day offSunday 19 September: shift
Monday 20 September: day offTuesday 21 September: shiftWednesday 22 September: day offThursday 23 September: shiftFriday 24 September: day offSaturday 25 September: day offSunday 26 September: day off
Monday 27 September: day offTuesday 28 September: shiftWednesday 29 September: day offThursday 30 September: shift
October 2027
MoTuWeThFrSaSu
Friday 1 October: day offSaturday 2 October: shiftSunday 3 October: day off
Monday 4 October: day offTuesday 5 October: day offWednesday 6 October: day offThursday 7 October: shiftFriday 8 October: day offSaturday 9 October: shiftSunday 10 October: day off
Monday 11 October: shiftTuesday 12 October: day offWednesday 13 October: day offThursday 14 October: day offFriday 15 October: day offSaturday 16 October: shiftSunday 17 October: day off
Monday 18 October: shiftTuesday 19 October: day offWednesday 20 October: shiftThursday 21 October: day offFriday 22 October: day offSaturday 23 October: day offSunday 24 October: day off
Monday 25 October: shiftTuesday 26 October: day offWednesday 27 October: shiftThursday 28 October: day offFriday 29 October: shiftSaturday 30 October: day offSunday 31 October: day off
November 2027
MoTuWeThFrSaSu
Monday 1 November: day offTuesday 2 November: day offWednesday 3 November: shiftThursday 4 November: day offFriday 5 November: shiftSaturday 6 November: day offSunday 7 November: shift
Monday 8 November: day offTuesday 9 November: day offWednesday 10 November: day offThursday 11 November: day offFriday 12 November: shiftSaturday 13 November: day offSunday 14 November: shift
Monday 15 November: day offTuesday 16 November: shiftWednesday 17 November: day offThursday 18 November: day offFriday 19 November: day offSaturday 20 November: day offSunday 21 November: shift
Monday 22 November: day offTuesday 23 November: shiftWednesday 24 November: day offThursday 25 November: shiftFriday 26 November: day offSaturday 27 November: day offSunday 28 November: day off
Monday 29 November: day offTuesday 30 November: shift
December 2027
MoTuWeThFrSaSu
Wednesday 1 December: day offThursday 2 December: shiftFriday 3 December: day offSaturday 4 December: shiftSunday 5 December: day off
Monday 6 December: day offTuesday 7 December: day offWednesday 8 December: day offThursday 9 December: shiftFriday 10 December: day offSaturday 11 December: shiftSunday 12 December: day off
Monday 13 December: shiftTuesday 14 December: day offWednesday 15 December: day offThursday 16 December: day offFriday 17 December: day offSaturday 18 December: shiftSunday 19 December: day off
Monday 20 December: shiftTuesday 21 December: day offWednesday 22 December: shiftThursday 23 December: day offFriday 24 December: day offSaturday 25 December: day offSunday 26 December: day off
Monday 27 December: shiftTuesday 28 December: day offWednesday 29 December: shiftThursday 30 December: day offFriday 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.

Day123456789
Your crewWshift·day offWshift·day offWshift·day off·day off·day off·day off
Platoon 2·day off·day off·day offWshift·day offWshift·day offWshift·day off
Platoon 3·day offWshift·day off·day off·day off·day offWshift·day offWshift

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.

DayYour crewPlatoon 2Platoon 3
1Won·off·off
2·off·offWon
3Won·off·off
4·offWon·off
5Won·off·off
6·offWon·off
7·off·offWon
8·offWon·off
9·off·offWon

The numbers

Cycle length9 days
Shifts in a cycle3 of 9 days
Shifts a yearabout 122
Days off a yearabout 244
Hours a year (at 24 h a shift)about 2,922
Average hours a week56
Longest run of shifts1
Longest break4 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

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 tool
  • PhD 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 tool
  • Dissertation word count breakdown

    Words per chapter for any word limit, and how many words a day to finish by your deadline.

    Open the tool
  • Person-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 tool
  • Grant burn rate calculator

    Burn ratio, runway and run-out date for a grant, with commitments counted.

    Open the tool
  • Custody 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 tool
  • Free 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