For the people who answer for other people's websites
You shouldn't hear it from your client first.
OctoPing watches every site you're responsible for — uptime, SSL, DNS, domain expiry, where it's hosted, and the page content itself — from four vantage points, and tells you what broke before anyone else notices.
OctoPing is in early access. Join the waitlist and we'll email you the moment registrations open.
SSL certificate expires in 6 days
Connection timeout from all three regions
A ping check tells you the site is down. It never tells you the rest.
Down is the one failure everybody catches. These are the ones that reach your client before they reach you.
The certificate expired on a Saturday.
You found out Monday, from a customer's screenshot of a browser warning.
The domain auto-renewed to a card that expired in March.
Nobody was watching the registry. The first sign was the site resolving to a parking page.
Someone edited the pricing page.
No deploy, no ticket, no note. You found out during the invoice dispute.
The site moved hosts.
It's slower now, it's on a different network, and nobody mentioned the migration.
It's up for you in Madrid, down for everyone in Singapore.
You refreshed, it loaded, you closed the ticket. The client's customers kept seeing nothing.
The nightly backup stopped running six weeks ago.
Cron fails quietly. You'd have found out the day you needed to restore.
Eight arms. Eight ways a site breaks.
Every site you add gets eight independent checks. Turn on what matters for that client, leave the rest off.
- 01
Uptime
HTTP checks as often as every 30 seconds, with a response-time threshold that marks a site degraded before it's fully down.
- 02
SSL certificate
Issuer, subject, chain validity and expiry date — with a warning a configurable number of days before it lapses.
- 03
DNS nameservers
Alerts the moment your NS records change, which is the difference between a planned migration and a hijack.
- 04
DNS MX records
Alerts when mail routing changes underneath you — the failure nobody notices until replies stop arriving.
- 05
Page content
Hashes the readable text rather than raw HTML, with XPath exclusions for the parts that are supposed to change.
- 06
robots.txt
A full content diff plus an indexability flag, so a stray Disallow doesn't quietly delist a client from search.
- 07
IP & hosting
Resolves A and AAAA records, looks up the ASN and owning organisation, and knows CDN ranges — so a Cloudflare IP rotation isn't a false alarm.
- 08
WHOIS
Registrar, expiry date, registrant, DNSSEC status and domain locks, with a warning well before the domain lapses.
Down, or just down for you?
Every site is checked from the US, Europe, Asia and your primary checker. All four send an identical request — same headers, same user agent, same timeouts, same retry policy — so a difference between regions describes the site, not the monitor.
When Europe fails and Asia doesn't, that's routing. You can say so before you start apologising for an outage that never happened.
- Primary142ms
Your main checker. Runs as often as every 30 seconds and drives alerting.
- US138ms
Regional probe confirming from North America every five minutes.
- Europeconnect timeout
Regional probe confirming from Europe every five minutes.
- Asia402ms
Regional probe confirming from Asia every five minutes.
Alerts that don't cry wolf.
Per notification you set how many consecutive failures it takes to fire, how often it repeats, and which triggers it listens for. Recovery always gets through.
Branded HTML with a plain-text fallback, to as many recipients as you like.
Slack
Installed as a real Slack app, posting rich Block Kit messages to a channel you pick.
Discord
Colour-coded embeds through a webhook URL.
Webhook
Signed JSON POST with an HMAC-SHA256 signature, custom headers, and retry with backoff.
Browser push
Native notifications to workspace members who opt in.
- Every attempt is logged — sent, failed, or deliberately skipped, with the reason.
- Adding a site auto-creates a default email alert, so nothing is unmonitored by accident.
- A monthly summary lands on the first of the month: uptime, downtime, outages and content changes.
Numbers that survive being questioned.
Most of this is invisible until a client asks you to explain a number. Then it's the whole product.
One status, everywhere.
The uptime on your dashboard is the uptime on the detail page and the uptime on the status page. One rule, computed in one place, rather than three views quietly disagreeing.
Downtime reconciles with your alerts.
Reported downtime is measured from the same check stream that decides when to alert you, so the report and your inbox can't tell different stories.
An incident is one outage, not twelve alerts.
An outage runs from first failure to first recovery. A two-hour outage with ten-minute repeat notifications is one incident — not one row per email.
Failures are classified, not guessed.
Timeout, DNS failure, TLS problem, 4xx, 5xx — decided in one place from the actual transport error, not inferred from a status code after the fact.
A status page your client can bookmark.
Your logo, header image, favicon, colours, fonts, corner radius and badge style — or your own CSS and head tags when that isn't enough. Custom domains are coming at launch.
- Ninety days of history on every component.
- Websites and heartbeats side by side on the same page.
- Incidents with a four-stage lifecycle — investigating, identified, monitoring, resolved.
- A public update timeline your client can follow without emailing you.
- Per-component status overrides while an incident is open.
Degraded performance in one component
Updated a few moments ago
- Marketing siteOperational
- Checkout APIDegraded performance
- Nightly backupOperational
# nightly backup, 02:00
0 2 * * * /opt/backup.sh && \
curl -fsS https://octoping.com/api/ping/your-secret-keyFor everything that doesn't have a URL.
Backups, cron jobs, ETL runs, CI pipelines. Give the job a URL to hit when it finishes. If it doesn't check in within its interval plus a grace period, you hear about it — through the same five channels.
Uptime is measured by how many expected check-ins actually arrived, not a healthy/unhealthy flag that only describes this second.
You're not watching one site. You're watching forty.
Everything here assumes the plural.
- Workspaces
- One per client or per team, with data scoped to it at the database level.
- Roles
- Admin, Member and Viewer for your own team — a Viewer sees every site in the workspace, so it's for your people, not a client login.
- Groups
- Organise sites into named, reorderable groups and filter the whole dashboard by them.
- Bulk actions
- Enable, disable, re-interval or delete up to a hundred sites in one operation.
- Private targets
- Custom headers and HTTP Basic Auth per site, with the password encrypted at rest.
- Uptime badges
- Embeddable SVG badges for a README, a client report, or your own site.
- Retention
- Keep 30, 90, 180 or 365 days of history, chosen per workspace.
We find out the same way you do.
We run our own sites on OctoPing, on a status page built with the same tool you'd hand a client. It's public, and it's live right now.
- Axiolo Website99.94%uptime
Your history has no hole in it.
When OctoPing is unreachable, the regional probes buffer their results and flush them once it's back.
The monitor going down isn't the same as you not being told.
After two consecutive failures the probes email you directly, bypassing OctoPing entirely.
A dead probe is a monitored probe.
Each region pings its own heartbeat after every run, so a region that stops reporting raises an alert like anything else.
Questions worth asking before you move forty sites.
How often does OctoPing check my sites?
Your primary checker runs on whichever interval you pick per site: every 30 seconds, 1, 2, 5 or 30 minutes, or hourly. The three regional probes confirm every five minutes. The other checks run on their own schedules — SSL and WHOIS daily or weekly, DNS and hosting hourly through daily, content as often as every five minutes.
Is OctoPing open for signups?
Not yet — we're in early access. Join the waitlist with your name and email and we'll email you the moment registrations open. Joining costs nothing and never asks for a card.
Can I monitor sites behind Basic Auth or custom headers?
Yes. Each site can carry its own HTTP headers and Basic Auth credentials, and the password is encrypted at rest. The regional probes receive the same configuration, so a staging site is checked identically from every vantage point.
What happens if OctoPing itself goes down?
The regional probes keep checking. Results are buffered and flushed when OctoPing returns, so your history has no gap. And after two consecutive failures to reach OctoPing, the probes email you directly — the alert doesn't depend on the thing that's broken.
Can I put a status page on my own domain?
Not yet — custom domains are coming at launch. Every status page is already fully white-labelled (your logo, header image, favicon, colours, fonts and custom CSS), it just lives at octoping.com/status/your-slug until then, so what your client bookmarks still looks like your work, not ours.
Does it work for things that aren't websites?
Heartbeats cover anything that runs on a schedule: backups, cron jobs, ETL pipelines, CI. The job hits a URL when it finishes; if it doesn't check in within its interval plus a grace period, you get alerted through the same channels as a website outage.
How long is my data kept?
You choose per workspace: 30, 90, 180 or 365 days. Uptime windows and status page history are clamped to whatever you pick, so the numbers never claim more history than actually exists.
Stop finding out last.
Join the waitlist now, and you'll be checking your first site the day registrations open.