Skip to main content
A status page gives your users a single, trusted place to check whether your services are up, see active incidents, and follow along during maintenance. PulseGuard generates a fully hosted, real-time status page for each workspace — no additional infrastructure required. You can make it look like an extension of your own brand, restrict access with a password, and let users subscribe for instant email alerts whenever something changes.

Key features

Custom Domains

Serve your status page from status.yourcompany.com using a simple CNAME record. SSL is provisioned automatically.

Password Protection

Optionally require a password so only your team or trusted partners can view the page.

SEO Control

Toggle search-engine indexing on or off depending on whether you want the page to be publicly discoverable.

Custom Branding

Inject custom CSS and JavaScript, upload a favicon, and provide an OG image for rich social previews.

Multi-language Support

Override page copy in any supported locale. PulseGuard ships with translations for English, Spanish, French, and German.

Subscriber Notifications

Visitors subscribe via email with verified opt-in. They receive alerts for incidents, maintenance, and recovery.

Manual Overrides

Override the displayed status for any given day without creating a formal maintenance window or incident.

Embeddable Widgets

Drop a live status badge or animated widget onto any external website with a single line of code.

Create a status page

Navigate to Dashboard → Pages → New Page to open the page creation wizard. Fill in the required fields described below, then click Create.
Toggle Allow search engine indexing to control whether the page appears in Google and other search results. Disable this for internal or partner-facing pages.

Add monitors to a status page

After creating your page, go to Pages → your page → Monitors and click Add Monitor. You can:
  • Show or hide individual monitors — only the monitors you add appear on the public page.
  • Set a display name that differs from the internal monitor name.
  • Assign a group to organise related monitors under a collapsible section (e.g., API, Database, CDN).
  • Reorder monitors by dragging them into the position you want.
Monitors must already exist in your account before you can add them to a status page. Create monitors first via Dashboard → Monitors → New Monitor.

Configure display options

Open Pages → your page → Settings → Display to control what information visitors see:
  • Uptime percentage — show or hide the rolling uptime figure (calculated over 30, 60, or 90 days) next to each monitor.
  • Latency chart — display a response-time sparkline for each monitor.
  • Incident history — list past incidents with timestamps and resolution notes below the main status grid.

Feeds

PulseGuard exposes RSS and Atom feeds for every status page so visitors can subscribe using any feed reader.

Status badge

Embed a live SVG badge in any Markdown file, README, or webpage. The badge refreshes every 10 seconds and reflects the current overall status of your page.
You can customise the badge appearance with query parameters: Example with all options:
The badge returns one of three status labels:

Embeddable widget

The widget renders a live, animated status badge inside your own website — no iframes, no external CSS conflicts. Enable the widget in Pages → your page → Settings → Widget, then paste the snippet below where you want the badge to appear.
The script fetches the current status from GET /api/widget/:slug/status and injects the rendered badge into the #pulseguard-status element. It automatically refreshes every 60 seconds.
Configure the widget’s background colour, text colour, border radius, and status message labels from the Widget settings tab in the dashboard — no code changes required.

Widget CORS configuration

By default, the widget API only responds to requests from origins you explicitly allow. Go to Pages → your page → Settings → Widget → Allowed Domains and enter a comma-separated list of domains (e.g., yourcompany.com, app.yourcompany.com). Use * to allow any origin.