Self-hosted uptime monitoring on Cloudflare Workers and D1
6 open-source uptime monitors on Cloudsteading run on Cloudflare Workers and keep check results in D1: Uptime Guard, UptimeFlare and Nabız. A Cron Trigger starts the checks on a schedule, up to once a minute, and D1 stores each result for the history and status page. Some add Durable Objects to coordinate checks or alerts.
How each one is built
Every project uses D1 and is mapped to UptimeRobot. The rest of its Cloudflare setup, and its license, decide how much work it is to run.
| Project | License | Cloudflare | Replaces |
|---|---|---|---|
| Uptime Guard | MIT | D1, Workers | Better Stack, Pingdom, UptimeRobot |
| UptimeFlare | Apache-2.0 | D1, Durable Objects, Pages, Workers | Better Stack, Pingdom, UptimeRobot |
| Nabız | MIT | D1, Workers | Better Stack, Pingdom, UptimeRobot |
| StatusBeam | MIT | D1, KV, Workers | Better Stack, Pingdom, UptimeRobot |
| Atalaya | Apache-2.0 | D1, Durable Objects, Workers | Better Stack, Pingdom, UptimeRobot |
| Uptime Scarecrow | MIT | Access, D1, Durable Objects, Email Workers, KV, Queues, Workers, Workers AI | Statuspage, UptimeRobot |
Frequently asked
How often can a Cloudflare Worker check my site?+
Cron Triggers fire at most once a minute, so one-minute checks are the floor. UptimeRobot's free plan checks every five minutes. More checks mean more Worker requests and D1 writes, so a long list of monitors at one-minute intervals is where the free tier runs out.
Will a monitor on Cloudflare notice a Cloudflare outage?+
Not reliably. If Cloudflare itself is down, the monitor and its status page may be down with it. If Cloudflare outages matter to you, pair it with one outside check.
What else do these projects use besides D1?+
Counting the 6 projects listed here: Workers (6), Durable Objects (3), KV (2), Access (1), Email Workers (1), Pages (1). Each repository's Wrangler config shows exactly which bindings it needs.





