Rotations & Coverage Hours

A rotation is a group of people inside a schedule who take turns. This page is about using more than one, and giving each its own hours.

If your schedule is "five people, one week each, around the clock", you already have everything you need β€” one rotation, no hours to set. You can skip this page.

Open a schedule and click Rotations to follow along.

What a rotation controls

Each rotation has its own:

SettingMeansExample
PeopleWho takes turns, and in what orderAnn β†’ Ben β†’ Chris
Turn lengthHow long each person holds it1 week
Handoff timeWhen one turn ends and the next starts09:00
HoursWhen this rotation applies at allMon–Fri, 9am–5pm
Ends onOptional stop date(usually blank)

"Hours" is the interesting one, and the reason to have more than one rotation.

Setting hours

By default a rotation is always on call β€” it covers every hour of every day.

To narrow it, open the rotation and choose the days and times. A rotation set to Mon–Fri, 9am–5pm is silent outside those hours. Nobody in it will be called at 3am on a Sunday.

Hours are read in the schedule's timezone. If your schedule is set to New York, "9am" means 9am in New York for everyone, no matter where they are. Daylight-saving changes are handled for you β€” 9am stays 9am.

Overnight hours

You can cross midnight: Mon 10pm β†’ Tue 6am is fine, and so is a single long block like Fri 5pm β†’ Mon 9am for a whole weekend.

What you can't do is wrap around inside one day (Mon 10pm β†’ Mon 6am), because there's no way to tell whether that means six hours or thirty. Use the next day instead.

Two rotations, different hours

This is the main reason to add a second rotation.

Schedule: "Database On-Call"
  β”œβ”€ Rotation "Weekday days"  Ann, Ben, Chris   Mon-Fri 9am-5pm
  └─ Rotation "Everything else"  Dana, Eli      always on call

Ann, Ben and Chris take weekday business hours between them. Dana and Eli split every remaining hour. Between them, every hour is covered by someone.

Click + Add a rotation to create the second one, then set its people and hours.

When rotations overlap

Sooner or later two rotations will both cover the same moment. You get to say what that means, and there are only two answers. The choice sits at the top of the Rotations editor.

One person at a time (the default)

The top rotation wins. The ones below it only cover hours the top one leaves free.

This is what you want for the layered setup above: a specific business-hours rotation on top, and a catch-all underneath filling the nights and weekends. The catch-all never steps on the specific one.

Use the β–² β–Ό buttons to set priority. The list is in priority order β€” top of the list wins.

Everyone on call together

Every rotation covering that moment pages, at the same time.

Use this when you genuinely want several people to get the call at once:

  • Two regions with a deliberate handover overlap, so neither drops the baton
  • A shared pager where two people always respond together

One important detail: everyone paged at the same moment counts as one escalation step. So the first person to acknowledge stops everyone else's phone ringing β€” nobody has to acknowledge twice, and it won't escalate past them.

Switching modes changes who gets called. The preview underneath updates as soon as you change it, so check it before saving.

"NEVER FIRES" β€” what that badge means

If a rotation is marked NEVER FIRES, it does nothing at all for the next 14 days. Two possible reasons, and the badge tells you which:

A rotation above it already covers all the same time. Only possible in One person at a time mode. Sometimes that's deliberate β€” a deliberate fallback that only matters if you narrow the one above it later. If it isn't deliberate, either move it up with β–², or narrow the hours of the rotation above it so this one has something left to cover.

It has nobody in it, or its hours fall outside the window. Add people, or widen its hours.

The badge appears on its own as you edit β€” you don't need to press anything to find out.

Checking your work

Under the rotations list, Resulting schedule shows exactly what you'd get, combining every rotation and any active overrides. It's the same calculation used to decide who actually gets called, not an approximation.

Look for two things:

  • "Every hour of the next 14 days is covered." β€” good.
  • "X hours has nobody on call." β€” you have a gap. Widen a rotation's hours, or add an always-on-call rotation at the bottom of the list as a catch-all.

Nothing you do in this editor takes effect until you press Save rotations.