How to Check the TLS Version of a Website (5 Methods)
Knowing which TLS version a website uses is essential for security audits and compliance. TLS 1.0 and 1.1 are deprecated and insecure. TLS 1.2 is acceptable. TLS 1.3 is the current standard with better performance and security. Here are five ways to check.
Method 1 — OpenSSL (Most Reliable)
# Check negotiated TLS version openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | grep "Protocol" # Output example: Protocol : TLSv1.3
# Force TLS 1.3 specifically to test support openssl s_client -connect example.com:443 -tls1_3 2>/dev/null | grep "Protocol" # Force TLS 1.2 openssl s_client -connect example.com:443 -tls1_2 2>/dev/null | grep "Protocol"
Method 2 — curl with Verbose Output
curl -v --silent https://example.com 2>&1 | grep -E "TLSv|SSL" # Output example: * TLSv1.3 (OUT), TLS handshake, Client hello (1): * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
Method 3 — nmap SSL Enum Script
nmap with the ssl-enum-ciphers script shows all supported TLS versions and cipher suites:
nmap --script ssl-enum-ciphers -p 443 example.com
Look for sections labeled "TLSv1.0", "TLSv1.1", "TLSv1.2", "TLSv1.3". If TLS 1.0 or 1.1 appear, they need to be disabled.
Method 4 — Browser Developer Tools
Open DevTools (F12) → Security tab → View certificate → scroll to Connection section
Click the padlock icon in the address bar → Click "More Information" → Technical Details section
Open Web Inspector → Network tab → click on the HTTPS request → Headers section
Method 5 — Online Tools
For a quick check without a terminal, use these online tools:
Shows the negotiated TLS version, certificate expiry and issuer (not cipher suites)
Comprehensive test with A–F grade
Open source CLI tool, excellent for CI/CD pipelines
How to Disable TLS 1.0 and 1.1
# Nginx
ssl_protocols TLSv1.2 TLSv1.3;
# Apache
SSLProtocol -all +TLSv1.2 +TLSv1.3
# AWS ALB
# Use ELBSecurityPolicy-TLS13-1-2-2021-06 security policy
Use our free TLS Checker to see which TLS version your server negotiates with a modern client and whether it supports TLS 1.3 — without any command-line tools or installation. It does not list cipher suites; testssl.sh does.
Common questions
How can I check which TLS version my server supports?
A full handshake scanner such as testssl.sh or nmap's ssl-enum-ciphers script lists every protocol version and cipher suite a server accepts; a simpler TLS checker shows the version a modern client negotiates. From the command line: openssl s_client -connect yourdomain.com:443 -tls1_3 tests TLS 1.3, and openssl s_client -connect yourdomain.com:443 -tls1_2 tests TLS 1.2. A successful handshake confirms the version is supported.
Which TLS versions are considered insecure?
TLS 1.0 and 1.1 are deprecated and disabled in all major browsers since 2020/2021. SSLv2 and SSLv3 have been deprecated since 2011 and 2015 respectively. Any server still supporting these is vulnerable to known attacks: BEAST (TLS 1.0), POODLE (SSLv3), and DROWN (SSLv2). Disable all of these immediately.
What TLS version should my server use?
Support TLS 1.3 and TLS 1.2. TLS 1.3 is preferred when both client and server support it — it is faster and more secure by design. Keep TLS 1.2 for compatibility with older clients. Disable TLS 1.0, TLS 1.1, and all SSL versions. Most modern server configurations (nginx, Apache, cloud load balancers) default to this.
How do I check the TLS version in a browser?
In Chrome: open DevTools (F12) → Security tab → Connection section shows the TLS version and cipher suite for the current page. In Firefox: click the padlock icon → Connection Secure → More Information → Technical Details. This only shows the version negotiated for that specific connection, not all versions the server supports.
References and further reading
The specifications and primary documentation this article is based on.
Read next
More guides on the same subject.