Main-thread task scheduling APIs and the Core Web Vitals
99.9% of audited sites (204,866) schedule tasks via setTimeout (99% good INP), 64.5% use requestAnimationFrame (99% good INP), 31.0% use requestIdleCallback (99% good INP), and 4.9% adopt modern scheduler.yield() (98% good INP, 54ms median).
70.4% of sites use setInterval() main-thread scheduling API usage, and 99% of those sites have a good INP, against 99% of all sites.
INP pass rate
Sites with setInterval() main-thread scheduling API usage have a good INP most often: 99%, against 99% of all sites. Sites with scheduler.yield() task scheduling have it least often, at 98%.
Main-thread scheduling API usage usage
SetTimeout() is the most used: 99.9% of sites. SetInterval() is 70.4% of sites.
Understanding main-thread task scheduling APIs
How timer churn (setInterval) and yielding APIs affect input responsiveness
Nearly every site uses setTimeout() (99.9%, 99% good INP), while 70.4% run recurring setInterval() timers (99% good INP, 50ms median) and 64.5% use requestAnimationFrame() (99% good INP). For background work, 31.0% call requestIdleCallback() (99% good INP, 57ms median), while the 4.9% (10,081 sites) adopting scheduler.yield() achieve a 54ms median INP (98% good INP) by yielding to pending user input with priority continuation.
Use scheduler.yield() (with a setTimeout(0) fallback) to break up long main-thread tasks so the browser can paint pending user interactions before resuming work, and eliminate high-frequency setInterval() polling. Across all audited sites, 4.9% use scheduler.yield() (54ms median INP) while 31.0% use requestIdleCallback() (57ms median INP).
How main-thread scheduling API usage plays out per platform
What the field data shows when you isolate a single CMS or framework.
75.1% of WordPress sites run recurring setInterval() timers, while 2.6% call scheduler.yield().
Across 65,377 WordPress sites, 77.2% call requestAnimationFrame() (100% good INP), 75.1% call setInterval() (100% good INP), and 2.6% call scheduler.yield().
99.7% of Shopify stores call requestIdleCallback() (99% good INP, 61ms median).
Across Shopify storefronts, 99.7% call requestIdleCallback() (99% good INP), 99.8% call requestAnimationFrame(), and 89.4% call setInterval() (99% good INP).
By Arjen Karel · 210,902 crawled sites (69,745 with desktop Chrome field data, 204,974 sites with main-thread scheduling API usage, October 2026). How we measured.