UptimeRobot alternative: every-minute checks from three clouds

UptimeRobot's free plan is generous with monitors and strict about time and place: every 5 minutes, from a region it picks. We measured what that misses against a month of real outages.

What CheckHTTP does differently

  • Checked from three clouds

    Runners on AWS, Google Cloud and Azure check your site independently, even on the free plan. Premium adds US East and Germany; Professional adds Ohio, Tokyo, Singapore and São Paulo.

  • Uptime, RUM and visitor stats in one plan

    One script adds real visitors, engagement, Core Web Vitals and JavaScript errors next to your checks, with bots filtered out. Full analytics open in StatsHarbor.

  • Alerts confirmed by another cloud

    Choose how many runners must agree before anyone hears about it, so one provider's bad day is not your outage. Email, Slack or any webhook, plus a message when it recovers.

UptimeRobot is where many people start, and for good reason. Its free plan watches 50 monitors, covers HTTP, keyword, ping, port and DNS checks, and costs nothing. The catch is in the details of the pricing and location pages: free checks run every 5 minutes, from a region UptimeRobot assigns, and the plan is described as "good for hobby and non-profit projects".

None of that matters for a side project. For a site that earns money, two questions are worth asking of any monitor: where are the checks coming from, and how often?

Where the checks come from

UptimeRobot lists four monitoring regions: North America, Europe, Asia and Australia. Free monitors get a region assigned automatically; choosing one, or adding several to a monitor, takes a paid plan. When a check fails, UptimeRobot confirms it from other nodes within the same region before opening an incident.

CheckHTTP is built around a different idea: the same check, run on three separate cloud providers. Every site, including the free one, is checked by runners on AWS, Google Cloud and Azure, each on its own network. Paid plans add more locations on the same three clouds:

Location AWSGoogle CloudAzure
US West FreeFreeFree
US East PremiumPremiumPremium
Europe (Germany) PremiumPremiumPremium
US East (Ohio) Pro··
Tokyo Pro··
Singapore Pro··
São Paulo Pro··
Each mark is a runner that checks your site independently. Free 3 runners, one per cloud. Premium 9, adding US East and Germany. Pro all 13. Alerts and emails name the runners that saw the failure, such as aws/us-west-1 and gcp/us-west-1.

Why the provider matters: a checker can only report what its own network sees. On October 20, 2025, a DNS fault in DynamoDB disrupted a large part of AWS's US-East-1 region for most of a day. A monitor that lived only inside that region had no clean way to tell its own trouble from yours. With runners on three clouds, "AWS sees it down, Google Cloud and Azure see it up" is a different message from "all three see it down", and you can set alerts to wait for the second kind.

How long outages actually last

CheckHTTP checks every monitor once a minute. Over the 30 days to October 17, 2026, that came to 4.5 million checks of 125 sites. We counted every time a site failed two or more checks in a row, and how long it stayed down.

165outages on 36 sites
2 minmedian length
77%over within 3 minutes
88%over within 5 minutes

Most outages are short. A deploy restarts a server, a load balancer drops a node, a database fails over, and a minute or two later everything is back. That is exactly the kind of event a 5-minute check tends to step over:

Of 165 real outages, expected to fall between checks

Every 1 min0
Every 3 min41 (25%)
Every 5 min79 (48%)
165 outages of two or more consecutive failed checks on 36 sites, from 4.5 million checks run every 60 seconds over the 30 days to October 17, 2026. The 1-minute row is zero by construction: that is how these outages were found. An outage lasting d minutes lands on a check every I minutes with probability d / I.

Roughly half of these outages would never have registered on a 5-minute schedule. Whether that matters depends on the site. A two-minute blip on a blog is noise. A two-minute blip on a checkout during a launch is lost orders, and if it repeats every few days, a pattern you would want to see before your customers point it out.

The price of checking every minute

On UptimeRobot, 60-second checks start with the Solo plan: $12 a month billed yearly ($144), or $13 month to month, for 10 monitors, with SMS and voice credits included. Team, at $39 a month billed yearly, checks every 30 seconds and adds seats for colleagues.

CheckHTTP takes the opposite trade. The free plan checks one site every 60 seconds from all three clouds. Premium covers five sites for $7 a month and adds US East and Germany; Professional covers ten for $15 and adds Ohio, Tokyo, Singapore and São Paulo. You get fewer monitors for free, but the free monitor is as fast as the paid ones, and there is no hobby-only clause.

Uptime, real users and visitor stats in one place

UptimeRobot's plans are about uptime; real-user monitoring is not among the features they list. CheckHTTP puts both halves on the same plan. Add one script to your site and the monitor's Visitors & RUM tab shows:

  • Visitors and engagement: how many real people came, how many sessions were engaged and how long pages stayed in view, with bots filtered out.
  • Page speed from real browsers: LCP, INP, CLS and time to first byte at the 75th percentile, graded against the Core Web Vitals bands.
  • JavaScript errors: grouped by message, with the pages they happened on.

