With so much reliance on online services and applications these days, a status page is essential to a business, its support and IT teams. It’s a key component in your incident communication strategy.
Communicating the status of your website or service to users (particularly customers) creates trust and keeps them updated—especially during downtimes. Plus, it saves you from sending out emails or using other time-consuming methods to provide status updates.
There are two ways to go around setting up your own status page, using a SAAS solution or self-hosting your status page. Now you might be wondering, what are the advantages and disadvantages of self-hosted vs hosted status pages? We go into detail about this in our blog post Hosted vs self-hosted for your Status Page, Which is best?.
However, in this blog post we want to provide you with some great open source alternatives for self-hosted status pages, ranked from good to the best.
Content Index
To summarize, a status page should be able to provide a clear picture of the current and past status of your application or service, ideally with monitoring and incident automation and history. The following open source alternatives cover these key features:
1. Kener
If you’re looking for a modern, nicely designed, and Github-based status page that automatically monitors the status of your services, then Kener is just for you.
Kener uses your Github account as the storage for your incident reporting. Integrating easily with how your team already works and collaborates.
Kener is completely open-source, built with Node.js, Svelte, and Tailwind, making it extremely easy to extend and customize.
Key features of Kener
- Real-time Monitoring: Enables real-time monitoring of services using either polling of HTTP endpoints or push data via REST APIs.
- Flexible Configuration with YAML: Allows for flexible monitor configuration using YAML, including custom definitions for service statuses like UP, DOWN, or DEGRADED.
- Cron-based Scheduling: Supports cron-based scheduling for monitors with a minimum frequency of per minute, along with a default status option.
- Customizable Status Pages: Provides options for customizing status pages using YAML or code, and includes badge generation for monitor status and uptime.
- Branding and Embedding Features: Offers support for custom domains and the ability to embed monitors as iframes or widgets, complemented by light and dark themes.
- Incident Management: Allows creation of incidents using Github Issues or APIs, with support for rich text in incidents.
- User Experience and Design: Focuses on a user-friendly interface with 100% accessibility score, easy installation, responsive design for various devices, and auto SEO and social media readiness.
2. Uptime Kuma
Uptime Kuma is a self-hosted monitoring tool with status pages support. It's known for its ease of use and comprehensive features. It offers a range of monitoring capabilities for various protocols and services.
Key features of Uptime Kuma
- Monitoring for multiple protocols like HTTP(s), TCP, DNS, and more.
- A fast and reactive user interface.
- Notifications through numerous services, including Telegram, Discord, and Email.
- Frequent monitoring intervals (as low as 20 seconds).
- Support for multiple languages and status pages.
- Additional functionalities like certificate info, proxy support, and two-factor authentication.
3. CState
CState is another minimalist option, interestingly based on Hugo (static site generator). Thanks to that, it can be easily hosted via various providers such as Github or Netlify and runs extremely fast due to the static structure of the site.
CState provides all the most important features a status page should have, namely incident and maintenance reporting and history.
Individual customizations are also feasible. In addition, a built-in package with translations into eight different languages, including Spanish, Portuguese, Turkish and Dutch, is included. In case of complications, a limited support helps you for a small fee- or even with the installation.
Key features of CState
- Serverless Architecture: Utilizes a static, serverless design for efficiency and speed.
- Hyperfast Performance: Built with Go & Hugo for exceptional performance.
- Customizability: Highly customizable with minimalistic HTML/CSS/JS.
- Preloaded CMS and Read-Only API: Includes a preloaded content management system and a read-only API for ease of use.
- Badge Generation: Offers badge creation for various statuses.
- Excellent Browser Support: Compatible with a wide range of browsers, including older versions like IE8.
4. Cachet
This brings us to the old hand and top dog among the free status sites: Cachet.
The first thing that stands out is that Cachet is big. The open source project has many contributors, extensive documentation and even its own Slack community, which is always happy to help with questions.
You will however need to configure and maintain a server with Cachet and is slightly less straightforward than some previously mentioned alternatives.
Other than that, the user interface is a delight and the dashboard is clearly laid out. You can create incidents, monitoring services, scheduled maintenances as well as your own metrics. Furthermore you can add subscribers and team members with different rights. Cachet provides two-factor authentication for this purpose.
The customizable status page is also particularly convenient for your users. The powerful JSON API pleasantly completes the picture.
UPDATE: Version 3.x
of Cachet is coming soon
Cachet creator, James Brooks, who has experienced personal challenges and growth, including a loss in the family and a new job at Laravel, is now rebuilding Cachet using modern technologies like Vue.js, Inertia, Laravel 10.x, and Tailwind.
The plan includes supporting only PHP 8.1 and above, possibly dropping non-English translations temporarily, and ensuring existing installations remain functional. The rebuild will be extensive, requiring closing of current issues and pull requests in the repository.
James seeks community collaboration, including assistance in front-end development, testing, documentation, and financial sponsorship.
Key features of Cachet
- Incident, maintenance, monitoring metrics
- Subscribers & team members
- Nice and easy to use dashboard
- Two factor authentication
- Customizable status page
- Powerful JSON API
- Extensive documentation
5. Upptime
Upptime is one of our absolute favorites. The service is completely open source and very user-friendly. You don't need your own server since the status page is hosted directly via Github Services.
For a free status page, Upptime can do a lot: Incident creation, monitoring service, display of active and past incidents, live status and scheduled maintenances.
If one of your systems should crash, you can set up notifications via different external providers.
Best of all, Upptime creates an automatic Github issue for incidents and also closes it again as soon as the incident is resolved. This way, the developer team can always keep an eye on your services.
Key features of Upptime
- Opens and closes a github issue automatically(good for dev team)
- Commits for response time
- No server required, powered entirely by github
- Active incidents, scheduled maintenance, live status, past incidents
- Notifications to different services
- Handy UI
6. Vigil
A somewhat simpler service is Vigil. The program can do everything that a status page should be able to do - incident creation, monitoring and notification via plenty of channels (e.g. Email, SMS, Slack, Telegram).
Vigil is another service that requires self-hosting. An interesting fact is that Vigil is writing in Rust, so you’ll need either cargo or OPTopt to use the dockerized version.
A great advantage of Vigil is that it can be used internally on a company lan network. For a small company certainly a good and free service for internal use.
Key features of Vigil
- Generates status page
- Notifications (Email, SMS, Slack, Telegram, and many more)
- Vigil local can be internally used (e.g. LAN)
Conclusion
If you’d prefer not to have to configure and maintain a new server, and don’t mind relaying in a service like Github or Netlify, Upptime and CState are a great choice.
However if a simple monitoring service and slick status dashboard is what you’re after, Monitoror with its geeky design is probably the best option for you.
Now, if you don’t mind the extra effort of setting up and maintaining your own server, and want a more powerful alternative to the above, then you can’t go wrong with Cachet, Statping or Vigil. Especially Cachet stands out with its long history, many contributors and its excellent and comprehensive documentation.
Finally, if you find yourself outgrowing these free and open source alternatives, it might be time for you to consider a modern SaaS solution, like StatusPal, where you’ll get all of the features described above and then some, bundled with amazing and responsive support that can help you get up and running in a few minutes.
Examples of Open-Source Status Pages
As a bonus, here are a couple of great examples of status pages built with the above open source tools:
Crip Status Page - powered by Vigil
Meilisearch Status Page - powered by Vigil
Example Kener Status Page
FSCI Status Page - powered by CState
Example Uptime Kuma Status Page
Top comments (2)
OpenStatus is another open-source status page alternative, simple and elegant.
key features
link to GitHub ↗︎
Thanks @fmerian! We'll keep it in mind for the next revision of our list :)