Free for 1 site · No credit card · Two-minute setup

Find out your client's site is down
before they call you.

Confirmed uptime, SSL, and homepage health on every site you ship — set up in two minutes, with no 3am false alarms.

Confirmed alerts only Slack & webhook delivery Two-minute setup
Screenshot of a real Monitrova monthly report for php.net showing 99.89% uptime, 4,381 checks, and two homepage incidents in April 2026
Real monthly report from a site I monitor.
This is you

Three kinds of people end up here.

Each one runs sites for a slightly different reason. Pick the closest match — the rest of the page is written for all three.

Freelance web developer

“My client called me about an outage I didn’t know about.”

Most monitors flood your inbox until you mute them. Monitrova confirms the problem first, classifies what actually broke, and sends one alert with the answer. Plus a monthly health report per site — ready to forward as part of your maintenance retainer.

On Starter and up: Site Agent adds a WordPress timeline so you know which plugin broke things, not just that they broke.

See the alert pipeline →
Small agency or studio

“The Slack channel goes off for every blip and nobody reads it anymore.”

Per-site sensitivity, flap bundling, and a daily digest mean the channel pings when it matters. Audit log shows which alert decisions fired and why — so when a senior dev asks “did we miss it?”, you have an answer.

Pro covers 50 sites with 1-minute checks — agency volume at €19.99/month.

See per-site controls →
Solo developer / indie hacker

“I just want the JSON and to be left alone.”

Drop a webhook URL, pipe it anywhere — PagerDuty, OpsGenie, a personal Slack, a Discord bot. Confirmed alerts only. Quiet hours. Exponential backoff that spaces out repeat alerts so you’re not paged every minute. No marketing email from the monitor itself.

Free plan covers one site, forever — no card, no trial countdown.

See the webhook payload →
Daily view

All your sites on one screen

Open the dashboard with your morning coffee. Health, last-checked time, and what’s flagged — before anything turns into a phone call.

Screenshot of the Monitrova dashboard showing 3 active sites (example.com, PHP.net, SourceCode) with their health status, last-checked time, SSL and SEO indicators
What I check first thing in the morning.
What gets monitored

Three layers, one timeline per site

Uptime, SSL, and homepage health — all stitched together so you see the cause, not just the symptom.

Uptime

HTTP/HTTPS checks at plan intervals. Per-site timeout, redirect handling, response time logged in milliseconds.

SSL certificates

Issuer, expiry, hostname match. Tiered alerts at 30/14/7/3 days remaining — each fires once.

Homepage health

Title, meta, h1, canonical, robots.txt, sitemap. Plus integrity classification: a "database error" page reports as a backend incident, not a missing meta tag.

WordPress intelligence Starter plan and up

Alerts that name what changed, not just what broke.

Site Agent is the WordPress plugin that turns alerts into a timeline — every plugin update, theme switch, admin login, fatal error and WooCommerce gateway failure, captured back to Monitrova. So when an alert fires, the answer’s already on the incident page.

Screenshot of the Monitrova Site Agent panel for sourcecode.es, showing Connected status, 104 info events and 2 warnings in the last 24 hours, a heartbeat snapshot with WordPress 7.0 and PHP 8.1.34, the active API token, and the recent heartbeat event feed
Real Site Agent dashboard from a WordPress site I run — the heartbeat snapshot is what fires when an alert is held back.
The no-noise pipeline

Other monitors send by email.
Monitrova sends through a decision service first.

Every alert decision — sent, suppressed, deferred, or summarised — is logged with a reason. No silent dropouts.

Smart classification

"Database error" is not an SEO problem.

When your homepage renders a PHP fatal, framework crash page, or "Error establishing a database connection", Monitrova classifies it as a critical backend incident. The failing SEO checks show as downstream symptoms — the way they actually are.

Standard Monitors

Three noisy "SEO problem" warnings (missing title, missing meta, missing h1) — while the site is actually down.

Monitrova Precision

