Incident Management & On-call arenaIncident Management & On-call
Incident management and on-call platforms — alerting, escalation, scheduling, incident response, postmortems, and status pages — judged on alert routing and noise reduction, on-call schedules and overrides, chat-native incident response, timelines, retrospectives and follow-ups, status communication, observability integrations, runbook and workflow automation, reliability analytics, and how completely an AI agent can acknowledge, escalate, and resolve through documented APIs, webhooks, and MCP servers. Opsgenie was excluded — Atlassian's page now redirects straight to a migration notice after its sunset — and Grafana OnCall OSS was excluded because its repository is archived in cold storage; Better Stack is judged here on its incident-management and on-call surface, with uptime monitoring left to a future arena.
54 user stories · 270 judged cells · updated 2026-09-07 · Evidence as of 2026-09-11
Leaderboard — every product ranked by evidenceLeaderboard
| 1 | free-tier vs PagerDuty ↗ | 49/100 | 80/100 | 40/100 | 29/100 | 11/100 | npm 310/wk | 14/36 verified | untested | ||
| 2 | free-tier vs incident.io ↗ | 57/100 | 45/100 | 9/100 | 31/100 | 38/100 | npm 131.6k/wk | 21/38 verified | untested | ||
| 3 | subscription-per-seat vs incident.io ↗ | 39/100 | 57/100 | 0/100 | 7/100 | 30/100 | pypi 1.1k/wk | 8/32 verified | untested | ||
| 4 | free-tier vs incident.io ↗ | 35/100 | 44/100 | 0/100 | 20/100 | 30/100 | npm 3/wk | 7/31 verified | untested | ||
| 5 | free-tier vs incident.io ↗ | 29/100 | 62/100 | 0/100 | 12/100 | 18/100 | npm 225.1k/wk | 6/33 verified | untested |
Best by user type — persona-weighted winnersBest by user type
Per persona, the product with the highest persona-weighted coverage over just that persona's stories — not the same ranking as the overall PA Score leaderboard above.
Best for on-call-engineer
Better Stack
54/100
Runner-up:
Rootly (40/100)
5 on-call-engineer stories scored
Best for engineering-leader
FireHydrant
43/100
Runner-up:
Rootly (40/100)
7 engineering-leader stories scored
Story matrix — every product × every judged storyStory matrix
Agenticness — how well agents can access and operate the productAgenticness
Agent access
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Agenticness — how well agents can access and operate the productPoint an agent at llms.txt or agent-oriented docs | ai-native | fullT⚿ 8/10 | fullT 8/10 | fullT 8/10 | fullT 9/10 | partialT 5/10 |
| Agenticness — how well agents can access and operate the productRun the product headlessly / in CI for automation | ai-native | fullT⚿ 8/10 | fullT 7/10 | partialT 5/10 | partialT⚿ 6/10 | partialT⚿ 5/10 |
| Agenticness — how well agents can access and operate the productPlug MCP servers into this product so it can use their tools | ai-native | none⚿ 0/10 | none⚿ 0/10 | none 0/10 | none⚿ 0/10 | none 0/10 |
| Agenticness — how well agents can access and operate the productConnect an agent via an official MCP server | ai-native | fullT⚿ 9/10 | fullT⚿ 9/10 | fullT 8/10 | fullT⚿ 9/10 | fullC 7/10 |
| Agenticness — how well agents can access and operate the productUse an official CLI | ai-native | none 0/10 | none 0/10 | none 0/10 | none 0/10 | none 0/10 |
| Agenticness — how well agents can access and operate the productDrive the product through a documented public API | ai-native | fullT⚿ 9/10 | fullT 8/10 | fullT 8/10 | fullT⚿ 8/10 | fullT⚿ 8/10 |
| Agenticness — how well agents can access and operate the productIssue scoped/least-privilege API credentials for an agent | ai-native | partialT⚿ 4/10 | partialT⚿ 3/10 | none 0/10 | partialT 5/10 | partialC 3/10 |
| Agenticness — how well agents can access and operate the productBuild against official SDKs | ai-native | fullT⚿ 7/10 | partialT 4/10 | none 0/10 | none 0/10 | none⚿ 0/10 |
| Agenticness — how well agents can access and operate the productSubscribe to events via webhooks | ai-native | fullT 7/10 | fullC 7/10 | partialC 3/10 | none 0/10 | none⚿ 0/10 |
Agentic features
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Agenticness — how well agents can access and operate the productGet AI-generated insights and suggestions from my data inside the product | ai-native | partialC 6/10 | fullC 8/10 | fullC 8/10 | fullC 7/10 | fullC 7/10 |
| Agenticness — how well agents can access and operate the productSet up automations that run autonomously in the background | ai-native | partialX 7/10 | fullC 8/10 | partialC 6/10 | fullC 7/10 | partialC 6/10 |
| Agenticness — how well agents can access and operate the productDelegate tasks to a built-in AI assistant inside the product | ai-native | partialC 6/10 | fullC 8/10 | partialC 5/10 | partialC 5/10 | fullC 7/10 |
| Agenticness — how well agents can access and operate the productOperate the product with natural-language commands | ai-native | fullT⚿ 7/10 | fullT⚿ 8/10 | partialT 6/10 | fullT⚿ 7/10 | fullC 7/10 |
Api quality
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Agenticness — how well agents can access and operate the productExplore an interactive API reference with runnable examples | ai-native | none 0/10 | partialT 4/10 | none 0/10 | none 0/10 | none 0/10 |
| Agenticness — how well agents can access and operate the productDownload a machine-readable API spec (OpenAPI or equivalent) | ai-native | none 0/10 | fullT 9/10 | none 0/10 | none 0/10 | none⚿ 0/10 |
| Agenticness — how well agents can access and operate the productTest against a sandbox environment without touching production data | ai-native | none 0/10 | partialT 3/10 | none 0/10 | none 0/10 | n/a |
| Agenticness — how well agents can access and operate the productRely on versioned APIs with a documented deprecation policy | ai-native | partialX 5/10 | partialT 3/10 | none 0/10 | none 0/10 | none⚿ 0/10 |
Ai incident — stories about ai incident in this arenaAi incident
Agent ops
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Ai incident — stories about ai incident in this arenaMy agent can acknowledge, escalate, and resolve incidents end to end through a documented API or MCP connection — no dashboard in the loop | ai-native | fullT⚿ 8/10 | partialT⚿ 7/10 | partialT 6/10 | partialT 6/10 | partialT⚿ 6/10 |
Ai investigation
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Ai incident — stories about ai incident in this arenaAn AI investigator digs into the probable cause — correlating changes, telemetry, and similar past incidents — before a human even asks | ai-native | partialC 5/10 | fullC 8/10 | partialC 5/10 | partialC 5/10 | fullC 7/10 |
Ai summaries
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Ai incident — stories about ai incident in this arenaAI drafts the postmortem from the incident record — timeline, contributing factors, follow-ups — ready for human review | ai-native | partialC 7/10 | fullC 8/10 | fullC 8/10 | fullC 8/10 | partialC 6/10 |
| Ai incident — stories about ai incident in this arenaAI writes the incident as it happens — live summaries, drafted updates, and scribed call notes — so responders respond instead of typing | ai-native | partialC 7/10 | fullC 7/10 | partialC 6/10 | fullC 7/10 | partialC 5/10 |
Alerting escalation — stories about alerting escalation in this arenaAlerting escalation
Escalation
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Alerting escalation — stories about alerting escalation in this arenaEscalation policies walk unacknowledged pages through multiple steps — delays, fallback responders, and repeat rounds — until someone acknowledges | sre | fullX 8/10 | partialC 6/10 | partialC 5/10 | fullC 8/10 | fullC 9/10 |
Noise reduction
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Alerting escalation — stories about alerting escalation in this arenaDuplicate and related alerts are deduplicated and grouped so one incident pages one human, not fifty | sre | fullT 9/10 | fullC 8/10 | none 0/10 | fullC 8/10 | none 0/10 |
Paging
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Alerting escalation — stories about alerting escalation in this arenaPages reach me over the channels I choose — push, SMS, phone call, and email — with per-channel notification rules | on-call-engineer | partialX 6/10 | none 0/10 | partialC 3/10 | partialC 5/10 | fullC 9/10 |
Routing
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Alerting escalation — stories about alerting escalation in this arenaAlerts from my monitoring tools are ingested through documented sources and routed to the right team by conditions I define | sre | fullT 8/10 | fullC 8/10 | fullC 8/10 | fullC 9/10 | fullT⚿ 8/10 |
Analytics reliability — stories about analytics reliability in this arenaAnalytics reliability
Metrics
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Analytics reliability — stories about analytics reliability in this arenaI get reliability analytics — MTTA/MTTR trends, incident load, on-call health — to see whether we are actually improving | engineering-leader | partialC 4/10 | partialC 6/10 | fullC 7/10 | none 0/10 | none 0/10 |
Automation depth — how much of the product can run unattendedAutomation depth
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Automation depth — how much of the product can run unattendedPerform bulk operations across many items at once | ai-native | partialT⚿ 5/10 | none 0/10 | none 0/10 | none 0/10 | none 0/10 |
| Automation depth — how much of the product can run unattendedDefine rules that trigger actions automatically on events | ai-native | fullT⚿ 8/10 | partialC 5/10 | fullC 8/10 | fullC 8/10 | partialC 7/10 |
| Automation depth — how much of the product can run unattendedSchedule recurring jobs or workflows | ai-native | none 0/10 | none 0/10 | none 0/10 | none 0/10 | none 0/10 |
| Automation depth — how much of the product can run unattendedVersion, review, and roll back my automations | ai-native | none 0/10 | none 0/10 | none 0/10 | none 0/10 | n/a |
Automation runbooks — stories about automation runbooks in this arenaAutomation runbooks
Runbooks
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Automation runbooks — stories about automation runbooks in this arenaRunbooks attach to incidents and their steps can trigger automatically — creating channels, assigning tasks, running diagnostics | sre | partialC 7/10 | none 0/10 | fullC 8/10 | partialC 6/10 | partialC 4/10 |
Workflows
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Automation runbooks — stories about automation runbooks in this arenaA condition-based workflow engine automates the toil — updates, reminders, field changes — triggered by incident events | sre | fullC 7/10 | partialC 6/10 | fullC 7/10 | fullC 8/10 | partialC 6/10 |
Incident response — stories about incident response in this arenaIncident response
Communications
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Incident response — stories about incident response in this arenaInternal stakeholders get structured incident updates they can subscribe to, without joining the war room | engineering-leader | partialC 6/10 | partialC 5/10 | partialC 7/10 | fullC 7/10 | partialC 6/10 |
Coordination
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Incident response — stories about incident response in this arenaIncidents carry defined roles (commander, comms lead) and task checklists so response stays coordinated under pressure | engineering-leader | partialC 4/10 | none 0/10 | fullC 9/10 | none 0/10 | none 0/10 |
Declaration
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Incident response — stories about incident response in this arenaDeclare and run an incident from chat — Slack or Teams — with channels, roles, and updates created for me | on-call-engineer | partialC 3/10 | fullC 7/10 | partialC 6/10 | fullC 8/10 | partialC 6/10 |
Timeline
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Incident response — stories about incident response in this arenaThe incident timeline is captured automatically — alerts, actions, and chat decisions — and I can edit or annotate it afterwards | sre | partialC 5/10 | fullC 8/10 | partialC 6/10 | fullC 8/10 | partialC 5/10 |
Integrations observability — stories about integrations observability in this arenaIntegrations observability
Alert sources
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Integrations observability — stories about integrations observability in this arenaFirst-party integrations cover my observability stack — Datadog, Grafana, Prometheus, CloudWatch, Sentry — with documented setup | sre | none 0/10 | none 0/10 | none 0/10 | none 0/10 | partialC 6/10 |
Workflow tools
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Integrations observability — stories about integrations observability in this arenaThe platform integrates with the tools around the incident — Jira, Slack, Teams, Zoom, GitHub — so state flows both ways | sre | partialC 5/10 | partialC 6/10 | partialC 7/10 | partialC 6/10 | partialC 4/10 |
Mobile experience — stories about mobile experience in this arenaMobile experience
Mobile
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Mobile experience — stories about mobile experience in this arenaA full mobile app lets me acknowledge, escalate, and resolve from my phone at 3am | on-call-engineer | partialX 6/10 | none 0/10 | none 0/10 | partialC 3/10 | partialC 5/10 |
On call scheduling — stories about on call scheduling in this arenaOn call scheduling
Quality of life
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| On call scheduling — stories about on call scheduling in this arenaMy shifts sync to my personal calendar via a feed so I always know when I'm on the hook | on-call-engineer | none 0/10 | none 0/10 | none 0/10 | none 0/10 | partialC 6/10 |
Schedules
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| On call scheduling — stories about on call scheduling in this arenaBuild on-call schedules with rotations, layers, time zones, and round-robin coverage that match how my teams actually work | sre | partialX 4/10 | partialC 6/10 | partialC 6/10 | fullC 8/10 | partialC 7/10 |
| On call scheduling — stories about on call scheduling in this arenaTake an override, swap a shift, or request coverage without an admin rebuilding the schedule | on-call-engineer | partialX 3/10 | none 0/10 | none 0/10 | partialC 5/10 | fullC 8/10 |
Openness — open source, data portability, and self-hosting storiesOpenness
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Openness — open source, data portability, and self-hosting storiesDo everything through the API that I can do in the UI | ai-native | partialT⚿ 7/10 | partialT 6/10 | fullT 7/10 | partialT 6/10 | partialT⚿ 5/10 |
| Openness — open source, data portability, and self-hosting storiesExport all of my data in open formats and leave | ai-native | partialC 4/10 | partialT 4/10 | none 0/10 | none 0/10 | none⚿ 0/10 |
| Openness — open source, data portability, and self-hosting storiesRead the product's source under an open license | ai-native | n/a | n/a | none 0/10 | none 0/10 | n/a |
| Openness — open source, data portability, and self-hosting storiesSelf-host the core product | ai-native | n/a | n/a | n/a | none 0/10 | n/a |
Postmortems learning — stories about postmortems learning in this arenaPostmortems learning
Follow ups
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Postmortems learning — stories about postmortems learning in this arenaFollow-up actions from incidents are tracked to completion and sync to our issue tracker | engineering-leader | partialC 5/10 | partialC 5/10 | partialC 5/10 | partialC 5/10 | partialC 5/10 |
Postmortems
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Postmortems learning — stories about postmortems learning in this arenaPostmortems follow a real workflow — templates, drafting from the timeline, review, and publication | engineering-leader | partialC 5/10 | partialC 7/10 | partialC 7/10 | fullC 8/10 | partialC 4/10 |
Privacy posture — data-handling and privacy storiesPrivacy posture
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Privacy posture — data-handling and privacy storiesChoose where my data is stored (region/residency) | ai-native | none 0/10 | none 0/10 | none 0/10 | none 0/10 | none 0/10 |
| Privacy posture — data-handling and privacy storiesPrevent my data from being used to train AI models | ai-native | none 0/10 | none 0/10 | partialC 3/10 | none 0/10 | none 0/10 |
| Privacy posture — data-handling and privacy storiesControl data retention and deletion | ai-native | none 0/10 | none 0/10 | none 0/10 | none 0/10 | none 0/10 |
| Privacy posture — data-handling and privacy storiesOpt out of telemetry and usage tracking | ai-native | none 0/10 | none 0/10 | none 0/10 | none 0/10 | none 0/10 |
Status communication — stories about status communication in this arenaStatus communication
Status pages
| Story | Persona | |||||
|---|---|---|---|---|---|---|
| Status communication — stories about status communication in this arenaRun private or internal status pages with access control for customer-specific or employee-only audiences | engineering-leader | none 0/10 | partialC 6/10 | none 0/10 | partialC 6/10 | fullC 7/10 |
| Status communication — stories about status communication in this arenaPublish a hosted public status page — custom domain, subscriber notifications — driven from incident state | engineering-leader | partialC 5/10 | partialC 7/10 | partialC 5/10 | partialC 6/10 | fullC 9/10 |
Adjacent arenas — categories often shopped togetherAdjacent arenas
Shopping this category often means shopping these too.