Skip to content
SSL & Security 5 min read Updated

ERR_CERT_DATE_INVALID: Expired Certificate or Wrong Clock?

The site's SSL certificate has expired or your device clock is wrong. How to tell which one it is and how to fix it.

On this page

NET::ERR_CERT_DATE_INVALID: what it means

Every SSL certificate has a start date and an expiry date, just like a passport. On every connection the browser compares them with your device's clock. If "today" falls outside that window it stops with a warning. That is why the same error has two causes: an expired certificate on the server, or a wrong clock on your device, which makes even valid certificates look "expired" or "not yet valid".

An expired certificate is not an expired domain. When the domain expires you usually get other errors (the site cannot be found, or a parking page appears). See my domain expired.

How it looks in Chrome, Edge, Firefox and Safari

BrowserWhat the page saysCode
Chrome"Your connection is not private" (expired certificate)NET::ERR_CERT_DATE_INVALID
Chrome"Your clock is behind" or "Your clock is ahead" (when Chrome detects that your device's time is wrong)NET::ERR_CERT_DATE_INVALID
Edge"Your connection isn't private"NET::ERR_CERT_DATE_INVALID
Firefox"Warning: Potential Security Risk Ahead" or, when it detects a wrong time, "Your Computer Clock is Wrong"SEC_ERROR_EXPIRED_CERTIFICATE (the site's certificate expired), SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE (an intermediate or root certificate expired), MOZILLA_PKIX_ERROR_NOT_YET_VALID_CERTIFICATE (not valid yet)
Safari"This Connection Is Not Private"—

If the site uses HSTS, the browser does not even offer a way to continue. See "You cannot visit this site right now because the website uses HSTS".

If you are a visitor

  1. Check the date, time and time zone. Turn on automatic time and time zone on your device and reopen the browser.
  2. Old computer that "forgets" the time? If the date jumps back to an old year after every shutdown, the motherboard battery (CMOS) is dead. Replacing it fixes the problem.
  3. Try a second, well-known https site. If every site fails, your device is at fault. If only one fails, that site is.
  4. Very old device without updates? It keeps an old list of "root" certificates. When an old root expires, many sites stop opening (this happened on a large scale in 2021 on old phones and computers). Update the operating system and browser.
  5. Check your antivirus. If it inspects HTTPS traffic with its own certificate and is out of date, it can cause this error. Update it or temporarily turn off its "HTTPS scanning".
  6. Don't continue if you would enter passwords or card details. Tell the owner that their certificate has expired.

If you own the website: the usual causes

  1. Automatic renewal failed. Let's Encrypt certificates last 90 days and renew automatically, but only if the validation check passes. It fails when the domain now points to a different server (you changed DNS or hosting), when the check file under /.well-known/acme-challenge/ cannot be reached (port 80 closed, a redirect to another server, a firewall or a proxy such as Cloudflare), or when the scheduled task (cron) has stopped. Run the renewal manually, read the error message and fix the cause. Steps in our SSL renewal guide.
  2. Renewed, but the server shows the old one. The web server needs a reload to pick up the new certificate. If a CDN, load balancer or proxy sits in front of the site, it has its own copy that must be updated too.
  3. Expired intermediate or wrong chain. With an old "CA bundle" your own certificate is valid but the intermediate has expired (Firefox shows SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE). Install your Certificate Authority's current full chain (fullchain).
  4. The new certificate went to the wrong place. E.g. www was updated but not the non-www name, or a different virtual host. Test every name the site uses.
  5. Site behind Cloudflare. Visitors (and the SSL Checker) see Cloudflare's certificate. If your server's certificate expires, depending on the SSL setting visitors see a Cloudflare error page (e.g. 526) or nothing, not this message. See Cloudflare errors 521, 522, 525, 526.

Why automatic renewal matters more and more: the CA/Browser Forum, which sets the rules for public certificates, voted (SC-081) to shrink their maximum lifetime: up to 200 days from 15 March 2026, 100 days from 15 March 2027 and 47 days from 15 March 2029. Let's Encrypt will move to 64 days from 10 February 2027 and to 45 days from 16 February 2028. You need automatic renewal and an alert when it fails.

See when it expires and whether a new certificate was issued

The SSL Checker shows the expiry date, days left, the issuer and whether the chain is complete. CT Watch shows whether a new certificate was actually issued: if there is a new one there while the SSL Checker still shows the old one, the server never loaded it. For many domains at once use the bulk checker, and with a free account Monitors email you before expiry.

→ SSL Checker → CT Watch → Bulk SSL Checker → Monitors

More: my SSL expired, how do I renew it, free SSL with Let's Encrypt, ERR_CERT_AUTHORITY_INVALID and how to check an SSL certificate.

Common mistakes

  • Renewing and never checking from outside what the server actually serves.
  • Relying on automatic renewal with no alert if it fails.
  • Changing hosting or DNS and forgetting that renewal now happens on the new server.
  • Confusing certificate expiry with domain expiry.

FAQ

Is it the site or my computer?
If every https site shows the error, your device's time or software is at fault. If only one site shows it, also from other devices, its certificate has expired.
I renewed the certificate, why do I still get the error?
Usually the web server was not reloaded, a CDN or load balancer still serves the old one, or the new one went to another virtual host. Check from outside with the SSL Checker.
Is this the same as an expired domain?
No. The certificate and the domain are renewed separately. An expired domain usually shows other errors, e.g. that the site cannot be found.
How often must a certificate be renewed?
Let's Encrypt certificates currently last 90 days and others up to 200, and the maximum lifetime is shrinking step by step to 47 days in 2029. Renewal should be automatic.

Try it now

Related guides

Report a bug