Recognises the database-error signature immediately and fires a single Critical Backend Incident.

Plans

Three plans. One upgrade story.

Free catches the outage. Starter adds the WordPress timeline so you know what changed. Pro scales it across your whole client roster. Every plan includes the full no-noise alert pipeline — flap detection, quiet hours, Slack & webhook delivery.

Free

For one personal site.

Free
  • 1 site
  • 30-minute uptime checks
  • Site Agent — Starter plan and up
  • Monthly reports
Start free

Pro

For agencies and small teams.

€19.99 / month
  • 50 sites
  • 1-minute uptime checks
  • Site Agent — WordPress timeline
  • Priority support
Choose Pro

Full feature comparison on the pricing page.

Delivery

Email, Slack, and any webhook receiver.

Every alert fires through three channels at once. The same incident, rendered for the surface where you actually pay attention.

Full webhook payload
POST $site->webhook_url application/json
{
  "event":       "alert",
  "alert_type":  "down",
  "severity":    "critical",
  "site": {
    "id":    42,
    "label": "acme-shop.com",
    "url":   "https://acme-shop.com"
  },
  "incident_id": 1873,
  "subject":     "[DOWN] acme-shop.com is not responding",
  "timestamp":   "2026-05-02T09:14:23Z",
  "text":        "[CRITICAL] acme-shop.com is down"
}
Who's behind this

Built honestly, in the open.

Early days for Monitrova. Here’s exactly what that means.

Built by one person, by hand.

Wayne Tomlinson at sourcecode.es. PHP 8.4 on MariaDB. No framework, no Composer, no SDK lock-in. The whole codebase audits in an afternoon.

Running on 16 of my own sites.

Monitrova was built because I needed it. It’s the first thing I check in the morning. If it stops working, my own sites are the first to break — so I have skin in the game.

71 of 71 unit tests passing.

Auth, account scoping, CSRF, prepared statements, output escaping, the alert pipeline — reviewed and tested. Security disclosure process at /.well-known/security.txt.

Common questions

Answers, briefly.

Is there a free plan?

Yes. One site, 30-minute checks, full alert pipeline, monthly report. No credit card required, no expiry.

Is Site Agent included in the Free plan?

No. Site Agent (the WordPress sensor) is included from the Starter plan upwards. The Free plan still gives you uptime, SSL, and homepage health monitoring — plus the full no-noise alert pipeline. Upgrade to Starter or Pro at any time to add the WordPress timeline of plugin updates, admin logins, fatals and WooCommerce events.

Do I need to install anything?

No. Add a URL, monitoring starts. No DNS records, no plugins, no code changes, no JS snippet on your site.

How often are checks?

Plan-driven. Free runs every 30 minutes, Starter every 10 minutes, Pro every minute. SSL cadence is 24 hours on Free and Starter, 12 hours on Pro. Homepage health checks run daily across all plans.

How do you stop false alarms?

Non-critical issues — a missing canonical, a temporarily unreachable robots.txt, a brief 503 — start a suspected incident on the first failure. No email yet. The next scan either confirms (alert fires) or clears it silently (no email at all). One-off blips never reach your inbox.

Critical issues — site down, SSL invalid, homepage noindex, backend error — skip confirmation and fire immediately.

What if a site keeps going up and down?

If the same (site, problem) opens and recovers three or more times in 24 hours, the system stops sending individual alerts and bundles them into one daily digest per site — with failure/recovery counts, first/last seen times, and likely-cause checklists.

Recovery emails fire only when the original alert was actually sent. If it was held back (cooldown, suspected, flapping summary, or quiet hours), the corresponding recovery is suppressed too. You never get “great news, your site is back up” for an outage you weren't told about.

What's the data retention?

Free 15 days, Starter 90 days, Pro 365 days. Older incidents and check results are pruned automatically.

Stop being the last to know.

Add your first site in two minutes. Free plan, no card. Upgrade if your site count grows.