Self-Hosted Alternatives to PagerDuty
Why Replace PagerDuty?
PagerDuty’s Professional plan costs $41/user/month. A 10-person on-call team pays $4,920/year. The Business plan at $59/user/month costs $7,080/year for the same team. PagerDuty’s pricing makes it one of the most expensive SaaS tools in a typical DevOps stack.
Updated February 2026: Verified with latest Docker images and configurations.
Key concerns:
| Issue | Impact |
|---|---|
| Per-user pricing | $41-59/user/month for on-call management |
| Feature gating | AIOps, event orchestration, and analytics locked behind higher tiers |
| Data sovereignty | Incident data and runbooks stored on PagerDuty’s infrastructure |
| Alert fatigue tools | Advanced noise reduction requires Business plan ($59/user) |
| Vendor lock-in | Integration ecosystem creates dependency |
| Minimum seats | Some plans require minimum user counts |
Best Alternatives
Grafana OnCall — Best Overall Replacement
Grafana OnCall (formerly Amixr) is a free, open-source incident response and on-call management tool. It includes on-call scheduling, escalation policies, alert routing, and multi-channel notifications (Slack, Teams, SMS, phone calls, push notifications). It integrates natively with Grafana’s alerting stack.
Why it wins: Full on-call management with escalation chains, schedule overrides, and integration with monitoring tools. The closest feature-parity replacement for PagerDuty.
| Feature | PagerDuty (Professional) | Grafana OnCall (Self-Hosted) |
|---|---|---|
| Cost (10 users) | $4,920/year | $0 |
| On-call schedules | Yes | Yes |
| Escalation policies | Yes | Yes |
| Alert routing | Yes | Yes |
| SMS/Phone alerts | Yes (included) | Yes (Twilio integration, pay per use) |
| Slack integration | Yes | Yes |
| Status pages | Yes (higher tier) | Separate tool (Upptime, Gatus) |
| Mobile app | Yes | Yes |
| Incident timelines | Yes | Yes |
ntfy + Uptime Kuma — Best Lightweight Stack
For smaller teams that don’t need full on-call management, combining ntfy (push notifications) with Uptime Kuma (monitoring and alerting) provides PagerDuty’s core functionality — detecting outages and alerting the team.
Why it fits: If you use PagerDuty primarily for “something is down, notify the team,” this combination covers that use case at zero cost with minimal complexity. ntfy provides mobile push notifications, and Uptime Kuma handles monitoring with configurable alert thresholds.
| Component | Purpose |
|---|---|
| Uptime Kuma | HTTP/TCP/DNS monitoring, status pages, alert triggers |
| ntfy | Push notifications to mobile devices and desktops |
| Optional: Grafana | Dashboards and advanced alerting rules |
[Read our ntfy guide: How to Self-Host ntfy] [Read our Uptime Kuma guide: How to Self-Host Uptime Kuma]
Gotify — Best for Simple Alerting
Gotify is a self-hosted notification server with a REST API. It’s simpler than ntfy and focuses on server-to-client push notifications. Pair it with any monitoring tool that supports webhooks.
[Read our full guide: How to Self-Host Gotify]
Migration Guide
Recreating PagerDuty Workflows
On-call schedules: In Grafana OnCall, create schedules with primary and secondary rotations. Set rotation intervals, handoff times, and time zone-aware shifts. Override capabilities allow ad-hoc schedule changes.
Escalation policies: Define escalation chains in Grafana OnCall: Alert → Primary on-call (wait 5 min) → Secondary on-call (wait 10 min) → Entire team. Multiple notification methods per step.
Integration migration: PagerDuty integrations (Datadog, AWS CloudWatch, custom webhooks) need to be reconfigured to point to Grafana OnCall’s webhook endpoints or ntfy’s API.
What transfers: Conceptual workflows (schedules, escalation logic). What doesn’t transfer: Historical incident data, analytics, configured integrations (must be reconfigured), mobile app preferences.
Cost Comparison
| PagerDuty Professional | Grafana OnCall (Self-Hosted) | ntfy + Uptime Kuma | |
|---|---|---|---|
| Monthly cost (5 users) | $205/month | ~$10-20/month (server) | ~$5-12/month (server) |
| Monthly cost (20 users) | $820/month | ~$10-20/month | ~$5-12/month |
| Annual cost (20 users) | $9,840/year | ~$120-240/year | ~$60-144/year |
| SMS/Phone alerts | Included | ~$0.01-0.05/alert (Twilio) | ~$0.01/alert (Twilio + ntfy) |
| On-call schedules | Yes | Yes | Manual |
| Escalation chains | Yes | Yes | Manual |
What You Give Up
- Reliability SLA — PagerDuty guarantees 99.99% uptime for alert delivery. Self-hosted alerting is only as reliable as your infrastructure — if your server is down, your alerts don’t fire
- Phone/SMS delivery infrastructure — PagerDuty handles SMS and phone call delivery globally. Self-hosted solutions require configuring Twilio or similar providers
- AIOps noise reduction — PagerDuty’s intelligent alert grouping and suppression reduces alert fatigue. Self-hosted alternatives require manual alert tuning
- Stakeholder communication — PagerDuty’s status updates, business impact tracking, and stakeholder notifications. Self-hosted requires separate tools
- Compliance and audit trails — PagerDuty maintains SOC 2 compliant incident audit logs. Self-hosted audit logging is your responsibility
- Mobile app quality — PagerDuty’s mobile app is polished with reliable push notifications. Grafana OnCall’s mobile app is functional but less mature
Frequently Asked Questions
Can Grafana OnCall replace PagerDuty for a 20+ person team?
Yes. Grafana OnCall scales to large teams with multiple on-call rotations, escalation chains, team-based alert routing, and override management. It handles the same on-call complexity PagerDuty does. The main gap is PagerDuty’s AIOps (intelligent noise reduction) — Grafana OnCall requires manual alert tuning to reduce noise.
How do I get phone call alerts without PagerDuty?
Grafana OnCall integrates with Twilio for phone and SMS alerts. Set up a Twilio account ($1.00 minimum, then ~$0.01-0.05 per SMS, $0.03-0.15 per call), configure the API credentials in Grafana OnCall, and phone alerts work the same way. Monthly cost for a typical team: $5-15 vs. PagerDuty’s $41/user/month.
What replaces PagerDuty’s mobile app?
Grafana OnCall has mobile apps for iOS and Android that show on-call schedules, incident details, and allow acknowledgment/resolution. The apps support push notifications for alerts. ntfy also provides reliable mobile push notifications and works with any monitoring tool that supports webhooks.
Can I integrate self-hosted alerting with Datadog, CloudWatch, or Prometheus?
Yes. Grafana OnCall accepts webhooks from any monitoring tool — including Datadog, AWS CloudWatch, Prometheus Alertmanager, Zabbix, and Uptime Kuma. Configure webhook integrations in each tool to point at Grafana OnCall’s API endpoint. Alert payloads are parsed automatically for most popular tools.
How reliable is self-hosted alerting compared to PagerDuty?
PagerDuty guarantees 99.99% uptime for alert delivery. Self-hosted alerting depends on your infrastructure. Mitigate this by: (1) running Grafana OnCall on a separate server from your production stack, (2) using an external healthcheck service to monitor your monitoring, (3) configuring SMS alerts via Twilio as a fallback channel. Most teams achieve 99.9%+ with these measures.
What about PagerDuty’s incident analytics and postmortem features?
Grafana OnCall provides basic incident timelines. For full postmortem workflows, combine it with a wiki (BookStack, Outline) for writing postmortems and Grafana for metric analysis during incident review. PagerDuty’s integrated analytics are more convenient, but separate tools offer equivalent capability.
Can ntfy + Uptime Kuma handle simple on-call for a small team?
For teams under 5 people with simple alerting needs (something breaks → notify the team), this stack works well. Uptime Kuma detects outages, ntfy delivers mobile push notifications. The gap: no on-call scheduling, no escalation chains, no automatic re-routing. If you need “alert person A, wait 10 minutes, then alert person B,” use Grafana OnCall instead.
Related
Get self-hosting tips in your inbox
Get the Docker Compose configs, hardware picks, and setup shortcuts we don't put in articles. Weekly. No spam.
Comments