kuvasz is a free, open source monitoring & observability project written in Kotlin and released under AGPL-3.0. It has 631 GitHub stars, 37 forks and 5 open issues, and was last pushed 30 hours ago. On this registry it ranks #92 of 97 tracked projects in Monitoring & Observability, with 5 head-to-head comparisons available.

What is kuvasz?

Kuvasz is an open-source, self-hosted uptime and SSL monitoring service written in Kotlin, built for teams, homelab operators and infrastructure engineers who want to watch their websites, services and TLS certificates on infrastructure they control rather than on a vendor's platform.

What it is

Kuvasz is a monitoring service that checks the availability and performance of the things you run. It speaks several protocols to do that: HTTP(S) requests against websites and APIs, SSL certificate inspection to confirm a certificate is valid and unexpired, ICMP echo requests for reachability and latency, TCP connection attempts against services such as databases, SMTP, SSH and message brokers, DNS lookups with assertions on returned records, and heartbeat (push) monitoring for cron jobs and backups that are expected to report in on schedule. Results surface in a modern web interface, through a REST API, and through a status page that can be published publicly or kept private for an internal team.

The concrete problem it replaces is the split between a paid uptime SaaS and a pile of standalone scripts. Instead of paying a hosted vendor per monitor and per seat, or wiring together separate certificate expiry checks, cron heartbeat receivers and DNS watchers, a single self-hosted service covers all of those check types and routes alerts from one place. It lives in the cloud-native and containerized ecosystem, is distributed as the Docker image kuvaszmonitoring/kuvasz, and is licensed under AGPL-3.0. Configuration can be managed declaratively as YAML, which makes it fit infrastructure-as-code workflows alongside the rest of a stack.

Key capabilities

  • HTTP(S) monitoring of availability and performance for websites and services, plus automatic SSL certificate validity and expiry checks.
  • Heartbeat push monitoring for cron jobs, backups and scheduled tasks, with alerts when an expected heartbeat fails to arrive.
  • ICMP ping, TCP port and DNS monitoring, including assertions on A, MX, TXT and NS records using exact, substring or regex matchers, with optional alerts when resolved records change.
  • Notification channels configured per monitor, covering email, Discord, Slack, Telegram, Microsoft Teams, Apprise, Pushover, PagerDuty and custom webhooks.
  • Public or private status pages, plus maintenance windows to suppress noise during planned work.
  • A full REST API and an MCP server, the latter allowing AI assistants to query monitor status, view incidents and create or toggle monitors.
  • Metrics exporters for Prometheus and OpenTelemetry, and an official Home Assistant integration (ku-hass) for smart home dashboards and automation.

Who uses it and how

  • Homelab operators running containerized services who need uptime and certificate checks without a hosted subscription.
  • Platform and SRE teams that manage monitor definitions as YAML in version control, treating monitoring config as infrastructure as code.
  • Teams that publish status pages to keep users or internal stakeholders informed during incidents, using the same alert routing that drives their on-call channels.
  • Operations groups that already run Prometheus and OpenTelemetry, exporting Kuvasz metrics into an existing observability stack.
  • Home Assistant users who want service status visible on a smart home dashboard and automated actions triggered by it.

Getting started

Kuvasz runs from the Docker image kuvaszmonitoring/kuvasz, with the official Deployment guide in the documentation at kuvasz-uptime.dev/setup/installation/ covering installation. A live demo instance is available at demo.kuvasz-uptime.dev, using the credentials demo / secureDemoPassword.

How it compares

The facts provided for this page name no paid products that Kuvasz replaces, and no competing tools appear in its topic or feature list, so it stands alone in this registry. Prometheus, OpenTelemetry and Home Assistant appear only as integrations it exports to or plugs into, not as alternatives.

When to use it — and when not to

Kuvasz suits anyone willing to operate the service themselves, including whatever database, storage and mail configuration the deployment guide requires, since none of those requirements are spelled out in the repository README. It is the wrong choice for teams that want a managed SaaS with no operational surface, and the AGPL-3.0 licence is a consideration for anyone planning to embed it in a proprietary product. The clearest weakness in the facts is documentation depth: the README excerpt is short and defers setup, configuration and operational detail to the external documentation site.

project readme (upstream, from github) — read inline

Kuvasz

CI GitHub known bugs codecov no vibe coded FOSSA Status Docker Pulls

