How To Decide Between Hosting Your Own Status Page Versus Using a Managed One
Introduction
A status page forms a key part of your incident communication strategy. When it comes to setting up a status page, you have two options:
- Host your own - using either an open source project or a custom solution.
- Use a managed status page provider.
We will examine the pros and cons of each option along these dimensions:
- Feature Set
- Service Related
For 1, if you choose a self-managed, open-source or custom solution, it's in your control. For a managed solution, you are limited by the provider's feature set.
For 2, if you choose a self-managed solution, your team is responsible for the quality of the service. For a managed solution, you are dependent on the provider's service quality.
In most cases, you are better off using a managed solution from a reputed provider, unless you have:
- Specific requirements that are not met by the vendor.
- Budget constraints.
This article is not a comparison of specific managed vs self-managed status page providers but is meant to be a set of guidelines to help you make a decision.
Feature Set Considerations
Integration Options
A status page should be able to integrate with your existing tools and incident management workflows. The minimum integration options you should look for are:
- API access for updates. You would want the option of automatically updating the status page from your incident management tools, or manually updating it, depending on business needs.
- Easy integration with your existing toolset.
These options are for your SRE/Ops/IT Team so that they can keep stakeholders updated by either automatically or manually updating the status page.
For your end users, you would want to have options for them to subscribe to updates via email, SMS, Slack, Discord, or other channels.
Subscription options for GitHub's status page, which uses Atlassian Statuspage as a provider.
Some managed providers offer a complete stack of tools for monitoring, alerting, and status pages. However, if you have a monitoring stack already, you might not be able to use such providers since their status pages are usually tied to their monitoring solutions. In such cases consider using a standalone status page provider.
Some standalone status page options are:
If you are using an open source solution, you might be able to customize it to your needs. If you have a custom, homegrown status page, you are in complete control. The downside is that you need to spend time and resources to build as well as maintain it.
Customizability
Your status page should reflect your branding as well as support your service's architecture.
Branding includes the logo, colors, other visual elements, and a whitelabeled URL. With both managed and open source solutions, you can customize the branding according to your needs.
A status page should also be able to represent your service components and regions, and different kinds of events. The former is especially important if you many services which are globally distributed. If you want to keep your users updated about upcoming maintenance, you would want to be able to represent that in the status page. Most managed providers offer this feature.
An example of a homegrown status page - Google Cloud Platform.
Depending on your business global presence, i18n support can also be a requirement.
During the beginning of an incident, it's possible your teams won't have much information to share about the outage. As they work towards mitigation, more information will become available. A status page should allow you to update accordingly, and maybe add more information to older entries for that incident.
Reporting and Analytics
Every incident is an opportunity to learn. As part of your incident post-mortems, you can improve your incident response process by examining areas of improvement. Incident metrics can help you identify possible areas. Your status page software should be able to give you such metrics and reports.
Service Related Considerations
Cost and Maintenance
For a managed status page provider that meets all your needs, your only remaining consideration remains budgetary.
If you opt for a self-managed solution, you need to consider these costs:
- Ongoing bug fixes and improvements. If it's in-house, you have more control over the codebase.
- Hosting and availability costs.
Availability
Your status page should have good availability. If you are using a managed solution, check that the provider has a good uptime record. They should also have a way of notifying you if there is an outage with their service.
An example of a status page provider's status page.
If you're self-hosting, it's your team's responsibility to ensure availability. A rule of thumb here is to keep the status page hosting logically and physically separate from the rest of your production environment. You should monitor the status page's availability and performance in the same way you monitor your production environment.
Support
For a managed provider, check their SLA and support options.
For a self-managed solution, it's a good idea to have a dedicated owner - whether it's a person or a team - who is responsible for the status page.
Conclusion
Deciding between hosting your own status page and using a managed solution ultimately depends on your organization's specific needs, resources, and priorities. A self-hosted status page offers greater control and customization, making it suitable for teams with unique requirements. However, it can also demands significant time and resources for development and maintenance.
On the other hand, a managed status page provider can outsource the headache of maintenance and availability. With the right provider, you can ensure high availability, robust support, and seamless integration with your existing tools.
IncidentHub is not affiliated with any of the vendors mentioned in this article.
Image credits: Photo by Image by Joshua Woroniecki from Pixabay