Use when it fits Proposed · PagerDuty · On-call paging

PagerDuty

On-call paging for the client's own team. It calls, waits for an acknowledgement, escalates, and turns fifty events from one fire into one incident.

Proposed verdict: drawn from research, not yet confirmed by Nic.

I haven't run PagerDuty in production. This is the pick from comparing six on-call services for alerts that must reach a person within a minute.

The comparison came down to three things: phone calls to Australian numbers with acknowledgement by keypress, an API that merges duplicate events (dedup_key), and a track record long enough to trust at 2 am. PagerDuty has all three, plus official Terraform and Pulumi providers. At about $250 a month for ten people, the price is a rounding error next to a missed alarm.

The alternative is incident.io: Australia fully supported, a published 99.99% on-call commitment, about $200 a month for ten, and the better fit for a team that lives in Slack. The others fell away on one point each: Better Stack's API has no deduplication key, Rootly takes 50 alerts a minute by default, Jira Service Management only calls on its Premium plan, and Opsgenie is shutting down.

Its limit is who it calls: seats, not the public. When the people to wake are site managers or customers, the calls go through Twilio and the escalation lives in your code.

Use it when

  • The client's own operations team (a handful to about 15 people) must be phoned at any hour, with rotas and escalation.
  • One incident sends many events (a fire trips several detectors): the Events API's dedup_key merges them into one incident.
  • Acknowledgement has to be on record: who acknowledged, how, and when.

Don't use it when

  • Calling people who aren't seats (site managers, the client's customers): PagerDuty only pages users; stakeholders get status updates, not calls. Use Twilio.
  • Data must stay in Australia: PagerDuty runs in the US or the EU only.

Pricing

Professional: $21 per user a month billed annually, $25 monthly, so about $210–250 a month for 10 responders. Calls and SMS to Australia are included on paid plans. The free plan stops at 5 users and 100 calls or texts a month.

Gotchas, with fixes

Gotcha: Without a dedup_key, every event opens its own incident: one fire, fifty calls.

Fix: Set dedup_key to what makes the incident one (the site and the hazard, for example), and resolve with the same key.

Gotcha: Bursts of events can get HTTP 429 from the Events API.

Fix: Send from your own alarm queue, so a throttled event is retried with backoff instead of lost.

Gotcha: SMS replies aren't supported for Australian numbers.

Fix: Acknowledge by pressing a key on the call, or in the app.

Gotcha: Inheriting Opsgenie? Atlassian stopped selling it in June 2025 and shuts it down on 5 April 2027.

Fix: Plan the move now, to PagerDuty or to Atlassian's replacement.

Provisioning

Official Pulumi package · Official Terraform provider

@pulumi/pagerduty: services, escalation policies, schedules and integrations, kept next to the rest of the stack.

Instead, consider

  • Twilio The people called aren't seats, or the client wants the escalation logic in its own code.

Worked examples

Where it fits

Sources

Last reviewed by Nicolas Dao

Want this stack in your AWS account?

Cloudless Labs is a Sydney consultancy. We migrate on-premises systems to AWS, build serverless apps on this stack, and coach teams to ship with Claude Code and Codex.

Contact Us

For general inquiries, please contact us at:

For e-learning capabilities, please contact: