live status overall: HEALTHY · evidence: loading… badge /badge.svg · how we compare
continuous verification · for ai-built apps

Your AI shipped.
Is it actually
working?

Watchdog probes your app every 30 seconds from multiple independent locations, walks your user journeys every 5 minutes, verifies pricing-tier enforcement end-to-end, and tells you before your users do. Watchdog monitors itself — the proof you see here is this engine verifying its own claims.

Plans from $9/mo · free tier included · see pricing

watchdog — /healthcheck.json live
›fetching /healthcheck.json…
30s
endpoint probe cadence
5min
journey check cadence
6
independent locations
—
targets monitored
what we verify
scanning right now
endpoints — up · — down · evidence —
client identities anonymized — even here
watchdoghq.dev
self
self-monitoring · live
a client · analytics SaaS
/api/health
endpoint · tier-enforcement pilot
a client · dev-tools MVP
journey
homepage · pricing · auth · api-reject
a client · portfolio site
ssl + headers
cert valid · header sweep
how we compare

Uptime tools tell you it’s up.
Watchdog tells you it works.

Generic uptime probes ping a URL. Watchdog walks through your signup flow, verifies the checkout returns the expected tier, and confirms the API rejects requests without a key. The differences are visible when something goes wrong.

capability WatchdogHQ.dev delivers
User journey testingWalks homepage → pricing → auth → checkout like a real user, not a ping.
Pricing-tier enforcement verificationLogs in as each tier and confirms the limits enforce. Proven on the conformance fixture today; real-app pilots are gated cross-lane.
Multi-location HTTP checksProbes fan out across multiple independent network locations — no single vantage point.
Journey cadence separationEndpoint probes every 30 seconds, full journeys every 5 minutes. Cadence split is intentional.
AI-build failure checksHallucinated dependencies, dead routes, broken auth, hardcoded env vars — the way AI actually breaks apps.
DNS + SSL + security headersCert expiry and header hygiene before browsers warn your users.
Self-describing configDrop a single watchdog.json at /.well-known/ — Watchdog discovers what to test.
Public proof page + badgeA truthful, embeddable badge that reflects real journey results — and stays honest on stale evidence.
Prometheus /metrics + MCP for AI agentsGET /metrics for your dashboards; six MCP tools your AI agent can call to verify before it ships.
// capability comparison — see /competition for the running analysis.
what it actually verifies

It doesn’t ping. It uses your app.

Every 30 seconds Watchdog probes the basics. Every 5 minutes it walks your app like a real user. The signature capability — pricing-tier enforcement — runs against your limits and reports when the contract drifts.

journey testing
▣

It walks your app — it doesn’t just ping it

Homepage loads. Pricing renders. The dashboard redirects to auth instead of leaking the view. The API rejects requests without a key. Watchdog verifies the flows your users actually take.

✓ homepage 200 34ms ✓ pricing 200 41ms ✓ auth_redirect 307 18ms ! checkout 404 ← route missing
tier enforcement
У

Pricing-tier enforcement, verified

Does the demo account actually hit its 10-project limit before charging? Does Pro stop at 500? Watchdog logs in as each tier and confirms the contract. Proven on our conformance fixture today; real-app pilot runs are gated cross-lane.

self-describing
{ }

watchdog.json — one file, full coverage

Drop a single manifest at /.well-known/watchdog.json. Watchdog discovers journeys, tiers, and probes with no dashboard configuration.

/.well-known/watchdog.json → journeys · tiers · probes
multi-location
◬

No single vantage point

Probes fan out across multiple independent network locations. An outage at one isn’t an outage in your status badge. Generic phrasing — we publish no specific fleet topology.

AI-aware checks
⌨

It knows how AI breaks apps

Hallucinated dependencies. Routes that were never wired. Env vars that got hardcoded. Checks built around the failure modes that ship from AI coding sessions.

the badge
◈

Proof you can pin to your README

A live, embeddable badge that turns red the instant a journey, tier, or probe stops working. The same signal that drives your proofs; the badge never fakes green.

for AI agents
⌦

MCP server — your agent monitors its own build

