Skip to content

Domain Expiry & WHOIS Monitoring: Prevent the Worst Outage

Webalert Team
May 22, 2026
11 min read

Domain Expiry & WHOIS Monitoring: Prevent the Worst Outage

Your servers can be healthy. Your database can be fast. Your certificates can still have 70 days left. Your CDN can be green in every region. And then the domain expires.

When that happens, everything above the domain collapses. The website stops resolving. Email stops routing. OAuth callbacks fail. Webhooks bounce. Password reset links break. Customers do not see a tidy "maintenance" page; they see DNS errors, parked-domain pages, or a registrar notice that makes the company look abandoned.

This is the worst kind of outage because it is almost always preventable. Domain expiry does not happen in milliseconds. It announces itself for months through WHOIS and RDAP data, registrar notices, and expiration fields. The problem is that many teams monitor the application, the SSL certificate, and the cloud provider, but not the one asset all of it depends on: the domain registration itself.

This guide covers domain expiry and WHOIS monitoring in production: what to monitor, how domain-expiry incidents happen, which dates matter, how registrar locks and nameservers drift, and how to build alert thresholds that give the right people enough time to renew before users ever notice.


Why Domain Expiry Is Different From SSL Expiry

SSL certificate expiry is bad, but it usually affects one hostname or one certificate chain. Domain expiry affects the entire namespace:

  • www.example.com stops resolving
  • api.example.com stops resolving
  • app.example.com stops resolving
  • MX records stop resolving, so email breaks
  • DKIM/SPF/DMARC lookups stop resolving, so deliverability breaks
  • OAuth redirect URIs and webhook callback URLs fail
  • Users may see registrar parking pages instead of your brand

The two failures are often conflated because both involve dates and certificates. They are not the same. Certificate expiry is covered in SSL Certificate Expiration: The Preventable Outage. Domain expiry is one layer lower: the name itself is gone or suspended.

The operational difference:

Failure What breaks Detection surface
SSL certificate expiry TLS handshake or browser trust Certificate notAfter date
Domain expiry DNS delegation, web, email, brand trust WHOIS/RDAP expiration date
Nameserver delegation drift DNS answers change or vanish Registrar NS records vs expected NS
Registrar lock removed Domain transfer risk WHOIS/RDAP status codes

You need all of these monitored separately.


Famous Domain Expiry Outages

This is not a theoretical failure mode.

  • Microsoft Hotmail UK (2003) - hotmail.co.uk expired and was renewed by a private individual before being returned.
  • Foursquare (2010) - the foursquare.com domain briefly expired because renewal notices were missed.
  • Marketo (2017) - a domain lapse caused service disruption until a customer noticed and renewed the domain.
  • HBO Now (2017) - a domain expiration affected HBO's streaming service.
  • Sorenson Media (2018) - a domain lapse contributed to service availability issues during a bankruptcy period.

The pattern is consistent: the domain is managed outside the normal deploy path, owned by a small set of people, renewed through an aging billing setup, and ignored until it fails.


How Domains Expire in Real Companies

1. Auto-renew fails

The domain has auto-renew enabled, but the card on file expired, the billing contact left, or the registrar payment processor flagged the transaction. Everyone assumed auto-renew was enough.

Monitoring answer: expiration-date alerts at 60, 30, 14, 7, and 1 days out. Auto-renew is a convenience, not a control.

2. Renewal email goes to an abandoned mailbox

admin@example.com or an old employee's email receives the registrar notices. The mailbox is unmonitored, disabled, or filtered.

Monitoring answer: alert the engineering/on-call path from RDAP/WHOIS, not just the registrar billing contact.

3. Ownership transfer gets stuck

A domain transfer between registrars or corporate entities begins, then stalls in pending status. The domain still resolves today, but expiry approaches while nobody owns the renewal workflow.

Monitoring answer: track registrar, registrant organization, and domain status codes. Alert when registrar changes or transfer-related status appears unexpectedly.

4. ICANN verification is missed

Some registrar contact changes trigger verification requirements. If the contact is not verified, the domain can be suspended.

Monitoring answer: watch RDAP/WHOIS status and registrar notices, and keep admin contact emails current.

5. Domain portfolio sprawl

