Skip to main content

open source

An open-source status page you can self-host

Uptimepage is an AGPL status page with website and uptime monitoring built in. Publish a branded page on your own subdomain, let customers subscribe, and run the whole thing yourself with docker compose or start free on the hosted tier.

A status page, not a toy

Branded public pages on your own domain, a 90-day history strip, incident timelines, scheduled maintenance and subscribers who get every update. All of it is included from the free tier up, because a status page that cannot notify anyone is just a screenshot.

Up with one command

One self-contained binary, Postgres for config and ClickHouse for the check history. docker compose up brings the whole stack up and applies migrations on boot. There is no queue to run, no Kubernetes, and no second service to keep in sync.

Your data stays on your infrastructure

Every check result, incident, subscriber and status page lives in your own environment, in the region you choose, behind your own network. The public page serves straight from your instance, so nothing about your uptime leaves your control.

Monitoring is built in

Incidents open automatically from real HTTP, TCP, DNS, TLS, domain, ping, heartbeat and browser-flow checks and flow straight onto the page. There is no separate monitoring tool to buy, wire up and keep in sync, and no gap where the checks say down but the page says nothing.

Open source you can audit

The uptime bar is measured from checks with a confirmation rule; nobody can set a red day green by hand. Three tests will tell you whether any status page does the same. Add a monitor to a page after it has already had an outage: does the history show it? Unpublish an incident: does the day stay red? Fail one region for one second: does the bar stay calm? Uptimepage passes all three, and because the source is AGPL you can read the code that computes your number rather than take it on faith.

The whole product, one license

There is no enterprise edition holding the good parts hostage. The AGPL binary is the same product the hosted tier runs: same monitoring, same subscribers, same API, same Terraform provider. Start free on the hosted tier and keep the self-hosted exit, or self-host from day one. Nothing needs rewriting to move between them.

Subscribers, done properly

Email subscribers confirm before they receive anything, bounces are handled instead of retried forever, and webhook deliveries are signed so the receiver can verify each update really came from your page. Boring plumbing, until the day someone tries to abuse a subscription form and it is the only thing that matters.

Bring the stack up

git clone https://github.com/uptimepage/uptimepage
cd uptimepage
docker compose up -d

FAQ

Is the status page really open source?
Yes. Uptimepage is AGPL, so you can read the source, run it, and modify it. The hosted tier is $0 a month if you would rather not host it.
Does it monitor, or just publish?
Both. Uptime monitoring is built in, so incidents open automatically from real HTTP, TCP, DNS, TLS, domain, ping, heartbeat and browser-flow checks and appear on the page without a second tool.
Can customers subscribe to updates?
Yes. Visitors opt in with confirmed email or webhook and hear about every incident and maintenance change, with signed payloads they can verify.
How do I self-host it?
Clone the repo and run `docker compose up`. That starts the single binary with Postgres and ClickHouse, runs migrations on boot, and serves the dashboard and public status page.
Where does my data live?
On your own infrastructure. Self-hosting keeps every check result, incident and subscriber in your environment, and the public page serves straight from it.
Can I trust the uptime numbers?
Yes. The uptime bar is measured from your own checks with a confirmation rule, not set by hand and not built from published incidents. A real outage shows even if you never wrote an incident for it.

At a glance

  • License AGPL, self-host
  • Deploy docker compose up
  • Status page branded, subscribers
  • Monitoring built in
  • Stack one binary + Postgres + ClickHouse
  • Uptime bar measured, not published

Links

Start in under 5 minutes.

Start free

features · pricing · notes