Self-hosted uptime monitoring tool that tracks HTTP, TCP, DNS, ping, Docker and other services with alerts and status pages.
TwiN/gatus
Self-hosted health dashboard that monitors services over HTTP, ICMP, TCP, DNS and more, evaluates response conditions, and sends alerts.
Open-source alternative to:UptimeRobot
Pingdom
Statuspage
- Stars
- 12,365
- Forks
- 869
- Open issues
- 421
- Last commit
- 4 days ago
What is it?
Gatus is a developer-oriented health dashboard for monitoring services over HTTP, ICMP, TCP and DNS queries. Each check is evaluated against a list of conditions on values such as status code, response time, certificate expiration, and response body, so a check can fail even when the service responds.
When an endpoint becomes unhealthy, Gatus can send alerts through providers including Slack, Teams, PagerDuty, Discord, Twilio and many others. Checks are defined in YAML, and the project also supports external endpoints that receive pushed status updates from agents in private networks, along with badges, metrics, and an API for status data.
It is written in Go, runs as a Docker container or standalone binary, and is intended to detect problems before users report them.
Key features
- 01Health checks over HTTP, ICMP, TCP, DNS, and other protocols
- 02Conditions on status code, response time, certificate expiry, and body content
- 03Alerting to Slack, Teams, PagerDuty, Discord, Twilio and many more providers
- 04Support for external endpoints that receive pushed status updates
- 05Metrics endpoint, status badges, and a status API
- 06Configuration in YAML with hot reloading
Use cases
- Monitoring your own web services and APIs and getting alerted before users notice outages
- Running a public status page for internal or customer-facing services
- Monitoring services in private networks by pushing status from an internal agent
- Running automated acceptance checks against endpoints with multi-step suites
Quick start
- 1
Run Gatus with Docker from GitHub Container Registry
docker run -p 8080:8080 --name gatus ghcr.io/twin/gatus:stable - 2
Or run it with Docker Hub image
docker run -p 8080:8080 --name gatus twinproduction/gatus:stable - 3
Open the dashboard in your browser to see the status page
Things to know
- Configuration is file-based YAML, so setup requires writing a config file for your endpoints.
Topics
FAQ
- What is gatus?
- Self-hosted health dashboard that monitors services over HTTP, ICMP, TCP, DNS and more, evaluates response conditions, and sends alerts. Gatus is a developer-oriented health dashboard for monitoring services over HTTP, ICMP, TCP and DNS queries. Each check is evaluated against a list of conditions on values such as status code, response time, certificate expiration, and response body, so a check can fail even when the service responds.
- Is gatus free to use? What license does it have?
- gatus is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is gatus still maintained?
- Actively maintained. The last commit to gatus was on Oct 17, 2026.
- What can I use gatus for?
- Monitoring your own web services and APIs and getting alerted before users notice outages Running a public status page for internal or customer-facing services Monitoring services in private networks by pushing status from an internal agent Running automated acceptance checks against endpoints with multi-step suites
- How do I install gatus?
- Run Gatus with Docker from GitHub Container Registry: docker run -p 8080:8080 --name gatus ghcr.io/twin/gatus:stable Or run it with Docker Hub image: docker run -p 8080:8080 --name gatus twinproduction/gatus:stable Open the dashboard in your browser to see the status page
- Where can I get gatus?
- The source code and installation instructions are on GitHub: https://github.com/TwiN/gatus
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Lightweight self-hosted server monitoring with a web dashboard, Docker container stats, historical data and alerts.
Self-hosted alerting for metrics, logs, and SQL data sources, with notification routing and a built-in AI agent and MCP server.
Self-hosted uptime and infrastructure monitoring app that checks HTTP, ping, port, DNS, Docker and more, with status pages and incident alerts.
Self-hosted real-time monitoring dashboard for Proxmox, Docker, Kubernetes, TrueNAS and vSphere, with alerts and scheduled AI patrols.
A command-line tool for monitoring website uptime, response time and SSL certificate expiry, with alerts via desktop notifications and webhooks.