Kuvasz [ˈkuvɒs] is an open-source, self-hosted uptime & SSL monitoring service with status pages, designed to help you keep track of your websites and services. It provides a modern, user-friendly interface, a powerful REST API + MCP server, maintenance windows and supports multiple notification channels like email, Discord, Slack, Telegram, Microsoft Teams, Apprise, Pushover, PagerDuty and custom webhooks.

Kuvasz

📖 Documentation

🛝 Live demo

You can try out Kuvasz on the dedicated demo instance under https://demo.kuvasz-uptime.dev

Use the following credentials to log in:

  • Username: demo
  • Password: secureDemoPassword

🔮 Roadmap

⚡️ Quick start guide

If you want to get started quickly, please refer to the Deployment guide in the documentation.

✨ Features

  • HTTP(S) monitoring: Monitor the availability and performance of your websites and services by sending HTTP(S) requests.
  • SSL certification monitoring: Automatically check the SSL certificates of your monitored services to ensure they are valid and not expired.
  • Heartbeat (push) monitoring: Monitor your cron jobs, backups, and other scheduled tasks in a push-based manner, getting alerted when an expected heartbeat doesn't arrive in time.
  • Ping (ICMP) monitoring: Check the reachability and latency of any host by sending ICMP echo requests (pings) to it.
  • TCP port monitoring: Check whether any TCP service — databases, SMTP, SSH, message brokers, and more — accepts connections, and track connect latency.
  • DNS monitoring: Check that a name resolves, assert on the returned records (A, MX, TXT, NS, and more) with exact, substring or regex matchers, verify the response code, and optionally get notified when the resolved records change behind your back.
  • Notifications on a per-monitor basis: Configure different notification channels for each monitor, allowing you to tailor alerts to your specific needs.
  • Status pages: Create public or private status pages to keep your users or your own team informed about the status of your services.
  • Sleek UI: Kuvasz has a modern, responsive, and user-friendly interface that makes it easy to manage your monitors.
  • Full-fledged REST API: Manage your monitors, check their status, and more through a powerful API.
  • Metrics exporters: Export your metrics to OpenTelemetry and Prometheus for better observability and integration with your existing monitoring stack.
  • Home Assistant integration: With the official Home Assistant integration you can easily integrate your monitors into your smart home setup, create custom dashboards, and automate actions based on the status of your services.
  • MCP server: The MCP server allows you to leverage the capabilities of Kuvasz via AI assistants, enabling you to query monitor status, view incidents, and create or toggle monitors through natural language.
  • Maintenance windows: Schedule planned downtime so Kuvasz pauses the affected checks and suppresses false alerts — manually, on a recurring cron schedule, or as a one-off event.
  • More to come: Take a look at our Roadmap

🚀 Kuvasz vs. UptimeRobot

Kuvasz UptimeRobot Free UptimeRobot Solo
Price Free Free $84/year
Monitoring interval 5 seconds 5 minutes 60 seconds
Monitors limit unlimited 50 10
Location-specific monitoring ✅*
Translations
Custom data retention 3 months 12 months
REST API
OIDC
Prometheus & OpenTelemetry exporters
Backups & YAML configuration
Status pages only 1 only 3
Maintenance windows
HTTPs monitoring
Keyword matching
Header matching
Slow response alerts
Custom HTTP methods ❌ (HEAD only)
Custom status matcher
Custom headers
Custom request body
SSL monitoring
Heartbeat (push) monitoring
Ping (ICMP) monitoring
TCP monitoring
DNS monitoring
Domain expiration monitoring
Notifications
Email
Discord
Slack
Telegram
MS Teams
Apprise
Pushover
PagerDuty
Webhook
SMS / Voice call ✅** 10 incl./month
Google Chat ✅**
Mattermost ✅**
Signal ✅**

✅ Supported | ❌ Not supported | 📆 Planned

  • * You can deploy Kuvasz to multiple locations and monitor your services from those locations, but it does not support location-specific monitoring out of the box.
  • ** via custom webhooks

Where does the name come from?

Kuvasz (pronounce as [ˈkuvɒs]) is an ancient hungarian breed of livestock & guard dog. You can read more about them on Wikipedia.

📣 Don't miss out on the latest

readme truncated — read the full docs on github

Frequently asked questions

Is kuvasz free to use?

kuvasz is open source under the AGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does kuvasz do?

Kuvasz (pronounce as [ˈkuvɒs]) is an open-source uptime and SSL monitoring service, with multiple notification channels, status pages, IAC support via YAML, Pro

What is kuvasz written in?

kuvasz is primarily written in Kotlin. Its source is publicly available at https://github.com/kuvasz-uptime/kuvasz, and it has 631 GitHub stars.