Six open-source tools watch your services from your own server and publish their state on a status page, but they settle different questions. Uptime Kuma is configured entirely in its web interface and runs as a single process. Gatus is declared in YAML, with no admin screen. Checkmate adds an agent to measure the servers themselves, and OneUptime adds on-call, logs and APM on top, with 16 GB of RAM recommended. Cachet only does the status page: its published version checks nothing. CheckCle hasn't shipped a release since September 2025 and itself advises against production use before 2.0.
Probing from outside or measuring servers from inside
All of them except Cachet probe services from outside at a set interval: HTTP, TCP, ping or DNS checks, plus certificate expiry tracking. Uptime Kuma adds checks for databases, message queues (MQTT, Kafka, RabbitMQ), SNMP and Docker, and a Push monitor for jobs that report in on their own. Gatus also covers UDP, SSH and STARTTLS, and accepts states pushed by external services.
Measuring a machine's CPU, memory or disk takes an agent installed on it. Checkmate ships its own, Capture: it serves an API on port 59232 that Checkmate polls, with a shared secret over plain HTTP, and HTTPS means adding a Caddy in front. CheckCle also has a server agent, for Linux and in beta for Windows, and OneUptime has Server/Host, Kubernetes and Proxmox monitors. Uptime Kuma and Gatus install nothing on the machines they watch. Uptime Kuma can follow containers through the Docker socket, but that socket gives full control of the daemon, and its wiki then advises against exposing the instance to the internet.
What each tool needs to run
Read from the repositories and documentation on 6 October 2026.
| Tool | Licence | What you run | Checks | Status page | Latest release |
|---|---|---|---|---|---|
| Uptime Kuma | MIT | Node.js or Docker; SQLite or MariaDB, on local disk | network, web, databases, Docker, push | several per instance, no subscribers | 2.5.5, 16 Sep 2026 |
| Gatus | Apache-2.0 | one container; results in memory, SQLite or PostgreSQL optional | network, web, SSH, TLS, push | the dashboard itself, can sit behind OIDC | 5.37.0, 24 Sep 2026 |
| Checkmate | AGPL-3.0 | Node.js and MongoDB; Capture agent on each monitored server | network, web, Docker, hardware via the agent | public, themes and CSS | 3.12.0, 13 Sep 2026 |
| CheckCle | MIT | one container (PocketBase and SQLite); server agent | HTTP, ping, TCP, DNS, metrics via the agent | public, 90-day history | 1.6.0, 13 Sep 2025 |
| Cachet | BSD-3-Clause for 2.4.1, custom licence for v3 | PHP, an SQL database, a cron job | none in the published version | incidents, maintenance, email subscribers | 2.4.1, 7 Nov 2023; v3 unreleased |
| OneUptime | Apache-2.0, except the ee/ directory | PostgreSQL, ClickHouse, Valkey and four services; 16 GB of RAM recommended | 35 types, including browser, Kubernetes, SNMP | public or private, custom domain, subscribers | 14.0.14, 4 Oct 2026 |
Uptime Kuma recommends SQLite for small deployments and MariaDB beyond that, and doesn't support PostgreSQL. Its maintainers are blunt about it: it isn't a distributed system, and high availability isn't planned. Gatus keeps its results in memory by default, so a restart wipes them, and without file storage, reloading the configuration amounts to a restart. CheckCle fits in one container, and backing it up comes down to its pb_data folder. OneUptime sits at the other end: its docs recommend 16 GB of RAM, 8 cores and 400 GB of disk, and steer production installs away from Docker Compose toward Kubernetes.
On releases, Checkmate shipped ten minor versions in 2026, and OneUptime four major versions between June and September; its docs forbid skipping one and advise updating at least weekly. CheckCle hasn't published anything since 1.6.0, and a security fix that closes PocketBase collections readable without authentication only exists on its development branch. Cachet is still on 2.4.1 from November 2023, which requires PHP 7 and Laravel 5.7; its version 3, announced in August 2023, has no release yet, and its docs keep it for development use.
The status page, next to the monitoring or apart from it
Uptime Kuma's maintainers advise against hosting the status page alongside what it monitors, and Cachet's docs ask for a separate server, provider or region for it, with its own database.
Cachet is built for that role: components with six statuses, an incident timeline, scheduled maintenance, email subscribers and signed webhooks. Its published version checks nothing, though: statuses come in through the dashboard, the API or, in v3, an import from Oh Dear. The other tools feed their page from their own checks. OneUptime's page has the most options: public, private or password-protected, on a custom domain, with subscribers by email, SMS, Slack or webhook. Uptime Kuma publishes several pages per instance, with incidents, maintenance and an RSS feed, but no email subscriptions, a request open since 2021. With Gatus, the status page is the dashboard itself, which can sit behind Basic Auth or OIDC, and SVG uptime badges can be embedded elsewhere.
Licences and paid plans
Uptime Kuma and CheckCle are under MIT, Gatus under Apache-2.0 and Checkmate under AGPL-3.0, and Checkmate's FAQ states there is no paid support. Three projects have a line worth knowing about. Gatus.io sells a hosted version from 10 to 500 dollars a month, and its FAQ promises the project will stay open source. Since version 14.0.0, OneUptime's ee/ directory falls under a proprietary licence, paid per user in production, covering SCIM, audit logs and per-type telemetry retention; SAML and OIDC SSO stay in the Community edition. Cachet's repository moved to a custom licence for v3 that forbids distributing it as a standalone product, while its website calls it "100% open source".