The main .com is renewed, but country-code domains, campaign domains, short links, branded auth domains, and API vanity domains are forgotten.

Monitoring answer: keep a domain inventory and monitor all production-impacting domains, not just the primary apex.


WHOIS and RDAP: The Monitoring Surface

WHOIS is the older protocol. RDAP (Registration Data Access Protocol) is the modern HTTP/JSON replacement used by many registries and registrars.

For monitoring, you care about:

Field Why it matters
Expiration date The headline renewal risk
Registrar Unexpected registrar change can signal transfer or acquisition drift
Nameservers Delegation determines where DNS answers come from
Domain status clientTransferProhibited, serverHold, redemptionPeriod, etc
Updated date Unexpected recent change may indicate admin action or compromise
Registrant organization Ownership drift after acquisition or rebrand

Prefer RDAP where available because it is structured JSON. Fall back to WHOIS parsing for registries that do not expose complete RDAP.

Example RDAP fields:

{
  "ldhName": "example.com",
  "events": [
    { "eventAction": "expiration", "eventDate": "2027-08-14T04:00:00Z" },
    { "eventAction": "last changed", "eventDate": "2026-01-10T12:20:00Z" }
  ],
  "status": ["client transfer prohibited"],
  "nameservers": [
    { "ldhName": "ns1.example-dns.com" },
    { "ldhName": "ns2.example-dns.com" }
  ]
}

Registrar Lock and Transfer Status

Domain expiry is not the only registrar-layer risk. Monitor status codes too.

Common healthy production status:

  • clientTransferProhibited - prevents unauthorized transfer
  • clientUpdateProhibited - optional, prevents unauthorized updates
  • clientDeleteProhibited - optional, prevents unauthorized deletion

Dangerous or urgent statuses:

  • redemptionPeriod - domain expired and is in recovery window
  • pendingDelete - domain may soon be released
  • serverHold / clientHold - domain is not published in DNS
  • pendingTransfer - transfer in progress

Alert if a production domain loses transfer lock or enters any hold/redemption/pending-delete state.


Nameserver Delegation Monitoring

The domain registration points to authoritative nameservers. If those change, every DNS record can effectively change even if your DNS provider zone is untouched.

Monitor the registrar-level NS set:

Expected:
ns1.dns-provider.com
ns2.dns-provider.com

Observed:
ns1.dns-provider.com
ns2.dns-provider.com

Alert when:

  • Any expected nameserver disappears
  • Any unknown nameserver appears
  • Nameserver count changes
  • Parent-zone delegation differs from the records inside your DNS zone

This pairs with DNS Monitoring: The Overlooked Foundation of Website Reliability and the DNS deep-dive sibling post: DNS Propagation, CAA & DNSSEC Monitoring.


Monitoring Intervals and Thresholds

Domain expiry moves slowly, so the check interval can be slower than uptime checks. The alert thresholds should be aggressive enough to route to people who can act.

Recommended thresholds:

Days until expiry Severity Action
90 Info Confirm ownership and auto-renew
60 High Renewal owner confirms billing
30 High Escalate if no renewal ticket
14 Critical Page domain owner and engineering lead
7 Critical Renew manually; do not trust auto-renew
1 Emergency Executive escalation, registrar support

Check frequency:

  • Primary production domains: daily
  • Secondary production domains: daily or every 2 days
  • Campaign and parked domains: weekly
  • Subdomains: DNS monitoring, not WHOIS (subdomains do not have independent registrar expiry)

Domain Inventory: The Part Everyone Skips

Monitoring only works if you know which domains matter.

Build an inventory:

Domain Purpose Registrar Owner Renewal contact Impact
example.com Primary web/app/email Registrar A Platform infra@example.com Critical
example.io Product redirects Registrar B Marketing growth@example.com High
exmpl.link Short links Registrar C Growth growth@example.com High
example-status.com External status page Registrar A Support support@example.com Medium

Track domains used for:

  • Primary website
  • API endpoints
  • Auth redirects
  • Status pages
  • Email sending
  • Short links
  • CDN custom hostnames
  • Customer-facing docs
  • Regional domains
  • Marketing campaigns

The status page domain matters too. If your main domain is down because it expired, a status page on the same domain cannot communicate the incident. See How to Build a Status Page Customers Trust.


What to Alert On

