UPTIME MONITORING

Website and API monitoring, done right

  • 30-second checks from 12+ locations worldwide.
  • Instant downtime alerts, verified by a second region.
  • Public and private status pages built in.
cronitor.io/llms.txt — agent quick start
Acme — Checkout × +
← → https://acme.com/checkout
ACME
Checkout
ORDER SUMMARY
Subtotal118.00
Shipping10.00
3 items128.00
cert > 7d status == 200 body ~ /Checkout/ time < 400ms
········ every 30s · us-east-1
EXPIRING
REACHABLE
MATCHED
SLOW
Disney
Johnson & Johnson
Reddit
Shutterstock
Genentech
Yelp
GOV.UK
Razer
Rakuten
AB InBev
Chime
Monzo
monday.com
GoodRx
Zendesk
Meesho
checks / api.acme.com/health every 30s
PROBE FAN 12 regions · 5 continents
CHECK #48,201
CONSENSUS 12/12 UP
RE-CHECK
01DETECTED— waiting
02VERIFYING1 region ≠ down
03CONFIRMED0/2 regions
04ALERT SENTslack · pagerduty
Slack#ops-alerts
● api.acme.com/health DOWN eu-north-1 · verified by eu-west-1
2 of 12 regions · 10 reachable
GLOBAL MONITORING

Run checks every 30 seconds from 12+ locations

Pick up to 12 regions across 5 continents and check as often as every 30 seconds. See uptime and latency by region, with 12 months of history for spotting longer-term trends.

  • One region failing is not downtime — a second region has to agree.
  • Per-region latency, measured against that region's own median.
ASSERTIONS

Validate the response, not just the status code

Set assertions for status code, page content, response time, and certificate expiry. When one fails, Cronitor shows which assertion failed and the response that caused it.

  • A site can be up, serve the right content, and still fail its budget.
  • Checks that need JavaScript run in a real Chrome browser.
assert / checkout.acme.com GET · us-east-1 · Chrome 131
CONTRACT ···· 12mo retained
RESPONSE1.4 KB
TLS CN=acme.com exp 2026-11-14
HTTP/2 200 OK
server: cloudflare
content-type: text/html; charset=utf-8
x-response-time: ····
cache-control: private, max-age=0
<title>Acme — Checkout</title>
<h1 class="hdr">Checkout</h1>
<div id="cart" data-items="3">
ASSERTIONS0/4
status == 200····
got 200 · HTTP/2
body ~ "Checkout"····
matched at line 8
cert.expiry > 30d····
212 days remaining
response.time < ········
····
VERDICT ········ evaluating contract every 30s · 12 regions
Slack#checkout-oncall
● response.time failed · ···· page up · content ok · cert ok
BACKGROUND* * * * *

How uptime monitoring works

A website used to be one host and one hostname, either up or down. Problems were easier to spot, and one person often knew how everything was wired.

Now the same team may run a website, docs, a blog, a storefront, a status page, and a few legacy systems. Each has its own certificate, origin, and way of failing.

Cronitor Checks gives the developers supporting those systems one place to test availability, performance, certificates, and the response itself.

WHAT A CHECK ISEVERY REGION · EVERY RUN

A check is a request we make on your behalf, on your schedule, from the regions you choose. Every response is evaluated against the assertions you define — not just whether the connection opened.

CHECK INTERVAL30s — 24h
LOCATIONSup to 12 · 5 continents
RETENTION12 months
CONFIGURED BYdashboard · API · YAML
WHAT IT CATCHES5 FAILURE MODES
01HOST UNREACHABLEDNS doesn't resolve, the connection is refused, or nothing answers at all.
02CERTIFICATE EXPIRINGYour SSL certificate is about to expire — with days of warning, not a browser interstitial.
03500 INTERNAL SERVER ERRORThe status code isn't the one the check asked for.
04REQUEST TIMES OUTThe response takes longer than the budget you set for it.
05CONTENT MISSINGThe page loads, returns 200, and no longer contains your expected content.

None of this needs anyone watching a dashboard. Cronitor runs the check, confirms the failure from a second region, and tells you — then tells you again when it recovers.

WHAT YOU GET* * * * *
SEE HOW YOU'RE PERFORMING

Performance

Set a performance assertion so a check fails when the page gets slow, not only when it stops answering. Uptime and response time are retained for 12 months, globally and by region, so you can compare current performance with last quarter.

COVER YOUR ENTIRE STACK

Coverage

Add checks for websites, APIs, servers, firewalls, and other endpoints — including SSH bastions, mail servers, and VPNs. Start with availability, then add assertions when you need to validate the response.

INSTANT ALERTS WHEN SOMETHING ISN'T RIGHT

Alerts

Alerts tell you what failed, where, and when. Cronitor verifies downtime from at least one additional region before alerting, so a single bad probe does not page anybody. Route alerts through 10+ integrations.

STATUS PAGES BUILT IN

Status pages

Keep everybody informed. Any check can publish to a public or private status page, so customers and internal teams read the same uptime data you do. Automatic email reports go out on a schedule. There is nothing extra to install.

CAPABILITIES* * * * *

Everything you need for website and API monitoring

Set up website and API checks in minutes, then add assertions, regions, and alerting as you need them.

Website monitoring

Check availability around the world and get alerted when your site goes down.

API monitoring

Check API availability, performance, and response validity.

Server monitoring

Set up checks for the SSH bastions, email servers and VPN endpoints you rely on.

JavaScript? No problem

Run your website checks using real Chrome browsers to test your JavaScript apps.

Custom assertions

Test page content, status code, response time, certificate expiry, and more.

Choose your locations

Select up to 12 locations for each check and focus monitoring where your users are located.

Check every 30 seconds

Frequent checks can spot small problems before they become big incidents.

Regional performance

Track SLAs with global and per-region performance metrics.

Verified downtime

Cronitor confirms downtime from at least one additional region before alerting.

Configuration as code

Provision and version-control checks with YAML and the Cronitor CLI.

Live dashboards

See APIs, websites, and servers together, with status updates as checks run.

ONE PLATFORM* * * * *

Cronitor is a monitoring platform, not just another uptime tool

Checks share a dashboard, an alert pipeline and a status page with everything else Cronitor watches. The endpoint you check, the cron job that fills it, and the heartbeat from the worker behind it are all on one screen.

FROM THE FIELD* * * * *
FAQ

Have more questions?

01What is uptime monitoring?

Uptime monitoring continuously probes your websites, APIs, and services from the outside to confirm they are up and responding correctly. Cronitor runs checks as often as every 30 seconds from 12+ locations across 5 continents and alerts you instantly when an endpoint is down, slow, or failing an assertion.

02How does Cronitor avoid false alarms?

Downtime is always verified by at least one additional region before an alert is triggered, so a network blip near a single probe location does not page you. You choose the locations that matter for your users and the assertions that define a healthy response.

03What can an uptime check assert?

Beyond a simple up-or-down status, checks can assert status codes, response time, page content and JSON values, and SSL certificate expiration. You can send custom methods, headers, and request bodies to test real API behavior, not just reachability.

04What should I monitor for an AI agent?

Use a Heartbeat monitor to verify that the agent itself keeps running, then add Uptime checks for the reachable services it depends on: its MCP server, gateway or health endpoint, webhooks, and TLS certificates. Together, the passive heartbeat and active checks show which layer failed.

05Can Cronitor check an MCP server?

Yes. Configure a POST with a stateless JSON-RPC tools/list request and assert the status and JSON response. The endpoint must be reachable from Cronitor's public probe regions. For an OAuth-protected server, an expected 401 response can still prove liveness.

* * * * *

Monitoring for Developers