TLS certificate expiry
How many days are left on the certificate the site is serving. Browsers refuse the site outright the moment it expires, so it is worth knowing about long before the last week.
A TLS certificate is valid only for a fixed window. Since March 2026 a public certificate can live at most 200 days, many (Let's Encrypt among them) last 90 days or less, and the limit keeps shrinking. When the end date passes, browsers show a full-page warning instead of the site, API clients and webhooks fail, and crawlers stop fetching pages. Nothing on the server has to break; the date alone is enough.
How SiteScan reads it
The scan takes the certificate the site actually serves over HTTPS and counts the whole days left until it expires. More than 30 days is green, 30 days or fewer is amber, and a date in the past is red.
What to do
- Let an ACME client renew automatically (
certbot renewon a systemd timer or cron) and reload the web server afterwards: a new file on disk that the server never loaded still expires. - Amber on an automated setup usually means renewal has been failing quietly. Check the client's log, the HTTP or DNS challenge, and whether a CDN or load balancer serves its own copy of the certificate.
- Keep both dates in monitoring: read why auto-renewal still fails and check the domain registration expiry too.
See this check on your own site
Run a free scan: the report shows this row for your domain along with the other checks of the site audit.
More in “TLS certificate”
What SiteScan checks
TLS certificate
- TLS certificate expiry
- Outdated TLS versions (TLS 1.0/1.1)
- TLS certificate chain
- TLS certificate issuer
- Certificate signature algorithm
Domain registration
- Domain registration expiry
- Registered domain name
- Domain registrar
- Domain registration date
- Domain last updated date
- Domain status codes (EPP)
- Domain transfer lock
- Registrar abuse contact
- RDAP and WHOIS data source
Indexing
- robots.txt file
- CSS and JS blocked in robots.txt
- XML sitemap
- Sitemap index file
- Off-domain URLs in the sitemap
- Sitemap lastmod dates
- Broken URLs in the sitemap
- RSS and Atom feed
Addresses & redirects
Security headers
- HTTP security headers and grade
- Strict-Transport-Security (HSTS) header
- Content-Security-Policy (CSP) header
- X-Content-Type-Options: nosniff
- X-Frame-Options and clickjacking
- Referrer-Policy header
- Permissions-Policy header
- HSTS preload list
- CORS and cross-origin reads
- HTTP TRACE method
Delivery & reputation
- Cache-Control header for HTML
- ETag and Last-Modified revalidation
- HTTP/3 and QUIC support
- Server version disclosure in headers
- DNS blocklist (DNSBL) check
Internal links
Exposure
- Exposed sensitive files (.env, .git, backups)
- Directory listing enabled
- Public JavaScript source maps
- Exposed WordPress endpoints
Well-known files
- security.txt file
- llms.txt for AI assistants
- llms-full.txt file
- ads.txt authorized sellers file
- humans.txt file
- Well-known change-password URL
DNS & email
- MX records (mail servers)
- SPF record
- DMARC record and policy
- DNSSEC signing
- CAA record
- Nameserver redundancy
- IPv6 support (AAAA record)
- MTA-STS policy
- TLS-RPT reporting record
- BIMI record (brand logo in email)
- Wildcard DNS record
- Dangling CNAME and subdomain takeover
Privacy & consent
- Analytics and tracking scripts
- Cookie consent banner
- Privacy policy link
- Terms of service link
- Imprint (Impressum)
- Accessibility statement
Core Web Vitals
- Lighthouse performance score
- Largest Contentful Paint (LCP)
- Cumulative Layout Shift (CLS)
- Interaction to Next Paint (INP)
- CrUX field data vs lab data