on-call · escalation policies · paging

On-Call Rosters, Schedules & Escalation

Build the rotation once and it keeps turning. Everyone can see whose week it is, overrides and swaps cover holidays and dentist appointments, the rota subscribes into your own calendar, and the escalation policy pages the person the roster names - not the whole channel.

This is the page for teams replacing a pager. AlertKick does the on-call job of PagerDuty or Opsgenie - rosters, escalation policies, and paging over mobile push, SMS, WhatsApp, Telegram, Slack, and email - on top of the alerts you already have, priced per server instead of per engineer. Compare it with PagerDuty or Opsgenie, or import your schedules and policies from either.

roster daily_oncall · Europe/London on call now: Rio until Fri 09:00

primary

backup

Thu-Fri backup is an override - the underlying rotation is untouched and resumes on Saturday.

Incident fires -> on-call roster consulted -> escalation chain paged until ACKed -> incident closed.

Schedules & rotations

Rotate daily or weekly, and set how many days or weeks one shift lasts - anything from a single day up to 52 weeks. Set the members, the order, and the handover time, and the rota keeps turning without anyone re-typing a spreadsheet. Everyone takes their fair share, the schedule is always visible, and your team knows exactly who's on call and when their turn comes around.

Overrides & swaps

People take holidays. People get sick. People swap shifts because they have a dentist appointment on Tuesday. Overrides let you handle all of it without breaking the underlying rotation - a one-time override for a specific date range, after which the original schedule resumes exactly where it would have been. A shift swap is booked as a pair, so cancelling one half cancels both and nobody is left covering a shift they never agreed to.

Overrides are an overlay rather than an edit, so everything that asks who is on call reads the same answer: the escalation policy, the on-call indicator, the timeline, and the calendar feed.

A roster per team or service

Platform, database, and application on-call rarely belong to the same people. Create as many rosters as you need, each with its own members and cadence, and let escalation policies pick the one that fits the alert. Handover times are timezone-aware, so a distributed team hands over at the right local hour.

Escalation chains

If the on-call engineer doesn't respond in five minutes, escalate to the next person. Then the next. Different channels at each step - a push notification first, then SMS and WhatsApp. Every incident gets handled, even if someone's phone is on silent or they slept through the notification. Acknowledge to stop escalation, or let it keep climbing to the catch-all so nothing ever ends in silence.

See how alerting and escalation policies work

The rota in your own calendar

Every roster publishes a read-only calendar feed, and each person gets one covering their own shifts across every rota they are in. Subscribe from Google Calendar, Apple Calendar, or Outlook and on-call weeks sit alongside everything else that decides whether you book a weekend away. The feed follows overrides, so it shows who is actually covering rather than the raw rotation.

Quiet hours that are actually honoured

Off-duty should mean off-duty. Each person sets their own quiet hours and timezone, and during that window the personal channels aimed at them - mobile push and Telegram - are held back rather than delivered. Critical alerts can be allowed through, so it stays quiet for warnings and loud for outages. Suppressed pages are recorded rather than dropped, so "why did nobody get me" always has an answer.

Maintenance windows for planned work

Planned work produces the same alerts as an outage. Open a maintenance window over the whole account, specific integrations, or specific monitors, and alerts raised inside it are still recorded and still visible - they just stop notifying and stop escalating. The window has an end time, so unlike a paused monitor it closes itself, and the record of what happened during the work survives.

Round-robin for shared triage

Not every alert deserves the pager. A round-robin escalation level hands one alert to one member of a roster and moves on to the next member for the alert after that, so a stream of low-severity work is shared out instead of landing on whoever happens to be on call. The pick is recorded per alert, so follow-ups and repeats reach the same person.

Every channel, and exactly what it does

"The phone rings" hides a lot. Here is what each channel really does, so you can build a ladder you trust and know where it ends.

ChannelWhat happensPlan
Mobile pushThe AlertKick app on iOS and Android. Critical pages use a dedicated channel that bypasses Do Not Disturb on Android; on iOS they arrive as high-priority notifications and follow your Focus settings. Acknowledge or resolve from the notification.Free
SMSSent over Twilio to UK and international numbers. Retried with backoff for up to 15 minutes if a carrier fails, and every message is logged with its delivery status. 5p per message.Professional
WhatsAppTwilio's WhatsApp Business API with an approved alert template, so pages arrive even outside a 24-hour conversation window. Same retry and delivery log as SMS. Not metered.Professional
TelegramA personal ping from the AlertKick bot. Held back during your quiet hours unless the alert is critical and you allow those through.Free
SlackA thread per alert in the channel your team already watches, with trigger, acknowledge, and resolve updates in the thread. Usually the first, visible knock before anyone is paged personally.Free
EmailAny address, no account needed. The paper trail, and the right first step for warnings.Free
WebhookA JSON POST to any URL for bridges, tickets, and lights.Free
Voice callNot available. AlertKick does not place automated phone calls yet; SMS plus critical push is the loudest step today.-

