Downlink
Request header Client Hints

Overview

Downlink is a Network Information Client Hint request header conveying the client's estimated downlink (download) bandwidth in Mbps. Together with ECT and RTT it reports network quality to the server for adaptive serving that adjusts resource weight to the connection.

Details

The value is the browser's effective bandwidth estimate from recent observations, rounded to a multiple of 25 kbps (0.025 Mbps) for anti-fingerprinting, e.g. 1.7. It is not a theoretical maximum but an estimate close to current perceived bandwidth, readable in JS via navigator.connection.downlink.

When the connection is deemed slow (low Downlink) you can reduce high-resolution images, autoplay video, and large fonts, and serve richer assets on fast links. But bandwidth estimates fluctuate and are instantaneous, so it is more stable to judge in combination with ECT (effective connection type), RTT, and Save-Data rather than alone.

It is somewhat high-entropy, so some browsers may require an Accept-CH opt-in, and there is a trend of restricting exposure or reducing support for privacy reasons (the Network Information API is a contested, privacy-sensitive area). If the response varies by the value, include Downlink in Vary.

Syntax

Downlink: <number>

e.g. Downlink: 1.7

Directives / values

<number>Estimated downlink bandwidth in Mbps, rounded to a multiple of 25 kbps for anti-fingerprinting.

Notes

Related headers

Related status codes

Specification