A 24-on, 48-off schedule repeats one 24-hour duty period followed by 48 hours off. The complete cycle lasts 72 hours, or three days. In an uninterrupted fixed-duration model, one-third of elapsed time is on duty, giving a long-run average of 56 duty hours per seven days. That average is not the number of hours in every calendar week and is not an overtime calculation.
Read the cycle using timestamps
Suppose the first shift begins Monday, October 26, 2026 at 07:00. It finishes Tuesday, October 27 at 07:00. The next shift starts Thursday, October 29 at 07:00, exactly 48 hours after the previous finish. The gap between successive starts is 72 hours, not 48.
| Interval | Assignment | Hours |
|---|---|---|
| Monday 07:00 to Tuesday 07:00 | On duty | 24 |
| Tuesday 07:00 to Wednesday 07:00 | Off duty | 24 |
| Wednesday 07:00 to Thursday 07:00 | Off duty | 24 |
| Thursday 07:00 | Next duty period begins | Cycle repeats |
A calendar that marks only Monday as “work” is usually labeling the shift's start date. Tuesday still contains seven hours from the previous shift before the 07:00 handover. This distinction matters when counting hours inside a month, arranging appointments or comparing a roster with a time record. Keep start-date labels and actual occupied intervals separate.
Build a dated calendar
The table follows the same anchor through six duty periods. Each start moves forward three calendar dates. All finishes occur at 07:00 the following date. It is a wall-clock illustration with no daylight-saving transition; elapsed hours need a separate check if clocks change locally.
| Shift | Start | Finish |
|---|---|---|
| 1 | Monday, October 26, 07:00 | Tuesday, October 27, 07:00 |
| 2 | Thursday, October 29, 07:00 | Friday, October 30, 07:00 |
| 3 | Sunday, November 1, 07:00 | Monday, November 2, 07:00 |
| 4 | Wednesday, November 4, 07:00 | Thursday, November 5, 07:00 |
| 5 | Saturday, November 7, 07:00 | Sunday, November 8, 07:00 |
| 6 | Tuesday, November 10, 07:00 | Wednesday, November 11, 07:00 |
Continue by adding three days to the last start date; do not restart on the first of each month. A month boundary is a reporting boundary, not a new rotation anchor. Two employees with different anchors can have the same pattern and different duty dates throughout the year.
Calculate the 56-hour average
Average weekly duty hours = 24 ÷ 3 × 7 = 56.
Over 21 days, the three-day cycle repeats seven times. Seven duty periods contain 168 duty hours; dividing by three weeks gives 56 hours per week. Twenty-one days is also the shortest whole-day span over which this three-day pattern returns to the same weekday alignment.
Do not confuse those 168 duty hours over three weeks with the 168 elapsed hours in one week. The same number appears in two different quantities. Writing the unit and reporting period beside each result avoids that common error.
If shifts are credited wholly to their start dates, three successive seven-day blocks aligned to the first duty start contain three, two and two shift starts: 72, 48 and 48 credited hours. Their average is 56. Actual hours inside midnight-to-midnight calendar weeks can differ because the first and last duty periods cross the reporting boundary.
Split hours at the reporting boundary
Consider the first calendar week from Monday, October 26 at 00:00 through Monday, November 2 at 00:00. The two complete October shifts contribute 48 hours. The Sunday shift contributes 17 hours before midnight, so actual duty within this week is 65 hours. Its remaining seven hours belong to the next calendar week.
That result does not contradict the 56-hour long-run average or the 72-hour total credited to starts in the first seven dates. They use different allocation rules. For payroll reconciliation, use the employer's defined work period and count the hours falling inside it, rather than choosing the method that produces the expected average.
The hours-between-dates calculator can check timestamp intervals. Where a clock change occurs, choose the appropriate elapsed-time calculation and UTC offsets. A shift from 07:00 one day to 07:00 the next can span 23 or 25 elapsed hours across a one-hour daylight-saving change.
Compare monthly totals without using a fixed estimate
A 30-day span aligned to the start of a cycle contains ten complete cycles and 240 duty hours in the fixed-duration model. A 31-day span includes ten cycles plus one additional day. The hours in that extra day depend on the rotation position and the exact reporting boundaries.
For the uninterrupted example above, November 2026 starts with an off-duty interval from midnight to 07:00 on November 1. The month contains ten duty starts, on November 1, 4, 7, 10, 13, 16, 19, 22, 25 and 28. All ten shifts finish before December, giving 240 modeled duty hours within November. This excludes clock changes, swaps, leave, overtime extensions and relief days.
Do not use 56 × 4 = 224 as an exact monthly value: most months are longer than four weeks. Nor should an annual planning average replace a dated time record. Generate the assignments first, clip each interval to the month and total the clipped hours.
Distinguish rotation coverage from relief staffing
Three crews staggered by one day can cover a repeating 24-hour position in the idealized model: Crew A covers the first duty period, Crew B the second and Crew C the third. The arrangement leaves no additional crew built into that simple three-crew count for absence, training or overlapping handovers.
If two qualified people must be present continuously, the base pattern needs two people on each crew before relief requirements. A crew label does not say how many people it contains. Review vacancies, qualification requirements and time away separately; do not assume “three crews” establishes sufficient headcount.
Start with the 24/7 staffing data table for coverage volume, then check intervals with the coverage calculator. The calculator's repeating daily roster is useful for timing checks; it does not automatically model an entire multiweek crew rotation.
Keep pay and recovery questions separate
Duty duration, compensable hours and overtime eligibility are different measures. In the United States, some qualifying public fire-protection arrangements use the FLSA section 7(k) work-period framework. The Department of Labor's Fact Sheet 8 explains the conditions and work periods. A 24/48 label alone does not establish eligibility or a pay threshold. Do not automatically classify 56 minus 40 as the overtime payable each week.
Similarly, 48 scheduled hours off do not equal 48 hours of sleep or guarantee recovery. Travel, other obligations and additional assignments can reduce the time available. This guide calculates a roster; it does not certify that a schedule is safe or suitable for a particular role.
Check the calendar before sharing it
Confirm the anchor date, start time, time zone and whether “work” marks a start date or a full occupied interval. Verify that every normal start is three days after the previous one and that a normal finish-to-start gap is 48 hours in the fixed-duration model. Record exceptions without changing the underlying anchor.
Check one full 21-day weekday cycle and at least one month boundary. If using the rotating-shift calendar, treat its work/rest dates as planning labels and retain the actual start/end times separately. Compare the Kelly schedule guide when the workplace uses a longer pattern or separate relief days rather than a pure three-day rotation.
Related calculators and guides
- Rotating Shift Schedules: Patterns, Hours and Calendars
- Calculate Shift Handover Overlap Hours
- How Many FTE Do You Need to Cover One 24/7 Position?
Explore more in Shift Schedules Calculators and Guides.