Domain security & uptime monitoring
Integrated alerts via Email, Slack, JIRA, Linear, and Teams.
Add a domain
30 seconds, no agent, no DNS change.
We watch it two ways
Up or down every 10 seconds. Safe or exposed every day.
You get the message
In Slack, email, JIRA, Linear or Teams, only when three nodes agree.
Security posture
scanned 2h ago · 88/100 · up from C 61 in 30 days
Timeline · uptime and security, last 30 days
Example monitor · illustrative data
Is it up?
Checked every 10 seconds from six locations. We only alert when three of them agree, so you’re never woken up by a blip.
Monitor a site free →Is it safe?
Every day we check your certificate, security headers, DNS, email security and exposed software for known vulnerabilities, and tell you the moment something changes.
Scan a domain now →Can you prove it?
A dated timeline and reports for every domain, a trust badge for your own site, and control-by-control evidence for SOC 2, ISO 27001 and PCI DSS Pro
See the evidence →One monitor, every kind of alert
Down at 10:37, back at 10:41. A version past end-of-life. A header that showed up. The same monitor sends all three to the channel you already watch, and keeps them on the domain’s timeline.
Sample alerts · real ones carry your domain, your channels, your ticket keys
example.com is down · HTTP 502 from 3 of 6 nodes
Consensus reached in 11s · Cloudflare offline page activated · recovered 10:41 (4m 12s)
Sent to Slack #ops · email · JIRA OPS-118
nginx 1.18.0 reached end of life · 3 known CVEs, 1 actively exploited
Severity high · Fix: upgrade to 1.26 or hide the version string
Sent to Slack #security · JIRA SEC-241
HSTS and Content-Security-Policy added · grade C → B
Strict-Transport-Security: max-age=31536000; includeSubDomains
Sent to email digest
More than up or down
Uptime tells you the site answered. The same monitor also records what it answered with: the software it discloses, the headers it sends, the certificate it presents. When any of that changes you hear about it, and the change is kept.
The server, framework and CMS versions your site discloses, matched against end-of-life dates and known CVEs, with actively exploited ones escalated. New, resolved and escalated findings go out on the same channels as outages: email, Slack, JIRA, Linear, Teams.
A timeline per domain with incidents and security changes side by side: a header dropped, a certificate swapped, a grade that moved, an outage. Kept 12 months on Free, 2 years on Pro, forever on Enterprise. Evidence, not just a dashboard.
Every check mapped to SOC 2, ISO 27001, NIST CSF, NIST 800-53, PCI DSS and HITRUST, with evidence export for your auditor.
When downtime hits, visitors stay on your URL and see a branded offline page instead of an error. When you recover, they're redirected automatically. No third-party status page to maintain. No manual updates. No forgotten "we're back!" posts.
Outage confirmed
Consensus reached — your origin is genuinely down
Worker route activated instantly
Cloudflare intercepts requests and serves your offline page
Recovery detected — route removed
Traffic flows back to your origin automatically
Works on Cloudflare's Free plan
Cloudflare Workers includes 100,000 free requests per day — more than enough to serve your offline page during any outage. No paid Cloudflare plan required.
Use the default page or provide your own custom HTML. Just needs a Cloudflare API token with Worker Scripts and Workers Routes permissions.
503 — Service Down
Something went wrong and our monitoring caught it. Engineers are investigating.
Auto-reloads when back up
"Night Rain" offline page — served via Cloudflare's edge network · auto-reloads when back up
Every incident gets a detailed timeline showing exactly what happened, when, and how it was resolved.
example.com
Started
Feb 27, 11:18:54 AM
Duration
3m 21s
Cause
HTTP 500
Affected Servers
6 nodes
Last Successful Check · Feb 27, 2026 11:18:36 AM
Los Angeles, US · HTTP 200 · 14ms
Failure Detected · Feb 27, 2026 11:18:54 AM
London, UK · HTTP 500 · 396ms
“HTTP 500 Internal Server Error”
Outage Confirmed (5 servers) · Feb 27, 2026 11:18:56 AM
Chicago, US · HTTP 500 · 168ms
Los Angeles, US · HTTP 500 · 14ms
Tokyo, Japan · HTTP 500 · 320ms
Santiago, Chile · HTTP 500 · 441ms
Johannesburg, South Africa · HTTP 500 · 387ms
6 of 6 nodes agreed · threshold: 4
Offline Page Activated · Feb 27, 2026 11:18:57 AM
Cloudflare Worker route enabled · visitors see maintenance page
JIRA Ticket Created · Feb 27, 2026 11:18:57 AM
IUJ-5
Slack Alert Sent · Feb 27, 2026 11:18:57 AM
Slack webhook
Email Alert Sent · Feb 27, 2026 11:18:57 AM
Recovered · Feb 27, 2026 11:22:15 AM
London, UK · HTTP 200 · 392ms
Recovery Confirmed (different server) · Feb 27, 2026 11:22:16 AM
Chicago, US · HTTP 200 · 13ms
Recovery Confirmed (different server) · Feb 27, 2026 11:22:17 AM
Los Angeles, US · HTTP 200 · 14ms
4 of 6 nodes agreed · threshold: 4
Recovery Confirmed (3 servers) · Feb 27, 2026 11:22:18 AM
Tokyo, Japan · HTTP 200 · 320ms
Santiago, Chile · HTTP 200 · 441ms
Johannesburg, South Africa · HTTP 200 · 392ms
Offline Page Deactivated · Feb 27, 2026 11:22:19 AM
Cloudflare Worker route removed · normal traffic restored
JIRA Recovery Updated · Feb 27, 2026 11:22:19 AM
IUJ-5
Slack Recovery Sent · Feb 27, 2026 11:22:19 AM
Slack webhook
Email Recovery Sent · Feb 27, 2026 11:22:19 AM
Detection speed depends on how your site fails. A hard crash is caught in seconds. A slow timeout takes longer to confirm — but we still catch it.
Why the range? Every check requires consensus — multiple nodes must independently confirm the outage before an alert fires. This eliminates false positives but means detection time scales with how long your server takes to fail.
You can configure per-domain timeouts to fine-tune detection speed for critical services.
Without Monitoring
With InternetSecure
Every check, every 10 seconds, from a global node.
Reporting & compliance
Every scan is kept as evidence. When an auditor asks whether a control was met, show them every day of the year, not a screenshot from this morning.
Each check is mapped to its control, with the rule, what the scan saw, and every day it was met or missed.
A screenshot for the ticket, CSV for the spreadsheet, PDF for the audit folder.
File a ticket for every scan, or only when something changes.
PCI DSS 4.0 · 4.2.1
example.com · last 365 days
SSL Certificate Valid
Result: Valid, 61 days left
TLS Cipher Strength
Result: TLS 1.3, strong ciphers only
HSTS Enabled
Result: max-age=31536000; includeSubDomains
No Mixed Content
Result: No insecure resources found
Every day of the period
Met on 363 of 365 days checked · 1 lapse, met again
Jul 12–13: certificate expired, renewed the next morning.
Sample report. Yours is built from your own scans.
Pricing
Plus $5 · Pro $20 · Enterprise $149 a month. 30-day Pro trial, nothing charged today, cancel anytime.