Monitoring
Screenshot Monitoring
Scheduled visual snapshots of a page, diffed pixel-by-pixel against the previous one to catch a change nothing else picks up on.
A Screenshot Monitor captures a real screenshot of a page on every check and compares it against the previous one, pixel by pixel — catching a defaced page, a broken layout, or an unexpected banner, all things that can leave status code, latency, and a keyword assertion completely untouched.
Availability
Requires a plan with Screenshot Monitoring (Professional and above) — each check launches a real headless Chromium instance, the same per-check cost as Synthetic Monitoring.
How it works
curl -X POST https://api.monsphere.com/api/v1/organizations/{orgId}/monitors \
-H "X-Api-Key: msk_live_..." -H "Content-Type: application/json" \
-d '{
"name": "Homepage appearance",
"type": "screenshot",
"target": "https://example.com",
"intervalSeconds": 300,
"timeoutSeconds": 30,
"config": { "screenshotDiffThresholdPercent": 5 }
}'Every check captures a fixed-size viewport screenshot and compares it against the last one on record. screenshotDiffThresholdPercent (5% by default) is how much of the page has to actually change before it's flagged — a low threshold catches subtler changes but is noisier on pages with dynamic content (ads, timestamps, carousels) that never look pixel-identical between two checks even when nothing meaningful changed. A resized or redesigned page is always reported as a full change.
This ships with a zero-config default alert — "Screenshot Changed" — the moment a change clears the threshold, no rule setup required, the same convention the built-in "Monitor Down" alert already uses. A monitor's very first check only ever establishes its baseline; nothing is flagged as "changed" until there's a previous screenshot to differ from.
Check frequency
A 5-minute minimum interval is enforced — a real browser launch and image capture per check costs far more than a protocol probe, so this isn't meant to run at Heartbeat-style frequency.
How it runs
Like Synthetic Monitoring, a Screenshot monitor doesn't go through Blackbox Exporter or Prometheus. It runs on MonSPHERE's own internal scheduler, the same one Heartbeat and Synthetic monitors use, so there's no region to pick.