SSL Certificate Checker - Free HTTPS Certificate Lookup

Check a website's TLS certificate: expiry date and days left, issuer, covered hostnames (SANs), hostname mismatches and chain problems.


An SSL certificate checker connects to a website over HTTPS and reads the TLS certificate it presents. This tool shows whether the certificate is within its validity dates, whether it covers the hostname you entered, whether the server sends a complete chain to a trusted certificate authority, who issued it and how many days it has left, so you can catch an expiring, mismatched or broken certificate before visitors see a browser warning.

How to check an SSL certificate

  1. Enter a hostname such as example.com or www.example.com, or a public IP address. Leave out https://, paths and port numbers.
  2. Click Check certificate. PagesTest connects to port 443, sends the hostname via SNI so the server returns the right certificate, and reads it.

Understanding your results

FieldMeaning
ValidThe certificate is inside its validity dates, covers the hostname you checked, and chains to a trusted certificate authority.
Expired / Not yet validToday is outside the certificate's validity period. Browsers will show an error.
Hostname mismatchNeither the subject CN nor any SAN covers the name you checked, e.g. a certificate for example.com served on www.example.com.
Trusted chainThe certificates the server sent link its certificate to a root certificate authority that browsers and operating systems trust.
Incomplete chainThe server didn't send an intermediate certificate. Browsers often fill the gap themselves, so the site can look fine in Chrome while curl, mobile apps and API clients fail with "unable to get local issuer certificate".
Self-signed / Untrusted issuerThe certificate wasn't issued by a publicly trusted authority, which is common on test servers, appliances and internal networks. Browsers show a security warning.
Certificates sent by the serverThe chain in the order the server presents it: its own certificate first, then the intermediates that link it to a root.
SubjectThe common name (CN) and organisation (O) the certificate was issued to. Domain-validated certificates usually have no organisation.
SANSubject Alternative Names: every hostname the certificate is valid for. Browsers use this list, not the CN. A *.example.com entry covers one level of subdomains only.
IssuerThe certificate authority that signed it, e.g. Let's Encrypt, Google Trust Services, Sectigo or DigiCert.
Valid from / to, Days remainingThe validity window. Automated certificates usually renew when about a third of their lifetime is left.
Serial, SignatureThe certificate's unique serial number and signature algorithm, useful when comparing certificates or contacting the CA.

What this checker does not test

The chain is checked against a standard set of trusted root certificates, like the ones browsers and operating systems ship with. Individual devices can trust a slightly different set, especially old phones and corporate machines. The tool doesn't check whether a certificate has been revoked (OCSP or CRL), which TLS versions and ciphers the server accepts, or whether pages load insecure content. An expired certificate is reported as expired without evaluating its chain. To inspect the chain yourself:

openssl s_client -connect example.com:443 -servername example.com -showcerts

Only port 443 is checked, with a 10-second connection timeout. Private and reserved IP addresses can't be checked, and lookups are limited to 50 per hour.

Common SSL certificate problems

  • Expired certificate. Usually automatic renewal has stopped working: an ACME client (such as certbot) that no longer runs, a DNS or HTTP validation that now fails, or a CAA record that doesn't allow the CA. Check CAA records with a DNS Lookup.
  • Hostname mismatch on www or the bare domain. The certificate must list both example.com and www.example.com in its SANs if both are used.
  • Works in the browser, fails in curl or an app. Usually an incomplete chain: the server sends only its own certificate. Configure it to send the full chain. With certbot, point the server at fullchain.pem rather than cert.pem; in nginx, ssl_certificate must contain the full chain.
  • Old certificate still served after renewal. The web server or load balancer wasn't reloaded, or a CDN in front of the site serves its own certificate. A CNAME Lookup or A Lookup shows whether traffic goes through a CDN.
  • "Could not retrieve the certificate". Nothing answered with TLS on port 443: the site may be HTTP-only, the port may be firewalled, or the domain may point to the wrong server.

Certificates are getting shorter-lived: the maximum lifetime of publicly trusted certificates dropped to 200 days in March 2026 and is scheduled to reach 47 days by 2029. Automated renewal, and a periodic check like this one, matter more each year.

Frequently asked questions

How do I check when an SSL certificate expires?

Enter the hostname above and read Valid to and Days remaining. From a terminal: echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates.

Why does my browser show a warning when this tool says the certificate is valid?

If the dates, hostname and chain all check out, look elsewhere: the certificate may have been revoked, the page may load some resources over plain HTTP (mixed content), the device clock may be wrong, or antivirus software or a corporate proxy may be intercepting HTTPS with its own certificate.

Why does curl say "unable to get local issuer certificate"?

curl couldn't build a chain from the server's certificate to a root it trusts. On a public site this is almost always an incomplete chain, which this tool reports as Incomplete chain; fix it by serving the full chain. If the certificate comes from a private CA, add that CA to the client's trust store instead.

What is the difference between SSL and TLS?

TLS is the modern protocol that replaced SSL; all SSL versions are obsolete. "SSL certificate" is simply the familiar name for a certificate used with TLS.

Does a wildcard certificate cover the bare domain?

No. *.example.com covers www.example.com and shop.example.com, but not example.com itself or deeper names like a.b.example.com. The bare domain must be listed as its own SAN.