Unable to negotiate using ALPN

Rule from network under performance category

What is a trooper!

we have submitted your edit to the community for review! We'll review and make it live on the site in the next few hours, the internet thanks you :).

Browse another section of the knowledge base

Suggest an edit


This rule has no content... yet.

Add content to this rule

Or just browse to view rules that have content


ALPN (Application Level Protocol Negotiation) allows the clients to dictate which protocols can be used, and have the server simply respond with a supported protocol. This allows both the handshake and response to take place on a single request.

ALPN replaces the older protocol NPN (Next Protocol Negotiation). As of Chrome 51 (May/June 2016) NPN has been deprecated in favour of ALPN.

Ensuring that your web server is handle ALPN gives a bit of a performance boost as clients do not need to try and figure out which protocol could be best to use.

How do I fix this ?

How website owners / developers go about enabling ALPN will differ:

  • Providers like Cloudflare give users a quick way to enable all the required server side changes to support these new protocols and extensions without having to touch their own servers. Especially good for websites running on shared hosting.
  • Most of the popuar web services have added support for HTTP/2, and to that effect ALPN. These might require a few extra steps to setup such as NGINX requiring the following command to be given while compiling - ./configure --with-http_spdy_module --with-http_v2_module --with-http_ssl_module.


Browse another section of the knowledge base

Signup icon
Ready to see how well your site scores?

Passmarked works best when you have an account. It allows you to keep a dashboard with saved data of the sites you have run through the system, we’ll alert you about important updates and you get access to the Passmarked Slack forum.

Sign up to get started