Skip to content
DevMarDe
Crawl Audit check 95Crawl AuditPerformance

Keep-Alive connections: Crawl Audit check 95

Crawl Audit check 95 is informational and always passes. What Keep-Alive does, why HTTP/2 and HTTP/3 forbid the header, and when you'd still care.

Zain Kazmi2 min read
On this page
Check
95 of 200
Module
Performance & Core Web Vitals
Group
Caching, CDN & Infrastructure Speed
Impact
Low

Short answer: Keep-Alive lets a browser reuse one connection for several requests instead of opening a new one each time. On HTTP/1.1 it's the default, and HTTP/2 and HTTP/3 go further by sending many requests at once over one connection. Check 95 is informational: it always passes, with a note on which of these applies.

What Crawl Audit checks

  • Pass: the connection uses HTTP/2 or HTTP/3 (connection reuse is built in).
  • Pass: the response has Connection: keep-alive.
  • Pass: neither seen, with a note that keep-alive is standard on modern hosts.

What the standards say

  • MDN: "Connection-specific header fields such as Connection and Keep-Alive are prohibited in HTTP/2 and HTTP/3."
  • The HTTP/2 standard (RFC 9113): "An endpoint MUST NOT generate an HTTP/2 message containing connection-specific header fields."
  • MDN notes that browsers send Connection: keep-alive "even though it's the default in HTTP/1.1."

So a missing Keep-Alive header on an HTTP/2 or HTTP/3 site is correct, not a problem.

When it matters

Only on a server stuck on HTTP/1.1 that closes the connection after every response. The real fix there is HTTP/2 (check 94). Watch the other way round too: MDN warns that Safari "does not load any response that contains them" over HTTP/2, so don't add these headers by hand on a modern server.

Sources

All 200 Crawl Audit checks

See how your site does on every check.

Crawl Audit runs this check and 199 others on your domain. The full report is $7.89, one time. The free check on this site covers 25.