Contact emails
Summary
The saveData attibute is a boolean that indicates a client’s explicit opt-in for reduced data usage, due to high transfer costs, slow connection speeds, or other reasons. It's use allows JavaScript to make decisions that result in reduced data use, such as to load smaller images and video resources, or reduce buffering or predictive actions.
Motivation
A "Save-Data" request header is already one of several
Client Hints that a client can send to indicate device and agent specific preferences. The "Save-Data" header is useful in cases where a server can deliver completely different content to data use-sensitive users. However, in order for sites to adapt the behavior of JavaScript on their pages to be more data efficient a JavaScript API is more effective. For example, with such an API, an adaptive streaming video player could lower the default quality or decrease pre-buffering when the client prefers reduced data usage.
Risks: Interoperability and Compatibility, Ergonomics, and Activation
Firefox: No public signals
Edge: No public signals
Safari: No public signals
Web developers: No signals
None. This attribute is informational, but doesn't expose new information to sites. Sites already can know which clients are data sensitive.
Debuggability
It would be nice for DevTools to have a toggle to enable/disable Data Saver from the Network Tab. Developers can already toggle this from Settings on Android and from the Data Saver extension on other platforms.
Ongoing technical constraints
None.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes, although there's currently no way to enable Data Saver on WebView.
Requesting approval to ship?
No