Skip to content
Feature guide, Webhooks

Uptime monitor with webhook notifications

UptimePad sends a signed JSON webhook the moment any monitor goes down or recovers, with incident context and affected regions in the payload. Webhooks unlock on Pro and above. Below: how UptimePad compares to UptimeRobot, Better Stack, StatusCake, and Pingdom on webhook capabilities.

Last updated
Webhook capabilities, uptime monitoring tools, May 2026
ToolWebhooks on free tierCustom payloadPer-monitor URLSigned (HMAC)Auto retries
UptimePad
Pro: signed webhooks with regional context
No, Pro+5 attempts, exponential
UptimeRobot
Free tier · 50 monitors
Yes--3 attempts
Better Stack
Paid only
No (paid)5 attempts
StatusCake
Paid only
No (paid)--3 attempts
Pingdom
Enterprise pricing
No3 attempts

Webhook payload format

UptimePad sends a single POST request per state change with a stable JSON schema. Every payload includes the monitor identity, the incident timeline position (started, ongoing, recovered), affected regions, and the HTTP result that triggered the incident.

{
  "event": "monitor.down",
  "monitor": {
    "id": "mon_4a7c8e",
    "name": "checkout.acme.com",
    "url": "https://checkout.acme.com/health"
  },
  "incident": {
    "id": "inc_91a2",
    "started_at": "2026-05-03T14:22:18Z",
    "regions_affected": ["North America", "Europe"],
    "diagnostic_summary": "5xx response, 502 Bad Gateway"
  },
  "delivery": {
    "id": "wh_8f3d1",
    "attempt": 1,
    "signature": "sha256=…"
  }
}

The delivery.signature header is an HMAC-SHA256 signature of the body, signed with your endpoint secret. Verify it before trusting the payload. The signing secret is per-endpoint, not per-account, so you can rotate one without breaking the others.

Why per-monitor webhook URLs matter

A common mistake at scale: pointing every monitor at the same webhook URL and parsing monitor.id server-side. That works until a noisy monitor drowns out a critical one in your queue. UptimePad lets you set a different webhook URL per monitor, so checkout outages can hit your PagerDuty rotation while marketing-site flaps go to a low-priority Slack channel. UptimeRobot and StatusCake both make you do this server-side; only UptimePad, Better Stack, and Pingdom support per-monitor URLs.

Retry behavior, dead-letter handling

When your endpoint returns non-2xx (or times out at 30s), UptimePad retries up to 5 times with exponential backoff (5s, 30s, 2m, 10m, 1h). After the fifth failure, the delivery is parked in the dead-letter queue and a fallback email fires to your admin email, so you find out about the broken webhook endpoint, not just the original outage. Most cheap monitors give up after 3 attempts and never tell you they tried.

FAQ

Does UptimePad sign webhook payloads?+

Yes. Every webhook includes an HMAC-SHA256 signature in the X-UptimePad-Signature header, computed over the raw request body using a per-endpoint secret you control. Rotate secrets per endpoint without touching the others.

Can I send different webhooks for different monitors?+

Yes. Each monitor can have its own webhook URL, or share a notification channel that fans out to multiple URLs. Common pattern: critical monitors go to PagerDuty, informational monitors go to a low-priority Slack channel.

What happens if my webhook endpoint is down when a monitor fails?+

UptimePad retries up to 5 times with exponential backoff (5s, 30s, 2m, 10m, 1h). After the fifth failed attempt, the delivery is parked in a dead-letter queue and a fallback email is sent to your admin email so you know the endpoint itself is broken.

Are webhooks included on the free tier?+

No. Free uses email alerts only. Signed webhooks unlock on Pro and above, which keeps the free tier generous without turning it into a free alert fan-out service.

How fast does UptimePad send the webhook after a state change?+

Within 2 seconds of a confirmed state change. State changes require agreement from at least 2 of 3 probe regions to avoid false-positive alert storms; once that quorum is reached, the webhook fires immediately.

Can I test the webhook payload before relying on it in production?+

Yes. The dashboard has a "Send test payload" button on every monitor. Pick the event (down, recovery, ssl warning) and the payload fires immediately to your endpoint with the exact same shape you would receive in production.

Wire your incidents into the rest of your stack

Signed webhook delivery on Pro and above, with regional incident context included.

Start monitoring free