How to build a status page that deflects support tickets: which components to show, how to name them, what to keep private, and how to back each one with a real check.
By H. Marcell, Freelance Software Developer
Updated July 17, 2026
H. Marcell is a freelance software developer who builds and runs web services and APIs, and writes about uptime monitoring, incident response, and status-page communication.
A status page is the public face of your reliability. Done well, it deflects support tickets during an incident and builds trust the rest of the time. This guide covers which components to list, how to name them in language customers recognize, what to keep off the public page, and how to keep every component honest by backing it with a real check.
List the services a customer would name if you asked them what they use: Website, API, Dashboard, Checkout, Email delivery. Each component should map to something the customer can act on — retry, wait, or contact support — not to an internal subsystem. If two internal services always fail together from the customer's point of view, represent them as one component.
Not every check belongs on the public page. Internal queues, cron jobs, and third-party dependencies are essential to monitor but usually confuse customers. Keep them as private checks that alert your team, and surface only the customer-facing components publicly. The test: would this component's status change what a customer does in the next five minutes? If not, keep it internal.
A status page that is updated by hand lags reality and, worse, gets forgotten during the exact incident it exists for. Back each public component with a live check so its state reflects measured availability automatically. Reserve manual updates for the incident narrative — what is affected, what you are doing, and when the next update lands — while the component indicators track the machines.
In Sandglass, attach a check to each public component so its state is measured, not toggled by hand. Group the checks that back customer-facing services and expose only those on the public page; keep noisy internal dependencies private and route their alerts to your team channel. When a backing check fails, the component reflects it automatically, so the page tells the truth without anyone updating it under pressure.
A status page becomes noise when it mirrors every internal dependency. Customers do not know or care about "queue-worker-3" — they care whether login, checkout, and the API work. Listing forty internal components buries the three that matter, and a page nobody trusts is worse than no page at all.
Decide which failures in this topic actually reach customers before adding any monitoring.
Match each risk to a single HTTP, content, TCP, SSL certificate, or heartbeat check instead of stacking duplicates.
Give each alert one owner and one destination — email, a Slack webhook, or a generic webhook.
Revisit intervals, thresholds, and ownership once a real incident shows what was missing.
Free plan, no credit card required.