Uptime Monitoring: Fundamentals, Check Types and Choosing the Right Tool
Uptime monitoring explained: check types (HTTP, TCP, heartbeat), intervals, alerting and how to choose a tool — including self-hosting and GDPR.
What Is Uptime Monitoring?
Uptime monitoring is the continuous observation of a system's reachability from the outside. A monitoring service checks at fixed intervals whether your website, your API or your server responds — and whether the response is correct. That is the whole point of availability monitoring: not just "is the server running", but "can a user actually reach and use the system".
Technically, uptime monitoring is a black-box, or outside-in, form of observation. The monitoring system has no access to your source code or internal metrics. It looks at your system from the outside, exactly the way a real visitor would — over the network, with a request, evaluating the response. That is also its greatest strength: you measure precisely what your users experience, not just what an internal health check claims.
In website monitoring and server monitoring, two basic modes of operation complement each other:
- Pull monitoring: The monitoring system actively queries the target. It sends an HTTP request, opens a TCP connection or sends a ping and evaluates the response. This is the standard case for publicly reachable services.
- Push monitoring (heartbeat): The monitored system actively reports in to the monitoring service. If the expected signal fails to arrive, an alert fires. This suits cron jobs, background processes and systems behind a firewall that cannot be reached directly from the outside.
Difference From APM and Performance Monitoring
Uptime monitoring is often confused with Application Performance Monitoring (APM), yet the two answer different questions. APM is white-box observation: it measures internal metrics such as database query times, error rates and code traces, and needs instrumentation directly in the application code.
The decisive difference can be put simply: Uptime monitoring tells you THAT something is broken. APM tells you WHY. Uptime monitoring detects that the checkout page returns a 500. APM shows you that behind it sits a timeout to the payment database. The two complement each other, and neither replaces the other. For most websites, APIs and servers, solid uptime monitoring is the mandatory baseline — it is cheap, quick to set up and covers the most important question: is the system available to my users right now?
Why Monitoring Is Business-Critical
The core principle: you learn about an outage first — not your customer. Without monitoring, the first report of an outage is often an annoyed user, a tweet or a support ticket. By that point the outage has already been running for a while, and you have lost control of the communication.
In practice, the cost of downtime falls into three areas:
- Revenue: Every outage in the ordering, booking or payment flow costs money directly. A shop that is unreachable for an hour loses not only that hour's orders, but often customers who never come back.
- Trust and reputation: Repeated or uncommunicated outages damage trust — especially with B2B customers who depend on your service. Those who communicate transparently about incidents lose far less trust than those who stay silent.
- SEO: Longer or frequent outages can affect crawling. If the search engine crawler repeatedly finds a page unreachable, that can affect indexing and ranking over the medium term.
What an hour of downtime actually costs depends heavily on the business model and cannot be stated as a blanket figure. An honest estimate works if you take your average revenue per hour and add the indirect costs — support effort, reputational damage, lost new customers. Even this simple calculation usually shows quickly that a monitoring tool for a few euros a month is cheap insurance. How much downtime different availability targets even permit is something we work through in detail in the guide Uptime percentage explained.
The Most Important Check Types in Detail
Not all uptime monitoring is the same. Depending on what you are monitoring, you need different check types. Anyone who only checks the home page over HTTP overlooks a whole range of failure scenarios.
HTTP(S) Check
The HTTP(S) check is the most common type, and it does more than just verify that a page is reachable. It additionally evaluates:
- The status code: A
200 OKis good; a4xx(client error) or5xx(server error) signals a problem. A503 Service Unavailableis a classic outage signal. - Optionally a keyword or content in the body: This matters more than it sounds. A broken page can incorrectly return a
200 OKand still show only a blank page or an error message. A content check looks for an expected term (for example "Add to cart") and raises an alert if it is missing — even when the status code is fine.
TCP/Port Check
A TCP/port check verifies whether a specific port is open and accepting connections. This is relevant for services that do not run over HTTP: a database on port 5432 (PostgreSQL), a mail server on port 25 (SMTP) or any other network-based service. The check tells you whether the service accepts connections at all.
ICMP/Ping Check
An ICMP, or ping, check verifies the basic network reachability of a host. It tells you whether the server responds on the network — but not whether the services running on it work. A server can answer a ping while the web server has long since crashed. Ping is therefore a good first indicator, but no full substitute for a service-level check.
SSL Certificate Check
Expired TLS certificates are one of the most common avoidable causes of outages. An SSL certificate check warns in good time before expiry — typically a few days ahead. That leaves enough time to renew the certificate before visitors see a security warning in their browser.
DNS Check
A DNS check verifies correct name resolution. If DNS fails or is misconfigured, your application is unreachable even though the server runs perfectly. DNS problems are insidious because they often surface only after configuration changes.
Heartbeat/Cron Monitoring
Heartbeat monitoring covers things that are neither an open port nor a URL: cron jobs, backup scripts, queue workers and other background processes. The principle is the reverse of pull monitoring: after a successful run, the job sends a ping to a URL. If the expected ping fails to arrive within the defined time window, the job is treated as failed and an alert fires.
This solves a problem that HTTP checks cannot address: a nightly backup script has no port you could check from the outside. If it does not complete, without a heartbeat nobody notices — until the backup is needed and missing.
API/Manual Check
Some states are known only to your own application. With an API, or manual, check you can set a status programmatically — for example to reflect a business-logic state that a generic check cannot detect.
| Check type | Checks | Typical use |
|---|---|---|
| HTTP(S) | Status code + content | Websites, APIs |
| TCP/Port | Open port, connection | Databases, mail servers |
| ICMP/Ping | Network reachability | Basic server check |
| SSL | Certificate expiry | HTTPS services |
| DNS | Name resolution | Domain configuration |
| Heartbeat | Missing signal | Cron jobs, backups, workers |
| Manual/API | Custom status via API | Business logic |
Check Interval and Check Locations
The check interval determines how quickly you learn about an outage. With a 5-minute interval, an outage can go undetected for up to five minutes before the next check registers it. For many production systems that is too long.
As a rule of thumb:
- 1 minute is the standard for production systems. A good compromise between fast detection and acceptable load.
- 30 seconds makes sense for critical systems where every minute counts — such as payment infrastructure or central APIs.
- 5 minutes or more is enough for non-critical secondary systems where short outages cause no harm.
A second, often underestimated factor is checking from multiple locations. If a target is checked from a single location only, a local network problem between the check point and the target can look like an outage — even though your application runs perfectly for everyone else. Multi-location monitoring checks from several geographic points and compares the results.
This is also where false-alarm protection comes in. Before an alert fires, the system should confirm a suspected failure: several check points must see the error (multi-location confirmation) and/or it is rechecked after a short delay (retry/confirmation). Many transient glitches resolve themselves within 5 to 10 seconds — a brief recheck prevents them from turning into an alert.
Alerting and Escalation
Monitoring that detects an outage but reaches no one is worthless. Alerting is therefore just as important as the check itself. In practice you need several channels, because different situations demand different levels of attention:
- Email for documentation and non-urgent notices.
- Slack, Discord or Telegram for quick information in team chat.
- SMS or Pushover for critical alerts that must arrive even at night.
The most important and most frequently underestimated aspect is alert fatigue. Anyone who receives too many or constantly repeated alerts becomes desensitized — and eventually misses the one alert that really matters. The remedies are throttling (not reporting every repetition again), grouping related alerts and clearly defined escalation paths: who is informed first, who takes over if no one responds?
This is exactly where monitoring becomes a process. Anyone working with on-call rotations needs clear rules for when an alert escalates and to whom. How you get from the first notification to a structured response is something we cover in detail in the Incident management guide.
Monitoring and Statuspage Belong Together
An alert informs your team. But what about your users? When an outage is confirmed, customers want to know what is going on — without having to open a support ticket first. This is exactly where the loop between monitoring and statuspage closes.
Ideally, a confirmed outage leads not only to an internal alert, but can be turned directly into a public statuspage update: a service is set to "degraded", subscribers are notified automatically, and your team can communicate the incident transparently while working on the fix. That takes pressure off support and builds trust.
For this to work, monitoring and statuspage should not be two separate tools that you sync manually. What matters in a good statuspage — from service structure to incident communication — is something we have summarized in the Statuspage best practices.
Criteria for Choosing a Tool
Which monitoring tool is the right one depends on your requirements. The following criteria help you compare offerings on the merits, rather than being dazzled by feature lists:
- Check types: Does the tool cover what you actually monitor? Plain HTTP is rarely enough — TCP, SSL and heartbeat belong in most setups.
- Check interval: Does the plan you need offer an interval that is fast enough? Some cheap tiers are capped at 5 minutes.
- Multi-location: Does it check from several locations to avoid false alarms?
- Self-hosting option: Can you run the monitoring on your own infrastructure when you need full control?
- Data privacy and server location: Where is the data processed? For companies with customers in the EU, a European or German server location is often mandatory.
- Free tier: Is there a free entry point that lets you test the tool for real?
- Incident integration: Can an alert be turned directly into statuspage communication, or does monitoring stay an isolated silo?
If you want to weigh specific providers against each other, you will find detailed comparisons — for example for UptimeRobot, Better Stack and HetrixTools. There you can see in detail where each one's strengths and limits lie, particularly when it comes to server location and the link between monitoring and statuspage.
Uptime Monitoring With LIVCK
LIVCK combines uptime monitoring and statuspage in a single tool — that is the essential difference from solutions that only monitor or only provide a statuspage. For monitoring, seven check types are available: HTTP(S), TCP/Port, Ping, DNS, SSL, Heartbeat (for cron jobs and background processes) and Manual via the API. This covers publicly reachable services, certificate expiry, DNS configuration and jobs behind a firewall.
Against false alarms, LIVCK works with majority detection across independent probe locations: an incident is only triggered once the majority of locations confirm the error — checks run from up to eight locations, six of them in the DACH region. Transient glitches that resolve themselves after a few seconds therefore do not lead to unnecessary alerts and alert fatigue. Notifications run over email, SMS, voice call, Slack, Microsoft Teams, Telegram, Discord and webhooks.
The decisive advantage is the direct statuspage integration: a confirmed outage becomes a public update with automatic subscriber notification, without switching tools. Statuspage features such as custom branding, private pages and the uptime calendar are included in every plan, at no extra cost.
For operation, you have a choice. Self-hosted via Docker Compose is set up in minutes:
curl -fsSL https://get.livck.com -o docker-compose.yml
docker compose up -d
A modest entry-level server is already enough, such as the Hetzner Cloud CX22 from about €4.75/month — the only important point is that the monitoring does not run on the same infrastructure as the systems it monitors. Alternatively, a managed service on German servers is available, and the LIVCK Cloud Free plan (€0, 20 services, 120s interval, 1 statuspage) is in public beta — access via the waitlist. Because LIVCK comes from Germany and works GDPR by design, it is particularly well suited to regulated industries. You can find more on scope and installation in the LIVCK documentation and on the statuspage overview. If you are generally interested in running things yourself, the guide on the self-hosted statuspage is worth a look too.
Common Monitoring Mistakes
Even with the right tool, there are typical mistakes that undermine monitoring:
- Only checking the home page: The home page can run perfectly while login, checkout or API have failed. Monitor the business-critical paths, not just the shop window.
- Intervals that are too long: A 15-minute interval may save a few cents, but it leaves an outage undetected for a quarter of an hour. For critical systems that is too slow.
- Monitoring on the same infrastructure: If monitoring runs on the same server or in the same data center as the monitored systems, it fails together with them — exactly when you need it most. Monitoring always belongs on independent infrastructure.
- No alerting escalation path: An alert that only lands in an ignored email inbox helps no one. Define who is notified when, and what happens if no one responds.
These four points cost nothing but a little attention during setup — and in practice they decide whether your monitoring holds up when it matters or not.
Conclusion
Uptime monitoring is the cheapest insurance you can take out for your digital services: you learn about an outage before your customers do. What matters is that the monitoring fits what you run — with the right check types (not just HTTP, but also TCP, SSL and heartbeat for cron jobs), a sufficiently short check interval, false-alarm protection through multiple confirmation and a well-thought-out alerting path.
You get the most out of it when monitoring and statuspage do not sit in separate silos but work together: a confirmed outage turns directly into transparent communication to your users. How quickly you need to react depends on your availability target — you will find the concrete numbers in the guide Uptime percentage explained. Finally, make sure to run the monitoring on independent infrastructure and — if data privacy matters to you — to check server location and GDPR compliance.
Related articles
Incident Management: Process, Roles and Communication
Incident management explained: lifecycle, severity levels, roles, escalation, post-mortems and metrics like MTTR — plus professional incident communication.
Best PracticesStatuspage Best Practices — Transparency, Design & Incident Communication
The most important best practices for statuspages: transparent communication, proper incident management, professional design and monitoring integration.
AvailabilityUptime Percentage Explained: What Does 99.9% Really Mean?
What does 99.9% uptime mean? Downtime table from 99% to 99.999%, the formula to calculate availability and the difference between SLA, SLO and SLI.
Related comparisons
Ready for your own statuspage?
LIVCK: Monitoring and statuspage from Germany. Self-hosted, managed, or cloud. GDPR by design.
No credit card required. No license fees.