Skip to content

How to Find Out When a Domain Expires (ICANN Lookup, whois and RDAP)

4 min read

Applies to: RDAP and WHOIS lookups for .com.org.in.ai and .co.uk domains (whois 5.6.3 on Debian 13); ICANN policy for generic domains

To find out when a domain expires, look it up in the registration data: use ICANN Lookup (lookup.icann.org) in a browser, or run whois example.com on Linux or macOS and read the Registry Expiry Date line. For your own domains, your registrar’s account shows the same date together with the renewal options.

1. In a browser

Open ICANN Lookup, enter the domain and search. It asks the registry directly (over RDAP, see step 3) and shows the registrar, the status and the dates, including the expiry date. Generic domains such as .com.org and .net always work. For country domains (.in.uk.ai and others) it depends on whether that registry offers RDAP; if the lookup shows nothing, use the country registry’s own lookup page.

2. With the whois command

sudo apt install whois        # Debian and Ubuntu
sudo dnf install whois        # AlmaLinux, Rocky Linux
whois example.com | grep -i expir
   Registry Expiry Date: 2027-08-13T04:00:00Z
NOTICE: The expiration date displayed in this record is the date the
currently set to expire. This date does not necessarily reflect the expiration
view the registrar's reported date of expiration for this registration.

Dates are in UTC (the Z at the end). Registries don’t all use the same wording, so grep for expir:

  • .com.org.in.ai: Registry Expiry Date: 2027-01-13T00:12:14Z
  • .co.uk: Expiry date: 13-Dec-2034
  • A registrar’s own WHOIS server may add Registrar Registration Expiration Date:.

If the domain is not registered, you get No match for domain "..." instead. More about the command in get domain and IP information with whois.

On minimal servers and Docker images, whois can fail with getaddrinfo(whois.verisign-grs.com): Servname not supported for ai_socktype. The system is missing /etc/services; install the netbase package and try again.

3. With RDAP (JSON, good for scripts)

RDAP is the modern replacement for WHOIS and returns JSON. The public redirector at rdap.org sends you to the right registry, and jq picks out the dates:

curl -sL https://rdap.org/domain/example.com | jq -r '.events[] | "\(.eventAction): \(.eventDate)"'
registration: 1995-08-14T04:00:00Z
expiration: 2027-08-13T04:00:00Z
last changed: 2026-08-14T08:01:43Z
last update of RDAP database: 2026-09-30T06:49:58Z

Only the expiry date:

curl -sL https://rdap.org/domain/example.com | jq -r '.events[] | select(.eventAction=="expiration") | .eventDate'

This is easy to put in a daily cron job that warns you when one of your domains is within 30 days of expiry.

Registry date or registrar date?

The NOTICE in the WHOIS output matters. The registry’s date is when the registrar’s sponsorship at the registry ends, which is not always the end of what you paid for. Some registries renew a domain automatically on its expiry date, and according to ICANN a registrar may offer an auto-renew grace period of 1 to 45 days in which an expired domain can still be renewed. So a public lookup can show a date a year ahead even though you have not renewed. The date in your registrar account is the one that counts for you.

If Ucartz is your registrar, log in to the client area and open your domains list: it shows each domain’s due date, and you can renew or turn on auto-renew from there. New domains can be registered from the domain search page.

What happens when a domain expires

For generic domains, ICANN’s Expired Registration Recovery Policy sets out what happens:

  • The registrar sends renewal reminders about one month and one week before expiry, and one more within five days after.
  • Before it deletes an expired domain, the registrar interrupts its DNS, so the website and email stop working while the domain can still be renewed.
  • After deletion, the registry keeps the domain in a 30-day Redemption Grace Period in which the owner can still restore it. Registrars must publish their restore fees.

The notices go to the registrant email address, so keep that address current. Country domains (.in.uk and others) follow their own registry’s rules. See also stages for a domain after expiry.

Checking an SSL certificate rather than the domain? That is a different date: see verify SSL certificate expiry with OpenSSL.

Official documentation: ICANN: domain name renewals and expiration and ICANN: Expired Registration Recovery Policy for registrants.

Related services

Web hosting

shared hosting on Virtualmin with NVMe storage, free SSL and email.

SSL certificates

DV, OV and wildcard, with free installation help.

Reseller hosting

white-label cPanel hosting for your own clients.

Was this answer helpful?

Still stuck? Open a ticket