status pages

A status page is a public, read-only view of your service health, hosted by pngr. It's monitoring-native: everything a visitor sees is derived from your monitors at read time. There are no hand-authored incident write-ups and no maintenance windows to maintain — when something breaks, the page shows what the monitor saw (the signal and how long it's lasted), and it clears itself the moment checks recover.

components and groups

  • A component is exactly one monitor. Its state, uptime, and latency on the page come straight from that monitor.
  • Components are organized into ordered groups (e.g. api · public, infrastructure). Order is whatever you set in the editor.
  • Each component can have an optional display name override and description — handy when the monitor's internal name isn't what you want the public to see.

state vocabulary

Component states map to monitor states, and the page rolls them up into one overall banner:

monitorcomponentoverall page
upoperational
degradeddegradedany degraded → partial outage
downdownany down → major outage
pausedpaused(ignored)
never checkedpending(ignored)

what's on the page

  • Affected now — any non-operational component, with the signal that tripped it and how long it's been down. Auto-clears on recovery.
  • Uptime grid — one cell per day, as wide as your plan's check-history retention (7 days on Free, 30 on Pro, 90 on Team). Green = ok, amber = degraded, red = down, grey = no data.
  • Response time — per-component 24h latency, when there's data.
  • Past downtime — logged automatically when a monitor recovers (date, component, duration, signal). No write-ups to maintain.
  • Subscribe — live RSS and Atom feeds.
note

Visitor subscriptions over email / Slack / webhook / SMS, custom domains, manual incident posts, and scheduled-maintenance windows are not part of v1. The feeds (RSS/Atom) are the supported subscribe channels for now.

creating one

Status pages are managed under settings → status pages (owners and admins only). Create a page, then:

  1. Set a slug — this becomes the public URL (status.pngr.dev/<slug>). Lowercase letters, digits, and hyphens; globally unique.
  2. Set the title, and optionally a description, accent color, and logo URL for branding.
  3. Add groups, and pick monitors into each as components. Reorder groups and components with the up/down controls.
  4. Save — the editor sends the whole tree at once, so reordering is just reordering the list.

Use view public page ↗ from the editor to see the live result.

plan limits

The number of status pages you can publish is capped by plan: Free 0, Pro 1, Team 10. Creating one past your cap opens the upgrade prompt — see plans & billing.