A few years back I let a domain lapse. Not a throwaway one either. It was live, had traffic, and I just forgot the renewal date sitting in some registrar account I hadn't logged into in months. By the time I noticed, it was in redemption and cost me a small fortune to get back.

The annoying part is that it was completely avoidable. I owned maybe fifteen domains at the time, spread across three registrars, and I had no single place that told me what was expiring and when. So I wrote a script.

The manual way is painful

You can check one domain with whois:

whois example.com | grep -i "expiry"