HTTP/2 & HTTP/3 Check
Check whether a server supports HTTP/2 (ALPN) and HTTP/3 (Alt-Svc).
HTTP/2 & HTTP/3 Check tests in real time whether a domain's web server offers HTTP/2 and HTTP/3. HTTP/2 is determined precisely from the ALPN result (h2) negotiated during the TLS handshake, while HTTP/3 is inferred from whether the response advertises h3 in its Alt-Svc header.
Modern protocols speed up page loads through multiplexing, header compression and reduced connection latency. HTTP/3 in particular runs over QUIC (UDP), which helps on lossy networks. Just enter a domain — no protocol or path needed.
ALPN and the HTTP/2 verdict
ALPN (Application-Layer Protocol Negotiation) is a TLS extension where client and server pick the upper-layer protocol during the handshake. This tool offers h2 and http/1.1; if the server selects h2, HTTP/2 is reported as supported.
Alt-Svc and the HTTP/3 inference
HTTP/3 usually starts as TLS over TCP, then the server advertises a QUIC endpoint via the Alt-Svc response header, after which the browser upgrades subsequent requests to HTTP/3. For example:
alt-svc: h3=":443"; ma=86400— advertises HTTP/3 (h3)- Draft tokens such as
h3-29are also treated as HTTP/3
QUIC and the limits of inference
QUIC is a UDP-based transport that underpins HTTP/3. The HTTP/3 verdict here is an inference from the Alt-Svc advertisement, not an actual QUIC handshake. A server may advertise h3 while real HTTP/3 fails because UDP 443 is blocked by a firewall.
To read the raw Alt-Svc header and the rest of the response yourself, open the HTTP header checker.
The three protocols at a glance
The protocols differ in transport layer and multiplexing. Here is how they compare, alongside what this tool actually inspects to reach its verdict.
| Aspect | HTTP/1.1 | HTTP/2 | HTTP/3 |
|---|---|---|---|
| Transport | TCP | TCP | QUIC (UDP) |
| ALPN token | http/1.1 | h2 | h3 |
| Multiplexing | None (serial per conn) | Per stream | Per stream (independent) |
| Head-of-line blocking | At the app layer | Remains at TCP layer | Eliminated |
| Header compression | None | HPACK | QPACK |
| How this tool decides | ALPN fallback | ALPN negotiation (definitive) | Alt-Svc advert (inferred) |
Reading an Alt-Svc header (a real example)
Suppose a site returns this response header:
alt-svc: h3=":443"; ma=2592000, h3-29=":443"; ma=2592000
This single line carries two comma-separated advertisements. h3 is finalized HTTP/3, and h3-29 is QUIC draft 29. Each token means:
| Token / field | Meaning |
|---|---|
h3 | Final HTTP/3 (RFC 9114) → this tool reports "supported" |
h3-29, h3-Q050 | Draft versions for older clients; still counted as HTTP/3 |
":443" | QUIC endpoint port (same host if host omitted); a different host like "alt.example:443" is also valid |
ma=2592000 | max-age in seconds — how long the browser caches this advert (here, 30 days) |
clear | Invalidates prior adverts — a signal to stop using HTTP/3 → reported as unsupported |
Common pitfall
- Treating the address-bar "h3" as first-visit proof. Browsers send the first request over TCP (HTTP/2); they only upgrade to HTTP/3 once a cached Alt-Svc exists. Seeing h2 in DevTools on the very first visit is normal.
- Missing Alt-Svc on a CDN cache miss. Some CDNs attach
Alt-Svconly to cache-hit responses. A one-off "unsupported" result may flip to supported when you re-check moments later. - Concluding "no HTTP/2" just because ALPN lacks h2. Cleartext HTTP (port 80, h2c) does not use ALPN. This tool checks only 443/TLS, so HTTP/2 without TLS is out of scope here.
Frequently asked questions
How is HTTP/2 determined?
Why is the HTTP/3 result an inference?
Does an empty Alt-Svc mean no HTTP/3?
Can I paste a URL instead of a domain?
What do I gain by switching to HTTP/2 or HTTP/3?
Related guides
- HTTP/1.1 vs HTTP/2 vs HTTP/3: Differences and How to Enable ThemMultiplexing, header compression and QUIC — what each version changes, and how to enable and verify it.