So an outage alert comes with the question that follows it answered: how many visitors were on the site when it broke. The full analytics, with referrers, countries and devices, open in StatsHarbor with one click, no second login.

At a glance

UptimeRobot CheckHTTP
Where checks run 4 regions (North America, Europe, Asia, Australia); auto-assigned on free, chosen on paid plans AWS, Google Cloud and Azure: 3 runners free, 9 on Premium, 13 on Professional
Confirming a failure Rechecked from other nodes in the same region You set how many runners, on different clouds, must fail
Free plan 50 monitors, every 5 minutes, hobby and non-profit use 1 site, every 60 seconds, from three clouds
Cheapest 1-minute checks Solo: $12/mo billed yearly, $13 monthly (10 monitors) Free (1 site); $7/mo for 5 sites
Fastest interval 30 s (Team), 15 s (Scale) 60 s on every plan
Real-user monitoring and visitor stats Not listed on its plans Included: visitors, engagement, Core Web Vitals, JS errors, bots filtered
Alert channels Email, Slack, Teams, Telegram, webhooks and more; SMS and voice on paid plans Email; Slack and webhooks on paid plans; recovery messages
Monitor types HTTP, keyword, ping, port, UDP, DNS, SSL and domain expiry, API HTTPS, plus scripted JavaScript checks for keywords, JSON and multi-step APIs

Competitor details from their own pricing and documentation pages, checked October 18, 2026.

Where UptimeRobot is the better choice

  • Breadth for free. Fifty monitors costs nothing. If you need a rough eye on many endpoints and five minutes is fine, nothing here beats it.
  • Alert channels. Microsoft Teams, Telegram, PagerDuty and Zapier connect directly, and paid plans add SMS and voice calls. CheckHTTP sends email, Slack messages and webhooks.
  • Monitor types. Ping, port, UDP, DNS and domain-expiry monitors are built in. CheckHTTP checks HTTPS endpoints, plus whatever you can script over HTTP.
  • Mobile app and team seats. UptimeRobot has a mobile app and sells seats for teams.

What else CheckHTTP records

A CheckHTTP check records more than up or down. Every request logs DNS lookup, connection, TLS handshake and time to first byte, the runner and cloud that made it, and the certificate's issuer and expiry date, so a slow afternoon shows up as "TLS took 900 ms from Azure" and not just "slow". You can attach a HAR file to a sample of checks, or capture one on demand while you debug.

When a plain status code is not enough, a scripted check runs a few lines of JavaScript with fetch, assert and an HTML parser, and secrets you store encrypted:

const started = Date.now();
const res = await fetch(url + '/api/health', {
  headers: { 'x-api-key': secrets.HEALTH_KEY }
});
const body = await res.json();
assert.equal(body.database, 'ok');   // a failed assert marks the check down
return { status: 'up', http_status: res.status, latency_ms: Date.now() - started };

Using both

The two do not have to be either-or. A common split is to keep UptimeRobot's free plan watching the long tail of endpoints at 5 minutes, and point CheckHTTP's multi-cloud, 60-second checks at the one or two paths that pay the bills: the checkout, the login, the public API.

Check your most important page every minute, from three clouds. One site free, no credit card.

Start monitoring free

Questions people ask

Where does UptimeRobot check from?

UptimeRobot lists four monitoring regions: North America, Europe, Asia and Australia. On the free plan it assigns the region; choosing regions, or several per monitor, needs a paid plan. A failure is confirmed from other nodes in the same region.

Is UptimeRobot's free plan allowed for business sites?

UptimeRobot describes its free plan as "good for hobby and non-profit projects". Commercial sites are pointed to the paid plans, which start at $12 a month billed yearly.

How many outages does a 5-minute check miss?

Against 165 outages we recorded in 30 days, checks every 5 minutes would have been expected to miss about 79 of them (48%), because most lasted under three minutes. Checks every 3 minutes would miss about 41 (25%).

Why check from more than one cloud?

A checker can only report what its own network sees. When the cloud it runs on has trouble, as AWS's US-East-1 region did on October 20, 2025, a single-provider checker cannot tell its own problem from yours. CheckHTTP runs the same check on AWS, Google Cloud and Azure, so you can require more than one provider to agree.

Does CheckHTTP send SMS or phone alerts?

Not today. Alerts go by email, and on paid plans to Slack or any webhook URL, with a second message when the site recovers.

Read next

Sources: UptimeRobot pricing; UptimeRobot location-specific monitoring; AWS: summary of the October 2025 DynamoDB disruption in US-EAST-1. Checked October 18, 2026; vendors change plans and prices, so confirm on their pages before you buy. Outage figures come from CheckHTTP's own checks over the 30 days to October 17, 2026. Runner locations and plans from CheckHTTP's runner configuration. Illustrations by Streamline (CC BY 4.0).