Acknowledge from anywhere

Pages reach Slack, Telegram, WhatsApp, SMS, email, and the mobile app. Acknowledge from the mobile app, the web app, or your AI assistant over MCP, and the escalation stops everywhere at once - nobody further up the chain gets woken for an incident that is already being handled.

Alerts in from whatever you already run

You do not have to change monitoring to fix on-call. Prometheus Alertmanager, Grafana, Datadog, AWS CloudWatch, Azure Monitor, Google Cloud Monitoring, Sentry, Zabbix, Nagios, Icinga 2, and a generic webhook post straight in - 28 sources in total, plus email ingestion for anything older. Every source is deduplicated on its own key, so a repeat increments the open alert instead of paging again, and the source's recovery signal resolves the alert on your behalf. Payloads, dedupe keys, and the recovery rules per source are in the inbound integrations reference.

Moving from PagerDuty or Opsgenie

Paste a read-only API key and AlertKick fetches your users, on-call schedules, and escalation policies, shows exactly what will be created and what cannot map one-to-one, and only then imports. Nothing is rebuilt by hand and the key is never stored. Opsgenie support ends on 5 April 2027; the exit is ready whenever you are. See what imports, exactly, or read the honest comparisons: AlertKick vs PagerDuty and AlertKick vs Opsgenie.

Priced per server, never per teammate

Per-seat on-call tools charge you for every engineer you add to the rotation, which is exactly the wrong incentive - it pushes teams to keep the rota short and burn the same two people out. AlertKick's bill tracks your infrastructure instead. On-call, escalation policies, and alert sources are on every plan including Free, each plan carries a user allowance (2, 5, or 25) rather than a seat price, and adding someone to the rota never changes the invoice. See on-call and paging by plan.

A pager you can check up on

AlertKick's own availability, including the alert ingest endpoints, is published on status.alertkick.com - the same status pages you can run for your own services. Every notification is logged with its delivery status, so "did the page go out" is a lookup, not a guess. AlertKick is not SOC 2 or ISO 27001 certified yet; the data processing agreement and sub-processor list are published, and the code that runs on your servers is open on GitHub.

Common questions

Do you charge per person on the rota?
No. Plans are priced by infrastructure, not seats. Each plan has a user allowance (2 on Free, 5 on Professional, 25 on Business) and no per-seat charge, so adding someone to the rotation never changes the bill.
Which channels can it page someone on, and what does each one actually do?
Mobile push through the AlertKick app on iOS and Android, where critical pages use a channel that bypasses Do Not Disturb on Android; SMS and WhatsApp over Twilio to UK and international numbers, retried with backoff if a carrier fails; Telegram through the AlertKick bot; Slack with a thread per alert; email; and outbound webhooks. Each escalation level picks its own channel. There are no automated voice calls yet.
Can it replace PagerDuty or Opsgenie?
For the rota and the paging, yes: rotations, overrides, escalation policies with per-level channels and timeouts, alerts in from the usual monitoring sources with deduplication, and an importer that brings your schedules and policies across with a read-only key. It does not place voice calls, its integration catalogue is smaller, and it has no enterprise incident workflow such as postmortems or stakeholder updates. Both alternatives pages spell the differences out.
Can one team have more than one rota?
Yes. Create a roster per team or per service - platform, database, application - and point each escalation policy at the roster that fits the alert.
What happens to the rotation when someone takes an override?
Nothing. An override sits on top of the rota for a date range. When it ends, the underlying rotation carries on from where it would have been.
Can I see the rota in Google Calendar or Outlook?
Yes. Every roster publishes a read-only calendar feed, and each person gets one covering their own shifts across every rota. Subscribe to the URL from Google Calendar, Apple Calendar, or Outlook. The feed follows overrides, so it shows who is actually covering.
Will it page me when I am off-duty?
Only if you are on the rota or a policy names you. Each person sets their own quiet hours and timezone, and during that window mobile push and Telegram are held back instead of delivered. Critical alerts can be allowed through, and suppressed pages are recorded rather than dropped.
How do we stop planned work paging the whole team?
Open a maintenance window over the account, specific integrations, or specific monitors. Alerts raised inside it are still recorded and visible, they just do not notify or escalate. The window has an end time, so it closes itself rather than being left off.
Can I use it for on-call without using your monitoring?
Yes. AlertKick accepts alerts from Prometheus Alertmanager, Grafana, Datadog, CloudWatch, Zabbix, Nagios, Icinga2, and a generic webhook. Point your existing alerts at it and use it purely as the on-call and escalation layer.

Your servers, watched by tonight.

Install one agent. Get security monitoring, infrastructure alerts, and on-call management - all included with every host.