Critical (page)

  • Domain expires in <= 14 days
  • Domain status includes redemptionPeriod, pendingDelete, clientHold, or serverHold
  • Registrar-level nameservers changed unexpectedly
  • RDAP/WHOIS lookup fails for a production domain for > 24 hours

High (notification)

  • Domain expires in <= 60 days
  • Auto-renew status is disabled or unknown for production domain
  • Registrar changed unexpectedly
  • Transfer lock status removed
  • Registrant organization changed

Informational

  • Domain expires in <= 90 days
  • WHOIS/RDAP updated date changed
  • New domain added to inventory without owner

See Alert Fatigue: Notifications That Get Acted On for making these alerts actionable.


Incident Runbook: If Expiry Is Close

  1. Identify registrar and account owner.
  2. Log in and renew manually. Do not wait for auto-renew.
  3. Confirm payment method and renewal receipt.
  4. Verify domain status is not clientHold, serverHold, redemptionPeriod, or pendingDelete.
  5. Confirm parent-zone nameservers match expected.
  6. Run DNS checks for apex, www, API, MX, and status-page domains.
  7. Confirm TLS certificates still validate after DNS recovers.
  8. Communicate via status page and incident channels.

See Incident Runbook Template and Incident Escalation Policy for the incident process.


Domain Expiry Monitoring Checklist

  • Production domain inventory exists
  • Registrar, owner, renewal email, and business impact recorded per domain
  • RDAP/WHOIS expiration date monitored daily
  • Alert thresholds at 90/60/30/14/7/1 days
  • Registrar status codes monitored
  • Transfer lock (clientTransferProhibited) expected on critical domains
  • Nameserver delegation monitored at registrar/parent level
  • Auto-renew enabled but not trusted as the only control
  • Renewal payment method owned by a team account, not one employee
  • Status page domain is separate from primary production domain where possible
  • SSL expiry monitoring configured separately
  • DNS propagation monitoring configured separately

How Webalert Helps With Domain Expiry Monitoring

Webalert can monitor the domain layer alongside HTTP and DNS checks:

  • Domain expiry checks - Monitor RDAP/WHOIS expiration dates and alert at 60/30/14/7/1 days.
  • DNS checks - Confirm the domain still resolves from multiple regions.
  • Nameserver monitoring - Alert when authoritative nameservers drift from expected values.
  • HTTP monitoring - Catch the user-visible failure if a domain resolves to a parking page or registrar hold page.
  • Content validation - Assert the homepage contains your expected brand content, not a registrar landing page.
  • Multi-channel alerts - Email, SMS, Slack, Discord, Microsoft Teams, webhooks.
  • Status page - Communicate domain/DNS incidents separately from application incidents.

Example Webalert configuration:

  • Domain: example.com
  • Expiry alerts: 60, 30, 14, 7, 1 days
  • Expected nameservers: ns1.provider.com, ns2.provider.com
  • HTTP check: https://www.example.com/
  • Content must contain: your expected homepage marker
  • Escalation: domain owner + platform on-call

See features and pricing for details.


Summary

  • Domain expiry is worse than SSL expiry because it takes down web, API, email, OAuth, webhooks, and brand trust at once.
  • Auto-renew is not a monitoring strategy. Billing failures, abandoned contact emails, transfers, and ICANN verification issues still happen.
  • Monitor RDAP/WHOIS expiration dates, registrar status codes, transfer lock, and nameserver delegation.
  • Alert at 90/60/30/14/7/1 days, with critical escalation at 14 days and below.
  • Keep a domain inventory that includes primary, regional, campaign, short-link, status-page, and email-sending domains.
  • Pair domain monitoring with SSL certificate monitoring and DNS propagation monitoring.

The cheapest infrastructure incident is the one you prevent 60 days before anyone can feel it.


Monitor domain expiry before the worst outage starts

Start monitoring with Webalert ->

See features and pricing. No credit card required.

Monitor your website in under 60 seconds — no credit card required.

Start Free Monitoring

Written by

Webalert Team

The Webalert team is dedicated to helping businesses keep their websites online and their users happy with reliable monitoring solutions.

Ready to Monitor Your Website?

Start monitoring for free with 3 monitors, 10-minute checks, and instant alerts.

Start Free Monitoring