SSL checker

Test any site's SSL/TLS certificate the way a strict client does: expiry, hostname coverage, full chain of trust, TLS version and cipher. Flags missing intermediates that browsers hide.

TLS certificate
Try:

The badssl.com examples show what each kind of failure looks like.

The chain of trust, and why "it works in my browser" misleads

Your certificate is signed by an intermediate CA, which is signed by a root CA that operating systems and browsers ship with. The server must send the intermediate along with its own certificate. Toggle it off and see which clients cope:

Root CAin the client's trust storenever sent by the server
Intermediate CAsent by the server
Leaf: your-site.comsent by the server

The server sends its leaf certificate plus the intermediate. The client checks each signature up the chain until it reaches a root it already trusts in its store. Valid.

Check from the command line

  • openssl s_client -connect example.com:443 -servername example.com -showcerts </dev/null: the full chain and handshake.
  • echo | openssl s_client -connect example.com:443 2>/dev/null | openssl x509 -noout -dates -subject -ext subjectAltName: just dates and names.
  • curl -vI https://example.com: what a strict client sees.

Paste any of that output into the output explainer if it's not clear. Also check which CAs are allowed to issue for your domain with the CAA lookup.

Questions people ask

What does an SSL checker test?
It connects to the server over TLS the way a browser does, then reports the certificate's validity dates, whether it covers the hostname (subject alternative names), whether the chain leads to a trusted root, the protocol version (TLS 1.2 / 1.3) and cipher negotiated.
What does "unable to get local issuer certificate" mean?
The server didn't send the intermediate certificate, so the client can't link your certificate to a trusted root. Configure your server with the full chain file (fullchain.pem for Let's Encrypt), not just the leaf certificate. The explainer on this page shows why browsers may still accept it.
Why does it say hostname mismatch?
The certificate doesn't list the name you connected to. A certificate for example.com doesn't cover www.example.com unless both are in the SAN list; a wildcard *.example.com covers one level only (not example.com itself, nor a.b.example.com).
How long are SSL certificates valid?
Public certificates are capped at 398 days today. The CA/Browser Forum has approved a phased reduction to 200 days from March 2026, 100 days from March 2027 and 47 days from March 2029, so automated renewal (ACME) is essential. Let's Encrypt certificates last 90 days.
Is TLS 1.0 or 1.1 still acceptable?
No. Both are deprecated (RFC 8996) and disabled in all major browsers. Servers should offer TLS 1.2 and 1.3 only.