πŸ—“When is my next shift?

βœ“ Tested & verified Updated: How we calculate this

A two-week rota drifts against the month. Written on a wall calendar it is easy to read wrong; computed forward it is not.

What is coming up

Every date we track that falls inside your window β€” so a birthday, a bank holiday or a deadline never arrives as a surprise.

Free, no account. One click unsubscribes and deletes your address.

Try one of these too

How far does a two-week rota drift against the calendar?

Give the DaysUntilNow rota planner one shift you know is right and the repeat interval, and it rolls the pattern forward fourteen occurrences with the weekday on each one. Nothing about a rota needs to be remembered once it has a starting point; it needs to be counted, and counting in sevens or fourteens by eye across a month boundary is exactly where it goes wrong.

The drift is the whole problem. A fortnightly pattern repeats every fourteen days, but months are 28, 30 or 31 days long, so the pattern lands on a different part of the month each time and comes back to the same date only about twice a year. A wall calendar hides that, because a wall calendar is laid out in months and the rota is not.

Rota patterns and how they drift

A rota measured in weeks does not line up with a calendar month.

PatternRepeats everyOccurrences a yearLands on the same date
Weekly7 days52Never β€” the date moves each week
Fortnightly14 days26Roughly twice a year
Four-weekly28 days13Only in February of a common year
Four on, four off8 days45 or 46 blocksEvery 56 days, and never on the same weekday twice inside that

This is why a pattern written on a wall calendar goes wrong around month boundaries.

Why a wall calendar is the wrong shape for a rota

A month grid is seven columns wide, which makes weekly patterns trivial to read and everything else almost impossible. A weekly rota sits in one column. A fortnightly rota sits in one column with alternate rows blanked out, which the eye still copes with. Anything that is not a multiple of seven has no column at all: it walks diagonally across the grid and off the bottom edge into a month whose first row starts somewhere else entirely.

That is where rotas are misread, and always in the same place β€” the last week of one month and the first of the next, where the grid restarts and the pattern does not.

What actually repeats, and how often

The table above holds the four common shapes. Two things in it are worth saying out loud.

A pattern whose length is a multiple of seven never rotates. Weekly, fortnightly and four-weekly rotas keep the same weekday forever. If you work Saturdays on a four-weekly rota, you work Saturdays until the rota changes. That is a feature for anyone with a fixed commitment on a Tuesday evening and a serious problem for anyone hoping the weekends will share out fairly.

A pattern whose length is not a multiple of seven rotates and eventually comes back. An eight-day cycle β€” four on, four off β€” moves one weekday forward each time and returns to its starting weekday after 56 days. That is why continental shift patterns are built on eights and twelves: the rotation is deliberate, and it is what makes the weekends distribute evenly over a couple of months instead of landing on the same two people.

Reading the dates the tool produces

The list runs forward from the one date you supply, so the accuracy of everything depends on that date being a real occurrence rather than an approximate one. Take it off the published roster, not from memory of “the Monday after the bank holiday”.

Two things the list deliberately does not do. It does not skip public holidays, because a rota that silently dropped a date would stop matching the roster on the wall at work β€” a holiday covered differently is a swap laid over the pattern, not a change to the pattern. And it does not shift dates off weekends, because unlike a payroll date a shift is often meant to be at the weekend; that is usually the whole reason the rota exists.

Where the rota meets everything else

A rota is rarely the only recurring date in a life. The overlaps that matter are the ones where two patterns of different lengths cross: a fortnightly rota against a semi-monthly pay date, a four-weekly rota against a monthly rent day, a twelve-hour night block against a school pickup. None of those pairs repeat together at a useful interval, which is why they have to be laid out as dates rather than reasoned about as rules.

The days between dates calculator will tell you how many days separate two of them once you have both, and the day of the week calculator will name the weekday for any date you want to test. What this planner adds is that the list is worth keeping β€” a rota you set up once and can open on a phone in a corridor is a different thing from a rota you recompute every time somebody asks whether you are free.

Frequently asked questions

Can this handle four-on four-off?

Not as a single setting, because four-on four-off is a cycle measured in days rather than weeks: the block start advances by eight days each time, so it never settles on a weekday at all. It repeats against the week only every 56 days, which is why a four-on four-off worker gets a different pair of weekend days off in each of seven consecutive cycles. The practical way to use this tool for it is to set the repeat to eight days from the first day of one block, or to save two rotas β€” one for each block start β€” and read them together.

Why does my fortnightly rota land on the same date twice in one year and then not again?

Because 14 days divides into a 28-day February exactly and into nothing else. A fortnightly pattern advances by 14 days while the month advances by 30 or 31, so the date it lands on creeps backwards through the month by two or three days each cycle and returns to where it started only after the creep has accumulated a full month. In a leap year February takes 29 days and even that one alignment disappears.

How do I work out which weekend I am off on a rolling rota?

Count the pattern in days rather than in weeks and compare it against seven. A pattern whose length is a multiple of seven β€” weekly, fortnightly, four-weekly β€” keeps the same weekday forever, so if you are working this Saturday you are working every one of them. Any other length rotates: an eight-day cycle moves one weekday forward each time and takes eight cycles to come back, a twelve-day cycle takes seven. The rotation is the point of those patterns, and it is why they cannot be read off a month grid.

Does a rota that skips a public holiday still count as the same pattern?

It stops being a pattern the moment it skips anything, which is why nothing is skipped here. A rota that quietly dropped a date would produce a list that no longer matches the one on the wall at work, and a planner that disagrees with the roster is worse than no planner. Every date the rule produces is shown; where your employer covers a holiday differently, that is a swap on top of the pattern rather than a change to it.

What if my rota is set by week number rather than by date?

Then the thing to pin down first is which week numbering your employer uses, because there are two and they disagree for about six days a year. ISO 8601 weeks start on Monday and week 1 holds the first Thursday of January; the US convention starts weeks on Sunday and gives week 1 to whichever week holds 1 January. A rota described as “odd weeks on” flips over entirely depending on which of the two the roster was written in.

How we calculate this

Weekly and fortnightly cycles step in fixed 7 or 14-day intervals from the reference date, computed in UTC so that a daylight saving change cannot move a date across midnight. Nothing is skipped and nothing is shifted: a rota is a pattern, and a pattern with exceptions applied silently is no longer one. Weekday names come from the calendar rather than from arithmetic on the interval, so a leap day changes them correctly without a special case.