Status pages

A branded page on your own domain that tells the difference between slow and down, instead of flattening both into one red banner.

Three states, because there are three

All systems operationalDegraded · 2 of 9 slowOutage · API offline

You set the threshold

Twenty per cent by default. Once that share of components is affected, the banner shows degraded rather than operational.

Slow can count

Turn it on and a check past its response-time threshold, or a server past its CPU, memory, disk or load threshold, shows as degraded.

Down always wins

A real outage is never softened into degraded just because it is a small share of a large fleet.

On your domain, in your colours

Point a CNAME at ServerPal, verify it, and the page serves on your own hostname with a certificate issued and renewed automatically.

  • Accent colour and logo, set separately for light and dark
  • Light or dark by default, or let visitors switch
  • Custom header and footer copy, and custom CSS when a brand demands it
  • Show, hide and reorder the sections on the page
status.acme.com
Degraded · 1 of 4 services affected
WebsiteOperational
APIDegraded
DashboardOperational
Background jobsOperational

Subscribers and incident history

Turn on email updates and visitors subscribe themselves: one message when an incident opens, one when it closes. Double opt-in, with a one-click unsubscribe that needs no account.

  • Per-plan subscriber limits, from 25 on free to 25,000 on Business
  • Ninety days of resolved incidents shown by day
  • Scheduled maintenance windows appear in advance, automatically
  • A read-only JSON endpoint per page on Pro and above
status.acme.com
Degraded · 1 of 4 services affected
WebsiteOperational
APIDegraded
DashboardOperational
Background jobsOperational

A machine-readable copy

Every status page gets a stable JSON endpoint on Pro and above. Read-only, with no key to manage — the data is already public on the page, this just shapes it for machines.

GET /api/status/<slug>/v1

{
  "page":   { "name": "Acme", "url": "https://status.acme.com" },
  "status": "degraded",
  "components": [
    { "name": "API",        "type": "monitor", "status": "degraded" },
    { "name": "db-primary", "type": "server",  "status": "up" }
  ],
  "activeIncidents": [],
  "updatedAt": "2026-03-12T09:14:00Z"
}

Start monitoring in about a minute.

Twenty checks and one server, free and with no card. Upgrade only when you outgrow it.