Status Page Setup

Create public status pages to communicate service health to your users.

Overview#

Status pages give your users a single URL to check the health of your services. They display real-time monitor status, uptime history, active incidents, and scheduled maintenance -- all without requiring authentication.

Creating a Status Page#

Navigate to Monitoring > Status Pages and click Create Status Page.

Basic Configuration#

| Setting | Description | Example | |---------|-------------|---------| | Name | Public-facing title | Acme Inc Status | | Slug | URL path (unique) | acme-status | | Description | Short tagline | Service health for Acme Inc | | Custom Domain | Optional CNAME | status.acme.com |

Your status page is available at https://youranalytics.com/status/acme-status (or your custom domain).

Adding Monitors#

Select which uptime monitors appear on the status page:

  1. Click Add Monitors on the status page editor
  2. Check the monitors you want to display
  3. Optionally rename monitors for public display (e.g., rename "prod-api-health" to "API")
  4. Drag to reorder -- the order on the editor matches the public page
  5. Group monitors into sections (e.g., "Core Services", "Integrations", "Background Jobs")

Monitor Display#

Each monitor on the status page shows:

  • Current status -- Operational, Degraded Performance, Partial Outage, or Major Outage
  • 90-day uptime bar -- green/yellow/red segments showing daily availability
  • Uptime percentage -- overall availability for the last 90 days
  • Response time -- average latency over the last 24 hours

Custom Branding#

Customize the look of your status page to match your brand.

Logo and Colors#

| Setting | Description | |---------|-------------| | Logo | Upload your company logo (PNG, SVG, max 512KB) | | Favicon | Custom favicon for the status page tab | | Primary Color | Used for headers, links, and operational badges | | Background Color | Page background (light or dark) |

Theme Options#

  • Light mode -- white background, dark text (default)
  • Dark mode -- dark background, light text
  • Auto -- follows visitor's system preference

Custom CSS#

For advanced branding, inject custom CSS:

/* Custom CSS (injected into status page) */
.status-header {
  font-family: 'Inter', sans-serif;
}
.monitor-group-title {
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

Subscriber Notifications#

Let your users subscribe to status updates so they are notified automatically when incidents occur or maintenance is scheduled.

Email Subscriptions#

  1. Enable Email Subscriptions in the status page settings
  2. A "Subscribe" button appears on the public page
  3. Visitors enter their email and confirm via a verification link
  4. Subscribers receive emails when:
    • A new incident is created
    • An incident update is posted
    • An incident is resolved
    • A maintenance window is scheduled
    • A maintenance window begins or ends

RSS Feed#

Every status page has an auto-generated RSS/Atom feed at:

https://youranalytics.com/status/acme-status/feed.xml

Users can subscribe in any RSS reader (Feedly, Slack RSS, etc.) to get incident and maintenance updates.

Webhook Subscriptions#

Programmatically subscribe to status changes via webhook:

POST https://youranalytics.com/api/status-pages/{slug}/webhooks
Content-Type: application/json

{
  "url": "https://your-app.com/status-webhook",
  "events": ["incident.created", "incident.updated", "incident.resolved", "maintenance.scheduled"]
}

Incident Communication#

Status pages are the primary channel for incident communication. When you create an incident (see Incidents), it appears prominently at the top of the status page with:

  • Current status and impact level
  • Timeline of updates
  • Affected monitors highlighted in yellow/orange/red

Resolved incidents move to the Incident History section at the bottom of the page.

Maintenance Windows#

Schedule maintenance windows to inform users of planned downtime:

  1. Click Schedule Maintenance on the status page
  2. Set the start time, end time, and affected monitors
  3. Add a description of what is being maintained
  4. Subscribers are notified when the window is scheduled
  5. When the maintenance window begins, affected monitors show "Under Maintenance" instead of "Down"
  6. When the window ends, monitors return to their actual status

Auto-Maintenance#

Link maintenance windows to your deploy pipeline. Send a POST request to mark maintenance as started or completed:

POST /api/status-pages/{slug}/maintenance
X-API-Key: ja_sk_...

{
  "action": "start",
  "maintenanceId": "maint_abc123"
}

Embeddable Status Badges#

Add a live status badge to your README, docs, or website.

Markdown Badge#

![Status](https://youranalytics.com/status/acme-status/badge.svg)

HTML Badge#

<a href="https://youranalytics.com/status/acme-status">
  <img src="https://youranalytics.com/status/acme-status/badge.svg" alt="Service Status" />
</a>

Badge Styles#

Append query parameters to customize the badge:

| Parameter | Options | Default | |-----------|---------|---------| | style | flat, flat-square, for-the-badge | flat | | label | Custom left-side text | status |

Example: badge.svg?style=for-the-badge&label=Acme%20API

Individual Monitor Badges#

Get a badge for a specific monitor:

https://youranalytics.com/status/acme-status/badge.svg?monitor=api

Status Page API#

Query status page data programmatically:

GET /api/status-pages/{slug}/summary

Response:
{
  "status": "operational",
  "monitors": [...],
  "activeIncidents": [...],
  "scheduledMaintenance": [...]
}

Best Practices#

  1. Keep it honest -- show all critical services, not just the ones that rarely go down
  2. Update frequently during incidents -- silence is worse than saying "still investigating"
  3. Use descriptive monitor names -- "Payment Processing" is better than "stripe-webhook-handler"
  4. Group logically -- separate core services from integrations and background jobs
  5. Enable email subscriptions -- proactive communication reduces support tickets by up to 40%
  6. Schedule maintenance -- planned downtime with advance notice builds trust