What Chrome shows, and what Firefox says instead
Chrome is terse about it.
Unsupported protocol
example.com uses an unsupported protocol.
ERR_SSL_VERSION_OR_CIPHER_MISMATCHFirefox is more specific about the cause, and its wording is the single most useful clue you will get: "This website might not support the TLS 1.2 protocol, which is the minimum version supported by Firefox."
What a handshake actually negotiates
Every secure connection starts with the two sides comparing lists. The browser says which protocol versions and ciphers it supports. The server picks one they share.
If there is no overlap at all, there is nothing to pick, and the connection ends there. That is this error. It is not a failure of trust or identity, it is a failure to find common ground.
Browsers have been shortening their side of the list for years. Anything below TLS 1.2 has been removed, and weak ciphers went with it. A server that never moved forward eventually finds itself alone.
The two causes that account for almost all of these
In 2026 the list is short.
- →The server is capped at TLS 1.0 or TLS 1.1. These were removed from every mainstream browser. If your server offers nothing newer, no current browser can connect to it at all.
- →The server offers only ancient ciphers. RC4 and 3DES are the usual names. The protocol version may be fine, but if the cipher list contains only things browsers have dropped, the result is the same.
- →An old appliance or control panel is in the way. Load balancers, firewalls and hardware appliances that terminate encryption are often years behind the web server sitting behind them.
- →A certificate using an obsolete key type. Less common, but a certificate the server cannot pair with any modern cipher suite produces the same dead end.
If it is your site: how to fix it
This is a configuration job, and it is usually a small one.
- 1.Enable TLS 1.2 and TLS 1.3. TLS 1.3 should be on. TLS 1.2 stays on for the tail of older clients. Everything below that comes off.
- 2.Replace your cipher list with a modern one. Do not curate it by hand. Use a current recommended configuration for your web server version and paste it in whole.
- 3.Check every layer, not just the web server. If a proxy, CDN or load balancer terminates the connection, that is the thing browsers are talking to, and that is the thing that needs updating.
- 4.Reload and test from a real browser. Configuration that looks correct in a file and configuration that is actually live are different things.
- 5.Run a free check afterwards to confirm the protocol and certificate look right from the outside.
The trap: fixing it can break something else
Turning off old protocols is correct, but be aware of what else uses your server.
Payment integrations, old point of sale devices, and internal scripts on unpatched machines sometimes still speak only the versions you are about to remove. They will stop working the moment you disable them.
Check those before you make the change, not after. The change itself is right either way, but you would rather find out on a Tuesday morning than during a checkout.
If you also plan to force secure connections afterwards, read up on HSTS first, because it is not easily reversible.
Frequently asked questions
Should I enable old TLS versions in my browser to view the site?
No. Those settings apply to every site you visit, not just the broken one, and they put you back on protocols that were removed for good reasons. If a site needs TLS 1.0 to work, the right outcome is for the owner to fix it.
Why does Firefox give a clearer message than Chrome?
Firefox names the specific requirement, telling you the site might not support TLS 1.2, which is the minimum version it supports. Chrome only says the protocol is unsupported. The Firefox wording is worth quoting when you report the problem to a site owner.
Is this a certificate problem?
Almost never. The handshake fails before certificates are examined, so a new certificate will not help. This is about which protocol versions and ciphers your server is configured to offer.
How is this different from ERR_SSL_PROTOCOL_ERROR?
This error is the specific case where there is no shared protocol or cipher. ERR_SSL_PROTOCOL_ERROR is the general handshake failure Chrome falls back to when it cannot identify the reason that precisely.
My hosting company controls the server. What do I ask for?
Ask them to enable TLS 1.2 and TLS 1.3 and to apply a current recommended cipher suite, disabling RC4 and 3DES. That is a routine request and any competent host can do it the same day.