Six tools: scan a URL, read status, fetch the badge, query the run ledger. Your AI can verify a deployment against a watchdog.json before declaring it shipped — without leaving the terminal.

$ watchdog scan https://yourapp.com → 6 checks · 5 journeys · badge: verified
pricing

Four tiers. Flat pricing. No per-host surprises.

Priced on what verified monitoring is worth, not on what monitoring tools usually charge. Free to start, managed when you want it. Add watchdog.json, pick a tier when you’re ready.

Free
$0

Drop in watchdog.json. Get scanned once. Show the gray badge.

  • On-demand scan /api/scan
  • Watchdog Verified shield (gray)
  • Public status page
  • Single app
Start free

no card · no expiry

Verified
$9/mo

Continuous monitoring. Green/yellow/red badge. Email alerts when a journey breaks.

  • 5-min cadence
  • Journey walks
  • SSL · DNS · headers
  • Email alerts
  • Up to 3 apps
Get verified

cancel anytime

Agency
$99/mo

White-label status pages. Programmatic API. Team seats. For shops monitoring client apps.

  • Up to 50 apps
  • White-label status
  • Programmatic API
  • Team seats
  • Priority response
Talk to sales

annual also available

how it works

Drop one file. Watchdog does the rest.

Add a single JSON manifest at /.well-known/watchdog.json. Watchdog reads it on probe time, walks your journeys, hits your tier boundaries, and surfaces drift on the proof page. No dashboard configuration required.

"name": "my-app",
"version": "1.0.0",
"url": "https://myapp.com",
"health": "/api/health",
"journeys": [
  { "name": "homepage",         "path": "/",          "expect": 200 },
  { "name": "pricing",          "path": "/pricing",   "expect": 200 },
  { "name": "auth_redirect",    "path": "/dashboard", "expect": [301, 302, 307, 308] },
  { "name": "api_reject_nokey", "path": "/api/data", "expect": [401, 403] }
],
"tiers": {
  "standard": { "limits": { "projects": 3  } },
  "pro":      { "limits": { "projects": 50 } }
}
proof · the badge

A badge your users can verify.

Drop the shield in your README. The image is rendered live from your last cycle — it can’t lie and it can’t fake-green. The semantics demo below shows what each state actually means on a live /healthcheck-driven badge.

verified watchdoghq.dev 4/4 journeys · 33ms
verified a client · analytics SaaS 4/4 journeys · 31ms
degraded a client · dev-tools MVP 2/4 journeys · checkout 404
critical a client · portfolio site dns unreachable

One HTML tag. The badge is an SVG served from watchdoghq.dev/badge.svg — it always reflects your latest cycle, never cached, never green-washed.

<!-- README --> <a href="https://watchdoghq.dev"> <img src="https://watchdoghq.dev/badge.svg" alt="Watchdog Verified" /> </a>

// semantically truthful: caps to STALE
// when fresh data isn’t available
// so the badge never lies

live now Watchdog Verified · /healthcheck.json

semantics demo — live badge driven by real evidence · see /proof/conformance-app

get started

Find out what your AI
actually shipped.

Point Watchdog at your app. In seconds you'll know it resolves, responds, and has a valid certificate plus sane security headers. No signup required to scan.

# instant health scan — no signup
$ curl "https://watchdoghq.dev/api/scan?url=https://yourapp.com"

# continuous monitoring — for your stack
$ open https://watchdoghq.dev/home

✓ DNS · HTTP · SSL · headers
✓ journeys · pricing-tier enforcement
✓ multi-location, multi-cadence

// we monitor ourselves

Watchdog runs its own journey checks against watchdoghq.dev every 5 minutes. This panel is live — rendered from the same reports that power the badge. ALL PASS

checkurl codelatencysla
✓ home https://watchdoghq.dev/home 200 212ms p95 251ms
✓ competition https://watchdoghq.dev/competition 200 404ms p95 450ms
✓ badge https://watchdoghq.dev/badge.svg 200 213ms p95 247ms
✓ health https://watchdoghq.dev/health 200 211ms p95 236ms
Watchdog Status <img src="https://watchdoghq.dev/badge.svg" />