← Back to release summary

Align Timers (including DOM timers) at 125 Hz

Category
JavaScript
Type
No developer-visible change
Status
In developer trial (Behind a flag) (Chrome 107)
Intent stage
Dev trials

Summary

Run all timers (with a few exceptions) with a non-zero delay on a regular 8ms aligned wake up (125 Hz), instead of as soon as their delay has passed. This affect DOM timers; On foreground pages, run DOM timers with a non-zero delay on a regular 8ms aligned wake up, instead of as soon as their delay has passed. On background pages, DOM timers already run on a regular 1s aligned wake up (1 Hz), or even less frequently after 5 minutes.

Motivation

DOM Timers running at more than 125 Hz can almost always be replaced with alternative APIs that provide a better user experience and consume less resources, as explained in this blog post https://developer.chrome.com/blog/timer-throttling-in-chrome-88/#workarounds. Throttling DOM Timers to 125 Hz will incentivize some Web developers to switch to these alternative APIs. At the same time, content isn't updated will consume less resources, because timers will run less often. An experiment on the Beta channel shows that this reduces Chrome's Energy Impact by 10% on Mac.

Standards & signals

Docs: https://docs.google.com/document/d/1OjZoHNvn_vz6bhyww68B_KZBi6_s5arT8xMupuNEnDM/edit

View on chromestatus.com