Uptime monitoring that confirms a failure before it alerts you

Six monitor types, checks from three locations, response time broken down by phase, and SSL and domain expiry warnings. One-minute checks on Pro and Scale.

Six monitor types

HTTP, keyword, ping, TCP, heartbeat, and DNS checks, available on every plan.

HTTP/HTTPS monitoring

Check websites and APIs for availability, status code, and response time.

Example: GET https://api.example.com/health

200 OK · 142 ms

  • GET, POST, PUT, DELETE, HEAD, OPTIONS, and PATCH requests
  • Custom headers and request body, Basic and Digest auth
  • Expected status codes and redirect handling
  • DNS, TCP, TLS, and server timing on every check

Keyword monitoring

Catch pages that return 200 OK but show the wrong content, such as an error message or a missing element.

Example: shop.example.com/product · "Add to cart"

Keyword found

  • Up to 20 keywords per monitor
  • Match any or all keywords, with optional case sensitivity
  • Forbidden keywords that fail the check when found
  • Search the body, the headers, or both

Ping monitoring

ICMP ping checks for hosts that do not serve HTTP.

Example: db.example.com

18 ms · 0% packet loss

  • Reachability from each probe location
  • Round-trip latency
  • Packet loss percentage
  • Confirmed from several locations before an incident

TCP port monitoring

Open a connection to a port and, for common protocols, check the banner the service returns.

Example: smtp.example.com:587

Connected · 38 ms

  • Protocol presets: SMTP, POP3, IMAP, FTP, SSH, HTTP, HTTPS, or generic
  • Optional text to send and response to expect
  • Connection time measurement
  • Timeout and connection-refused detection

Heartbeat / cron monitoring

Your cron job, worker, or backup script calls a URL when it finishes. If the call does not arrive on time, you are alerted.

Example: nightly-backup

Last ping 4 min ago

  • A unique ping URL for each job
  • Expected interval and grace period you set
  • Alert when a scheduled run is missed
  • Available on every plan

DNS monitoring

Check that a hostname resolves to the records you expect.

Example: A example.com → 203.0.113.10

Matches expected value

  • A, AAAA, CNAME, MX, TXT, and NS records
  • Exact, contains, or regex matching on values
  • Up to 10 record checks per monitor
  • Optional custom DNS server

The check results above are examples with sample data.

Confirmed from several locations before anyone is alerted

Checks run from Amsterdam (EU), US West, and Singapore (Asia-Pacific). A failure at one probe is retried from the others, so a bad moment on one network path does not page you.

  1. A check fails at one probe.
  2. The failure is retried from the other locations.
  3. An incident opens only when 3 probes in at least 2 regions have failed.
  4. Recovery is confirmed the same way.

GET https://api.example.com/health

Every 60 s

Amsterdam

HTTP 500 · 450 ms

Failed

US West

HTTP 500 · 416 ms

Failed

Singapore

HTTP 500 · 410 ms

Failed

Incident opened

3 of 3 probes failed across 3 regions, so your team is paged.

Illustrative example with sample data

Response Time Breakdown

Composition of latency for uptimeio.com by connection phase (DNS, Connect, TLS, Response)

DNS
TCP
TLS
Response
120ms
90ms
60ms
30ms
0ms
Mar 25, 2026Aug 7, 2026Sep 21, 2026
p50: 32msp95: 58msp99: 94ms
Avg Response: 36.42ms
Illustrative example, not your data.

Find where the time goes

A slow response can come from DNS, the connection, the TLS handshake, or the server. Each HTTP check records all four separately.

DNS resolution
Time to resolve the hostname
TCP connection
Time to open the connection
TLS handshake
Time to complete the TLS handshake
Server response
Time until the server starts responding (TTFB)

P50, P95, and P99 response times show the slow tail that an average hides.

Five alert channels, on every plan

Email, Slack, Telegram, Pushover, and webhooks are all included on every plan, including Free.

#incidents

Public API is down

Failure confirmed from 3 locations.

Sample notification

Webhook requests can be signed with HMAC-SHA256. There is no SMS or phone-call alerting.

Certificates and domains that expire without warning

Two common causes of avoidable outages, with alerts sent to the channels you already use.

Expiry date
  1. 30 days
  2. 15 days
  3. 7 days
  4. 1 day
Illustrative example: a warning is sent to your alert channels at each step.

SSL certificate expiry

Get warned before a certificate expires, and get an incident if it is expired or invalid.

  • Warnings 30, 15, 7, and 1 days before expiry, sent to your alert channels
  • An expired or invalid certificate opens an incident
  • The incident resolves on its own once a valid certificate is seen
  • Included on every plan

Domain expiry

Get warned before the domain name itself expires.

  • Registration data looked up over RDAP and re-checked hourly
  • Warnings 30, 15, 7, and 1 days before expiry
  • For HTTP, keyword, and DNS monitors on a publicly registered domain
  • Some country-code domains do not publish an expiry date; these show "not published" and send no warnings

Status pages for your customers

Publish the status of your monitors on a page your customers can check during an incident. Status pages are part of your account, and the Free plan includes one.

  • Your logo, colors, and text on every plan
  • Custom domain (status.yourcompany.com) on Pro and Scale
  • UptimeIO branding removed on Scale
  • RSS and Atom feeds for subscribers
  • Incident history and scheduled maintenance notices
  • 90-day uptime display for each component
  • Password-protected pages on every plan
UptimeIO StatusAll systems operational

Component Status

API Gateway
99.98%
Web Application
99.97%
Customer Dashboard
99.95%
Illustrative example with sample components.

Good to know

Where checks run, who can use them, and how long we keep the results.

Choose where checks run

On Pro and Scale you can choose which locations a monitor uses, down to a single region.

Teams without per-seat pricing

Pro and Scale include team members and projects in the price, with role-based access. The Free plan is for a single owner.

12 months of history

Pro and Scale include 12 months of history for your monitors.

Start monitoring in a few minutes

Start monitoring free

Free plan · 50 monitors · No credit card required