TLS

TLS Certificate Checker

Check the TLS / SSL certificate a server actually serves — expiration, certificate chain, issuer, SANs, and trust status.

TLS certificate inspector

Connect over TLS and read the presented certificate chain.

Allowed ports: 443, 465, 587, 993, 995, 8443.

Results

Sample Live example: the TLS certificate chain for codynet.com. Inspect your own host above to replace it.

codynet.com:443TLSv1.3TLS_AES_256_GCM_SHA384trusted92 ms
Leaf116 days left
Subject
CN=codynet.com
Issuer
C=US, O=DigiCert Inc, OU=www.digicert.com, CN=GeoTrust TLS RSA CA G1
Valid from
Apr 30 00:00:00 2026 GMT
Valid to
Oct 30 23:59:59 2026 GMT
Serial
0ACA5AA2DC73292E70B841085A1A420B
SHA-256 fingerprint
4D:EA:C5:E2:28:80:BD:40:78:C8:70:7E:86:52:BC:6B:F9:0E:87:68:10:33:D0:B7:7B:63:38:70:4D:46:0D:87
Subject Alt Names
DNS:codynet.com
Public key
2048 bits
Intermediate483 days left
Subject
C=US, O=DigiCert Inc, OU=www.digicert.com, CN=GeoTrust TLS RSA CA G1
Issuer
C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert Global Root G2
Valid from
Nov 2 12:23:37 2017 GMT
Valid to
Nov 2 12:23:37 2027 GMT
Serial
0D07782A133FC6F9A57296E131FFD179
SHA-256 fingerprint
C0:6E:30:7F:7C:FC:1D:32:FA:72:A4:C0:33:C8:7B:90:01:9A:F2:16:F0:77:5D:64:97:8A:2E:CA:6C:8A:23:0E
Public key
2048 bits
Root4210 days left
Subject
C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert Global Root G2
Issuer
C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert Global Root G2
Valid from
Aug 1 12:00:00 2013 GMT
Valid to
Jan 15 12:00:00 2038 GMT
Serial
033AF1E6A711A9A0BB2864B11D09FAE5
SHA-256 fingerprint
CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F
Public key
2048 bits

Practical guide

How to inspect a TLS certificate

Use this page to check what certificate an endpoint actually serves, whether it is trusted, and whether it is close to expiration.

What this tool checks

The TLS inspector opens a TLS connection to the host and reads the certificate the server actually presents. The important fields are the subject and SAN names, the issuer, the validity window (not-before and not-after), the certificate chain, the fingerprint, and the trust status. Because it reflects the live endpoint, it catches cases where the served certificate differs from what your certificate provider says was issued.

Root CAself-signedin client trust storeIntermediate CAsigned by the rootsent by serverLeaf (your domain)signed by intermediatesent by serversignssignsclient verifies up to a trusted root
The chain of trust: a root CA in the client's trust store signs an intermediate, which signs your leaf certificate. The server sends the leaf and intermediate; the client verifies the chain back up to the trusted root.

When to use it

Use it before renewing a certificate, after changing a CDN or load balancer, when users report browser warnings, or when a domain serves the wrong certificate. It is also useful after any deployment, because backend and edge systems can serve different certificates if one layer was missed during a rollout.

How to read the result

First confirm the requested hostname appears in the subject alternative name list — browsers match on SANs, not the legacy Common Name. Then check the not-before and not-after dates, the issuer, and whether the chain is trusted. A certificate can be valid and still wrong if it does not cover the exact hostname your users visit, so the name match matters as much as the dates.

Common TLS findings and how to fix them

FindingWhat it meansCommon fix
Certificate expiredThe not-after date is in the pastRenew and deploy the new certificate to every endpoint
Hostname mismatchThe visited name is not in the SAN listReissue the certificate with the correct names
Missing intermediateClients cannot build a trust chainInstall the full chain (leaf + intermediates)
Self-signed certificateNot trusted by public browsersUse a public CA, or add a private trust root internally
Not yet validThe not-before date is in the future, or the clock is wrongCheck the server clock or deploy the correct certificate
Covers apex but not www (or vice versa)The SAN list is incompleteAdd both names when issuing the certificate
Wrong certificate behind a CDNThe edge is serving a stale or default certificateUpdate the CDN custom-domain / TLS settings

Common errors and what they mean

CERT_HAS_EXPIRED means the not-after date has passed. ERR_TLS_CERT_ALTNAME_INVALID means the hostname is not in the SAN list. UNABLE_TO_VERIFY_LEAF_SIGNATURE and SELF_SIGNED_CERT_IN_CHAIN almost always point to a missing intermediate or an untrusted root — the certificate itself may be fine but the chain is incomplete. A reset during the handshake (ECONNRESET) or an SNI mismatch usually means the server is not configured for the hostname you asked for, or it only supports obsolete protocol versions.

Example TLS inspection

Example input
example.com:443
Example result
subject: example.com
issuer: DigiCert Global G3 TLS ECC SHA384 2020 CA1
valid to: 2026-01-15
trusted: true

The hostname must be covered by the certificate names, and the full chain must be trusted by normal clients.

Related tools

Related guides

FAQ

How do I check when a TLS certificate expires?
Enter the hostname (for example example.com) above and run the check. The tool reads the certificate the server actually presents and shows the valid-from and valid-to dates plus the number of days remaining. Set a renewal reminder well before the not-after date — most automated systems renew around 30 days out so there is time to fix failures.
What is a subject alternative name (SAN)?
The subject alternative name list is the set of hostnames a certificate is valid for. Modern browsers ignore the legacy Common Name and match the visited hostname against the SAN list. If the exact name a user visits is not in the SAN list, the browser shows a name-mismatch error even when the certificate is otherwise valid.
Why does my browser say the certificate is invalid when it looks fine here?
The usual causes are a missing intermediate certificate (the server did not send the full chain), a hostname not covered by the SAN list, a system clock that is wrong, or a CDN/load balancer serving an older certificate on some edge nodes. Check that the requested hostname is in the SAN list and that the chain is complete and trusted.
Does a wildcard certificate cover the root domain?
Not automatically. A wildcard such as *.example.com covers one label of subdomains (www.example.com, api.example.com) but does NOT cover the apex example.com unless that name is also listed as a SAN. Many wildcard certificates explicitly add the bare domain for this reason — check the SAN list to be sure.
Why is the certificate different behind Cloudflare or a CDN?
When a site sits behind a CDN or reverse proxy, the certificate you see is the edge certificate the CDN serves, not the origin server's certificate. After moving behind or changing a CDN, always re-check the live endpoint, because the edge and origin can present different certificates and only one may be correct.
What is a certificate chain?
A certificate chain links your leaf certificate to a trusted root through one or more intermediate certificates. Browsers trust the root, the root vouches for the intermediate, and the intermediate vouches for your certificate. If the server forgets to send the intermediate, some clients cannot build the chain and reject the certificate even though it is technically valid.
How often should TLS certificates be renewed?
Publicly trusted certificates now have short lifetimes — commonly 90 days or less — so renewal should be automated rather than manual. Tools like ACME clients (for example certbot) renew well before expiry. The key is to verify after each renewal that the new certificate actually deployed to every endpoint, including CDNs and load balancers.

Last reviewed: 2026-06-22.