ERR_SSL_PROTOCOL_ERROR

ERR_SSL_PROTOCOL_ERROR Explained

Site owners
The short answer

ERR_SSL_PROTOCOL_ERROR means the browser and the website could not complete the handshake that sets up a secure connection, so the page never loaded. It is a server-side fault in almost every case, not a problem with your computer or your browser. Chrome words it as This site can’t provide a secure connection, with the site name and doesn’t adhere to security standards underneath.

Seeing this on a site? Check it now.

Paste the address and we will tell you exactly which check is failing, and why. Free, and you do not have to open the site yourself.

If you were just trying to buy something

This is the site's problem, not yours. There is nothing unsafe about your device and nothing you did wrong.

The one thing worth trying: open the same address in a different browser or on your phone using mobile data. If it fails there too, the server is broken and you simply have to wait for the owner to fix it.

Do not go hunting for a way to force the connection through. There is no safe workaround for a handshake that failed.

If this is your site

Your server is failing the TLS handshake. Visitors are being turned away before they see a single byte of your site, so treat this as an outage.

The four usual causes are a server aborting the handshake, a middlebox interfering with it, a misconfigured virtual host or SNI setup, and plain HTTP being served on port 443. Work through them in that order, and run a free check to confirm what your server is actually presenting.

What Chrome actually shows

This is a net error page, not a certificate warning. There is no Advanced link and no way to proceed, because there is no connection to proceed over.

This site can’t provide a secure connection
example.com doesn’t adhere to security standards.

ERR_SSL_PROTOCOL_ERROR

The wording is deliberately vague. Chrome uses this code as a catch-all when the handshake fails for a reason it cannot describe more precisely.

Why this is different from a certificate warning

A certificate warning like NET::ERR_CERT_AUTHORITY_INVALID means the connection worked and the browser then objected to the certificate it was handed. You can usually click through those.

ERR_SSL_PROTOCOL_ERROR happens earlier. The two sides never got far enough to discuss a certificate. Nothing was verified, nothing was rejected, the conversation just ended.

That is why the fixes are completely different. Replacing your certificate will not help if the handshake never reaches the certificate.

The four real causes

In practice this error comes down to one of these.

  • The server aborts the handshake. The web server or a load balancer in front of it drops the connection partway through, often because of a bad configuration reload or a service that is only half running.
  • A middlebox is interfering. Antivirus software that inspects encrypted traffic, a corporate proxy, or a filtering appliance can mangle the handshake. If only some visitors see the error, this is the likely culprit.
  • SNI or virtual hosts are misconfigured. Several sites share one IP address, and the server cannot work out which certificate to present for the name being requested, so it gives up.
  • Plain HTTP is being served on port 443. The browser opens a secure connection and receives an ordinary unencrypted response. Nothing about that can be interpreted, so the connection fails immediately.

If it is your site: how to fix it

Work from the outside in. The goal is to find out where the handshake stops.

  1. 1.Confirm it is not just you. Test from a different network and a different device. A failure everywhere points at the server. A failure in one place points at a middlebox.
  2. 2.Check what is listening on port 443. If your site was recently moved, or a proxy was added, it is common to end up with a plain HTTP service answering on the secure port.
  3. 3.Restart the web server after checking its configuration. A configuration file that failed to reload cleanly is a frequent cause of a server aborting mid-handshake.
  4. 4.Check your virtual host and SNI setup. Every hostname you serve needs a certificate the server can match to it. Bare IP addresses and missing default hosts cause exactly this.
  5. 5.Look at anything sitting in front of the origin. A CDN or reverse proxy adds a second handshake. If you use Cloudflare, see Error 525, which is the same failure one hop further back.
  6. 6.Re-run a check once you have changed something. Our free audit tells you what your server is presenting right now, which is faster than guessing.

What will not fix it

Most advice for this error is aimed at visitors, and most of it is noise. Clearing your browser cache does not repair a server handshake. Neither does resetting your SSL state, changing your DNS, or disabling QUIC.

The one visitor-side fix that is genuine is switching off TLS scanning in antivirus software, and that only helps if the antivirus was the thing breaking the connection in the first place.

Buying a new SSL certificate is also not the answer here, tempting as it looks.

Frequently asked questions

Is ERR_SSL_PROTOCOL_ERROR dangerous?

Not to you. The connection failed, so nothing was exchanged and nothing was exposed. It does mean the site is unreachable over a secure connection, which is a real problem for the owner but not a risk to your device.

Why does the site work for other people?

That usually points to something on your network rather than the server. Antivirus that inspects encrypted traffic, a company proxy, or a filtering router can break the handshake for you alone. Trying the same site on mobile data is the quickest way to confirm it.

Can I bypass the error and visit anyway?

No. Chrome does not offer a proceed option here because there is no working connection to proceed over. This is different from a certificate warning, where you are choosing to accept a certificate the browser distrusts.

How is this different from ERR_SSL_VERSION_OR_CIPHER_MISMATCH?

They are both handshake failures, but the mismatch error is specific. It means the browser and server share no supported protocol version or cipher. ERR_SSL_PROTOCOL_ERROR is the general case Chrome falls back to when it cannot be that precise. See our page on ERR_SSL_VERSION_OR_CIPHER_MISMATCH.

I run WordPress. Where do I start?

Start at the server, not in WordPress. This error happens before any PHP runs, so plugins and themes are not involved. Once the handshake works again, our guide to fixing SSL on WordPress covers the site-level settings.

Related errors

See all errors explained →

Stop guessing what is wrong.

Run a free check on any site and see every trust and security signal at once, in plain English.

Run a free check Browse the fixes