Skip to content
Free SSL/TLS checker · no signup

Is your certificate trusted everywhere it is served?

One scan reads the certificate chain, protocol support, ciphers and known vulnerabilities on every IP a host resolves to, and grades the result A+ to F.

Reports are public permalinks, not indexed by search engines. Domain owners can opt out on the opt-out page.

European by default. Scanning servers in Germany and Finland, reports stored in an EU database. How the data is handled.

How the grade works

Protocol support, cipher strength, key exchange and certificate quality are scored into a 0–100 total, following RFC 9325 (BCP 195). The worst finding then caps the total, so one serious fault decides the grade no matter how good the rest is. Every report names the finding doing the capping.

Scores inside a letter carry a plus or a minus, so 83 shows as B+ and 88 as A−.

A+ Hardened. Everything an A needs, plus HSTS.
A Strong. Modern TLS, strong ciphers and key exchange, a chain that validates.
B Dated. Works today, on borrowed time: TLS 1.0 or 1.1 still offered, an undersized key, or a key exchange RFC 10015 retired.
C Weak. A known weakness: SSLv3, or a vulnerability the host is exposed to.
D Failing. Key exchange weak enough to be precomputed, or Must-Staple served without a staple.
F Refused. Clients reject the connection: expired, revoked, wrong hostname, a chain that does not validate including a missing intermediate, or a critical vulnerability.

What a single scan covers

Every scan runs the complete check set: no quick versus extended toggle, no option to skip a section.

CHAIN
Certificate chain
Every certificate from leaf to root, the issuer path, key size and signature algorithm. A missing intermediate is named and still flagged.
RFC 9525
Hostname & expiry
Whether the requested name is actually covered, and how long the certificate has left.
TLS
Protocols & ciphers
Which TLS versions the host accepts, the cipher suites it offers, and the order it prefers.
CVE
Known vulnerabilities
Heartbleed, CCS injection, ROBOT, Ticketbleed, DROWN, POODLE, FREAK, Logjam, RC4 and Sweet32, probed against the live host. A check that could not run is reported as not tested, never as a pass.
HSTS · CAA · OCSP
Policy & revocation
HSTS headers, CAA records (RFC 8659), OCSP and CRL status, and Must-Staple (RFC 7633).
ECH · PQ
Modern extensions
Encrypted ClientHello (RFC 9849) and post-quantum key exchange (RFC 9954).
CLIENTS
Browsers and crawlers
A client simulation: the handshake replayed as 160+ real clients send it. Current Chrome, Firefox, Edge, Safari, Java, Python and OpenSSL, and search and AI crawlers including Googlebot, recorded from live crawler traffic rather than guessed at. Each one is reported as connecting or failing, with the version and cipher it settled on.
STARTTLS
Mail and directory servers
The same scan for SMTP, submission, IMAP, POP3, XMPP, LDAP, FTP and NNTP, negotiated through STARTTLS on the standard port, so a mail server gets the treatment a web server gets.

How a scan runs

From submitted host to graded permalink, every scan takes the same five steps.

01
Submit a host
A hostname or an IP address, plus a protocol. HTTPS on port 443 is the default; 13 other protocols connect on their standard port unless one is set.
02
Resolve from five regions
The host is resolved from five global vantage points, and every unique IP returned is scanned, so a CDN-fronted host shows what each region actually serves.
03
A full handshake per IP
Each IP is connected to the way a browser or mail client would, including STARTTLS negotiation, and the chain, version, cipher and key exchange are read back.
04
Every check, every time
Chain validation, hostname matching, key strength, protocols, ciphers and key-exchange groups, vulnerabilities, HSTS, CAA, revocation, Must-Staple, ECH and post-quantum key exchange.
05
A grade and a permalink
Results combine into an A+ to F grade on a permalink kept for 24 hours. Re-scan gives a fresh result at any time, and the permalink is never indexed.

Built for automation

Run the same scan from a script, a CI pipeline or an AI agent. Free, no API key.

Frequently asked

Is it free?

Yes. Every check, the API, and the MCP server are free with no account, signup, or API key. Usage is rate-limited for abuse prevention.

