Vercel custom domain serving HTTP/1.1 instead of HTTP/2 with missing compression

Welcome to the Vercel Community!

Cool project :slight_smile:

Vercel’s CDN supports HTTP/2 through ALPN negotiation. When testing with curl, try:

curl -I --http2-prior-knowledge https://reeflocal.io

The results are:

HTTP/2 200
accept-ranges: bytes
access-control-allow-origin: *
age: 69
cache-control: public, max-age=0, must-revalidate
content-disposition: inline
content-type: text/html; charset=utf-8
date: Fri, 17 Apr 2026 11:08:08 GMT
etag: "4b264812b229d2b3a2943254c19261d8"
last-modified: Fri, 17 Apr 2026 11:06:58 GMT
server: Vercel
strict-transport-security: max-age=63072000
x-vercel-cache: HIT
x-vercel-id: lhr1::29hdk-1776424087993-d123805054ce
content-length: 9145

For Brotli/gzip compression, include the Accept-Encoding header:

curl -H "Accept-Encoding: gzip, br" -I https://reeflocal.io

I can see:

HTTP/2 200
access-control-allow-origin: *
age: 108
cache-control: public, max-age=0, must-revalidate
content-disposition: inline
content-encoding: br
content-type: text/html; charset=utf-8
date: Fri, 17 Apr 2026 11:08:46 GMT
etag: W/"4b264812b229d2b3a2943254c19261d8"
last-modified: Fri, 17 Apr 2026 11:06:58 GMT
server: Vercel
strict-transport-security: max-age=63072000
x-vercel-cache: HIT
x-vercel-id: lhr1::f8fq6-1776424126886-571b3cb5b9a5

If you’re behind a proxy, it might downgrade connections to HTTP/1.1. Test from a different network to confirm!