We recently made some changes in the way we deal with domain expiration dates, product expirations, and expiration notifications in generals. In this post I'm going to explain the changes we introduced and how they affect you.

Domain expiration and exceptions

A domain name is quite different than other assets you can purchase. As you probably know, when you register a domain name you get the right to use that domain name for a limited period of time, generally 1 year.

Each TLD is managed by a registry that is also responsible for setting the TLD policies and rules that affect registration, transfer and renewal of each domain that belongs to the particular TLD.

Most TLD can be registered or renewed for a minimum period of 1 year, but there are TLDs such as the .AU that has a minimum registration period of 2 years.

When a domain expires, in most cases it enters a renewal grace period where the current registrant can renew the domain for another period at the standard renewal price. After the grace period, there is another period called redemption period where the domain is deleted at the registry and the only way to reinstate the domain is by paying a redemption/recovery fee, which in some cases can be as high as 10 times the registration cost of the domain.

While this is true for most of domains, including all TLDs under the ICANN regulations such as most gTLDs and new gTLDs (generic top-level domains), the ccTLDs (country-code TLDs) look a little bit more like a jungle. Here are just a few examples:

  • some TLDs don't allow manual renewals, instead the registry (or registrar) requires auto-renewal
  • some TLDs don't have a renewal grace period, instead the domain is deleted immediately upon expiration and it is either released to the public or it has a short redemption period that will require the payment of the fee to recover the domain
  • some TLDs not only have no renewal grace period, but the redemption period starts before the expiration date. To be clear, if your domain is set to expire on June 15th, it's actually possible that if you try to renew it on June 14th you will be requested to pay the redemption fee because the domain was set to pending deletion on June 10th.

In the last couple of years we have received several emails to customer support from people confused by these policies. Sometimes it's hard to explain that the rules vary from TLD to TLD. Generally these weird exceptions are restricted to ccTLDs, but most people would expect any domain to behave like .COM, as this is by far the most common TLD by registration numbers.

Expiration and Renew by

Last week we introduced a new field called renew by to all the products in our system. This new field represents the deadline for you to complete the renewal of the product.

The deadline is computed comparing the deletion date of the domain (the date when the domain registration is deleted and will either be released, or enter the redemption period) and the expiration of the domain. Whatever date comes first, that's the date.

What does it mean in practice?

  • For a TLD like .COM that has an expiration date, a renewal grace period, and a redemption period, the deadline will match the expiration, exactly like it was before.
  • For a TLD that has a delete date before the expiration date, the renew by will match the delete date so that you will no longer face the risk of trying to renew the domain when it's too late (or when you'll have to pay a recovery fee) because it is clearer when you must renew the domain by.

The UI has been updated to reflect this change, and it's now using the Renew by deadline instead of showing the registry expiration date.

Last but not least, our expiring notifications has been updated to notify you based on the renew by deadline, instead of the registrar expiration. The deadline is now also conveniently visible under the domain name.

This is how it looked before.

And this is how it looks now.

Although I was referring only domain names above, the change applies to all products we currently offer that have an expiration date, such as SSL certificates and whois privacy. In these 2 cases, the renew by simply matches the actual expiration, as there isn't any particular exception at this time.

One more thing

All of our products have already been updated to use this new field. Additionally, in the next few weeks we will deploy some extra changes to better manage time zones, and we will process the update of all registered domains. You may notice small adjustments in the expiration day or time for the domain once we've completed this process.

The renew by deadline is not available in the API yet, where we still return an expires_on date attribute. In the next weeks we are also planning to update the API to expose more detailed information.


In general, we recommend that you turn on auto-renewal for your domains, as this is the most effective way to ensure the domains are properly renewed before the expiration.

If you decide to manually renew the domain, we strongly recommend to not wait the last day to renew a domain, as there may be technical issues (either at the registry or registrar) that may cause the renewal to fail, or time-zone issues may lead to confusion.

We think that these changes will eventually lead to a better experience. If you have any feedback about the changes, or the UI, please let us know.