Is your domain about to expire on you?

Check any domain’s registration expiry right now — no account, nothing to install. One real RDAP lookup against the public registry directory; expiry date, days left and registrar straight back.

✅ bsky.app is registered — 742 days left

bsky.app · expires 2028-09-27 · registrar Squarespace Domains II LLC. · RDAP answered in 537 ms · checked just now

Watch this domain free — daily expiry check, alert 30 days out

Or skip the account: get an email 30, 14, 7, 3 and 1 day(s) before this domain expires.
Double opt-in — nothing is sent until you confirm. Every email has a one-click stop link.

This page's URL is shareable — opening it re-runs the check live.

How it works

Watchpup fetches the URL once (GET, 10-second timeout, redirects followed) and reports the final HTTP status and response time. “Up” means the server answered without a client or server error. One vantage, one moment — honest limits apply: a CDN can answer our datacenter address differently than your browser (some send a 202 challenge page to non-browser networks while real visitors see an error); when the answer looks like that, the result says so instead of pretending certainty. Private and internal addresses are refused. Limited to 30 checks per hour per visitor.

The Domain expiry option instead asks the public RDAP registry directory when the domain’s registration runs out and who the registrar is. Use the registrable form (example.com, not www.example.com — www is stripped automatically); a few ccTLD registries don’t publish expiry dates over RDAP, and the result says so honestly.

The MCP server option speaks the Model Context Protocol instead: Watchpup POSTs a real JSON-RPC initialize to the streamable-HTTP endpoint (JSON and SSE replies both understood) and only counts a valid initialize reply as up — an HTTP 200 from a dead reverse proxy or an error page doesn’t fool it. See it working on our live status page for popular MCP servers.

A one-off check tells you now; it can't tell you at 3 am. A free Watchpup account re-checks every 60 seconds and alerts you by email, Slack, Discord, Telegram, ntfy push or webhook the moment something breaks — plus TCP ports, TLS-certificate and domain expiry, DNS records, cron-job heartbeats and public status pages.

Scripts and agents: the same check is a JSON call — curl 'https://watchpup.watchpup.workers.dev/api/check?url=https://example.com', kind=domain for expiry lookups, or kind=mcp for MCP servers (docs).