Import toolThe Statuspage importer copies
components, incident and maintenance history, and consenting email
subscribers into an Observer page in one step. Use it for the steps
below that move data, then follow the rest of this guide.
Model differences to plan for
Steps
1
Inventory the Statuspage account
Pull the list of:
- Components and component groups (one row per metric to define in Observer).
- Past 90 days of incidents (to keep as an archive you can link to from the Observer page).
- Active subscribers, exported as CSV.
- Webhook subscribers, with their endpoint URLs.
2
Stand up the Observer side in parallel
Follow Define your first metric
to install an agent and define a first reporting metric. Build out
the remaining metrics, services, and SLOs without touching the
Statuspage account. The two systems run side-by-side until the
DNS cutover.For each Statuspage component, decide on the source signal:
- A latency or error-rate query already in Prometheus (use the Prometheus probe).
- An HTTP endpoint that returns 200 when the component is healthy (use the HTTP probe).
- A TCP socket, DNS record, or TLS certificate (matching probe type).
3
Build the status page
Open Status pages > New status page in the Observer console. Recreate
the public-facing layout: title, theme, services, metrics, SLO
strip. The page is reachable on
<subdomain>.use.observer immediately, before the DNS
cutover.If the Statuspage account uses customer-scoped views (visible
under different domains per customer), see
Configure customer-scoped pages.4
Bring over incident history
Run the Statuspage importer.
Past incidents and finished maintenances arrive as published history
with their original dates, and nobody is notified.
5
Migrate subscribers
The Statuspage importer moves
active email subscribers when you confirm they agreed to hear from
you, and can ask them to confirm with a single email. Invite anyone else to the new page’s subscribe form: email your
existing subscribers during the migration window with a link to it.
SMS subscribers need to be re-acquired the same way.For webhook destinations you operate yourself, add a destination with the
Generic webhook channel under Alerts, point it at the same endpoint URL, and pick
the events that match what the consumer expects. See
Configure outbound webhooks and the
Webhook payload reference.Slack, Teams, and webhook subscribers outside your team reconnect from the
new page’s subscribe form, the same way email subscribers do. Their
webhook payloads are described in the
subscriber webhook reference.
6
Cut over DNS
When the Observer page renders correctly and all subscribers are
migrated, add the hostname (commonly
status.<domain>) in the
page’s Custom domain section, CNAME it to cname.use.observer,
and switch over once it reads Active. See
Custom domain.Disable updates from the Statuspage API in your alerting and CI
systems; the agent’s metric pushes now drive Observer’s status
verdict. Cancel the Statuspage subscription after one billing
cycle of overlap to allow rollback if the migration surfaces any
gap.API parity matrix
For teams wiring CI / IR automation, this table maps the Statuspage endpoint to its Observer equivalent. See Create incidents via API for end-to-end examples.Common questions
Can both run in parallel during migration? Yes, and that is the recommended path. The agent reports to Observer; the Statuspage API stays in place until DNS cutover. Subscribers can be on either system during overlap. What about historical metric values? Observer’s history starts when the agent first reports; past metric values are not imported. How do I keep on-call alerting unchanged? Recreate each destination on the Alerts page (Slack, Teams, PagerDuty, generic webhook). See Configure outbound webhooks for the generic webhook and its signature scheme.Talk to supportFor large accounts, contact support before you start.