What gets checked?

The full certificate chain, hostname match, expiry, key strength and permitted key usage, the certificate served without SNI, supported TLS versions, cipher suites and key-exchange groups, known vulnerabilities (Heartbleed, ROBOT, Ticketbleed, DROWN, POODLE, FREAK, Logjam and more), a client simulation across 160+ recorded browser and library handshakes, compromised-key lookup, HSTS, CAA, OCSP / CRL revocation status, and connection-security details like Extended Master Secret and post-quantum key exchange.

Which protocols are supported?

14 protocols: direct-TLS HTTPS, FTPS, SMTPS, POP3S, IMAPS, and LDAPS, plus STARTTLS on SMTP, SMTP submission, IMAP, POP3, FTP, LDAP, XMPP, and NNTP.

What does the grade mean, and where does it come from?

The grade summarises protocol support, cipher strength, key exchange and certificate quality, following the current TLS best practice in RFC 9325 (BCP 195, which obsoletes RFC 7525). Serious findings cap the grade regardless of the rest. What a standard prohibits outright caps at F: a revoked certificate, a key below 1024 bits, a certificate invalid for TLS server authentication, RC4 (RFC 7465) or a critical vulnerability. SSLv3 (RFC 7568) and other vulnerabilities cap at C, and deprecated TLS 1.0/1.1 (RFC 8996) or static RSA key exchange (RFC 10015) cap at B.

How long is a report cached?

A report is kept as a shareable permalink for 24 hours. Use Re-scan on the report page for a fresh result at any time.

The browser shows a padlock, so why is the grade lower?

A padlock means one client reached one address and accepted the certificate. Browsers also repair a broken chain quietly: given a missing intermediate they fetch the missing certificate themselves, or reuse one cached from another site, and show a padlock over a server sending an incomplete chain. The grade describes the server, not one visit.

Why does a certificate work in a browser but fail in curl or Java?

Almost always a missing intermediate certificate. curl, Python requests, Node, Go and Java build the chain only from what the server sends, so a gap browsers paper over becomes "unable to get local issuer certificate" or "PKIX path building failed". Older Android devices fail the same way. The fix is serving the full chain, which for most tooling means fullchain.pem rather than cert.pem.

Do search engines and AI crawlers complete the handshake?

The report answers directly. Every scan replays the ClientHello real crawlers send, recorded from live crawler traffic and refreshed as they change, so a host offering only ciphers Googlebot no longer accepts shows up as a failed client rather than as a mystery drop in crawling. Browsers and crawlers are listed separately, each with the TLS version and cipher negotiated.

How long can a certificate be valid now?

Public TLS certificates issued since 15 March 2026 last at most 200 days, down from 398. The maximum drops to 100 days in March 2027 and 47 days in March 2029, and domain validation has to be repeated far more often alongside. Renewal still involving a person will not survive the schedule, so every report shows the days remaining and the API returns the same number for a cron job to watch.

Is post-quantum key exchange worth enabling?

For anything with a long confidentiality life, yes. Traffic recorded today stays readable to whoever kept it once a quantum computer breaks the elliptic-curve key exchange protecting the session, and hybrid key exchange closes it now rather than at some future upgrade. Current Chrome, Firefox and Safari already negotiate X25519MLKEM768 by default, so a server enabling the group starts using post-quantum key exchange for a large share of connections immediately. Every report names the group each client settled on.

What breaks when TLS 1.0 and 1.1 are switched off?

Android 4.3 and older, Java 7 and older, OpenSSL 0.9.8 and Windows XP. Everything current speaks TLS 1.2, and TLS 1.3 covers the overwhelming majority of browser traffic. The client simulation in the report is the honest check: it names exactly which clients stop connecting, so the decision rests on the audience rather than on a guess.

Does a scan put load on the server, or count as an attack?

A scan opens a small number of ordinary TLS handshakes, the same connections a browser or mail client makes, and reads what comes back. Nothing is written, no credentials are attempted, and no traffic is sent that a server is not designed to answer. Owners preferring no scans at all publish a DNS record on the opt-out page, and the host is refused from then on.