ERR_HTTP2_PROTOCOL_ERROR: The HTTP/2 stream failed
Also searched as: net::ERR_HTTP2_PROTOCOL_ERROR · HTTP2 protocol error
Is ERR_HTTP2_PROTOCOL_ERROR happening on your domain?
A public probe can show whether a request completes from one external vantage point. It cannot prove which protocol hop failed or reproduce browser- and network-specific behaviour on its own.
Free, no signup. Runs from outside your network, which is the only way to tell a server fault from a local one.
Short answer
The browser ended an HTTP/2 stream after detecting a protocol problem. Large response headers and incompatible HTTP/2 handling at an origin, CDN, proxy or WAF are common leads, but the failing hop needs to be identified before changing configuration.
What ERR_HTTP2_PROTOCOL_ERROR means
HTTP/2 multiplexes several streams over one connection and has strict framing and header rules. When a peer detects a violation, the browser can reset the affected stream or connection; the page may therefore fail without an HTTP status the browser can show.
Causes and fixes, most likely first
Response headers exceed a header-size limit at the origin or an intermediary.
Compare the response headers on a working and failing request. Reduce oversized cookies or duplicated headers where possible, then align the documented header limits across the origin, CDN, proxy and WAF.
A proxy or WAF between the browser and origin has a buggy HTTP/2 implementation.
Reproduce from the same network and compare a controlled HTTP/1.1 request with HTTP/2. If only HTTP/2 fails, collect the request ID and edge/origin logs before updating or temporarily disabling HTTP/2 on the confirmed hop.
How to stop it happening again
- •Review response-header growth and test representative routes over HTTP/1.1 and HTTP/2 after changing a CDN, proxy, WAF or session-cookie policy.
Frequently asked questions
Should I just disable HTTP/2?
Use that only as a short diagnostic or mitigation. A successful HTTP/1.1 request narrows the investigation; it does not by itself identify the failing service. Fix the confirmed header or intermediary issue before deciding whether HTTP/2 should remain disabled.