Shift pattern generator
A shift rota repeats a fixed block of work days and rest days. For a 4-on-4-off pattern the block is eight days long, and it repeats from your first work day, so your shifts drift across weekdays and weekends over time. This generator takes your start date and pattern, then projects it forward week by week, marking each day as work or off and totalling the shifts and rest days. It supports common patterns like 4 on 4 off, 3 on 3 off, 5 on 2 off and 7 on 7 off, or a custom block. It assumes a single unbroken rota, so check it against your employer's published roster.
Set your first work day, choose a pattern, and pick how many weeks to project. The result lays out each week and counts your work days and rest days.
How this is worked out
A shift rota repeats a fixed block. For 4 on 4 off, the block is eight days long: four work days then four rest days, repeating from your first work day.
cycle length = days on + days off
for each day, position = (days since start) modulo cycle length
a work day is any position less than "days on"
because the cycle ignores the seven-day week, your work days drift across weekdays and weekends over time
This projects the pattern forward from your start date and counts the work days and rest days. It assumes a single unbroken rota with no leave or swaps. Check it against your employer's published roster.
Working out holiday on top of shifts? See the irregular-hours holiday accrual calculator, or browse the full calculator set.
This projects a single unbroken rota and does not account for leave or swaps. Confirm against your employer's roster.
Calculators and Data Desk, Dates & Times
Dates & Times's editorial desk builds and documents the calculators, citing the underlying date maths and the official UK source behind every number. Calendar and time tools are checked against primary UK sources such as the gov.uk Bank Holidays API before publication.
Last reviewed: 12 June 2026