Main-thread task scheduling APIs on Wix sites

100.0% of audited sites (5,621) schedule tasks via setTimeout (96% good INP), 99.8% use requestAnimationFrame (96% good INP), 99.8% use requestIdleCallback (96% good INP), and 99.9% adopt modern scheduler.yield() (96% good INP, 79ms median).

Field data PhoneDesktopAll Scope All sites October 2026 edition · Phone field outcomes · Wix sites only
Wix Scoped to 5,623 sites out of 203,892 analyzed (cms) Compare with all sites →

100.0% of Wix sites use setTimeout() main-thread scheduling API usage, and 96% of those sites have a good INP, against 96% of all Wix sites.

The State of Web Vitals · October 2026 · Wix: 5,621 crawled sites · 3,077 with phone field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
1

INP pass rate

Sites with setTimeout() main-thread scheduling API usage have a good INP most often: 96%, against 96% of all Wix sites. Sites with setInterval() task scheduling have it least often, at 96%.

SitesGood, needs improvement, poor INPMedian
All Wix sites3,07796%79ms
setTimeout() 100.0%3,07796%79ms
scheduler.yield() 99.9%3,07496%79ms
requestIdleCallback() 99.8%3,07296%79ms
requestAnimationFrame() 99.8%3,07196%79ms
setInterval() 52.8%1,57896%82ms
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · Wix: 5,621 crawled sites · 3,077 with phone field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
2

Main-thread scheduling API usage usage

SetTimeout() is the most used: 100.0% of Wix sites.

Sites using each option (sites can use more than one) 5,621 sites
setTimeout() 100.0% scheduler.yield() 99.9% requestIdleCallback() 99.8% requestAnimationFrame() 99.8% setInterval() 52.8%
setTimeout() 100.0% scheduler.yield() 99.9% requestIdleCallback() 99.8% requestAnimationFrame() 99.8% setInterval() 52.8%
The State of Web Vitals · October 2026 · Wix: 5,621 crawled sites · 3,077 with phone field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
3

Main-thread scheduling API usage per framework

React sets the main-thread scheduling API usage to setTimeout() on 100% of its sites, and 96% of React sites have a good INP, against 96% of all sites.

FrameworkMain-thread scheduling API usage on its sitesGood INP
All Wix sites 5,621 sitessetTimeout() 100%scheduler.yield() 100%requestIdleCallback() 100%requestAnimationFrame() 100%setInterval() 53%96%
React 5,620 sitessetTimeout() 100%scheduler.yield() 100%requestIdleCallback() 100%requestAnimationFrame() 100%setInterval() 53%96%
setTimeout() scheduler.yield() requestIdleCallback() requestAnimationFrame() setInterval()
The State of Web Vitals · October 2026 · Wix: 5,621 crawled sites · 3,077 with phone field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
4

Scheduling APIs or the framework

Does the framework explain the main-thread scheduling API usage difference?

Almost every site with setTimeout() main-thread scheduling API usage is a React site, and almost every React site has setTimeout() main-thread scheduling API usage, so the data can't tell setTimeout() main-thread scheduling API usage and React apart.

How timer churn (setInterval) and yielding APIs affect input responsiveness

Nearly every site uses setTimeout() (100.0%, 96% good INP), while 52.8% run recurring setInterval() timers (96% good INP, 82ms median) and 99.8% use requestAnimationFrame() (96% good INP). For background work, 99.8% call requestIdleCallback() (96% good INP, 79ms median), while the 99.9% (5,617 sites) adopting scheduler.yield() achieve a 79ms median INP (96% good INP) by yielding to pending user input with priority continuation.

The State of Web Vitals · October 2026 · Wix: 5,621 crawled sites · 3,077 with phone field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
5

Understanding main-thread task scheduling APIs

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, 99.9% use scheduler.yield() (79ms median INP) while 99.8% use requestIdleCallback() (79ms median INP).

The State of Web Vitals · October 2026 · Wix: 5,621 crawled sites · 3,077 with phone field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
Related signals Interaction invoker types → CSS hints → Yielding strategy → INP phase breakdown → By Arjen Karel · 5,621 crawled Wix sites (3,077 with phone Chrome field data, October 2026) · How we measured