WordPress Long Animation Frame (LoAF) script invokers and the Core Web Vitals
Among sites recording Long Animation Frames, 36.1% (12,267) trigger long frames from DOM event listeners (96% good INP, 99ms median), 38.6% from classic script evaluation (97% good INP), and 40.7% from timer/rAF callbacks (96% good INP).
38.6% of WordPress sites use classic script evaluation Long Animation Frame (LoAF) script invoker type, and 97% of those sites have a good INP, against 97% of all WordPress sites.
INP pass rate
Sites with classic script evaluation Long Animation Frame (LoAF) script invoker type have a good INP most often: 97%, against 97% of all WordPress sites. Sites with DOM event listeners LoAF invokers have it least often, at 96%.
Long Animation Frame (LoAF) script invoker type usage
Timer and rAF callbacks is the most used: 40.7% of WordPress sites. Classic script evaluation is 38.6% of WordPress sites.
Long Animation Frame (LoAF) script invoker type per framework
On jQuery, 41% of sites use timer and rAF callbacks Long Animation Frame (LoAF) script invoker type, and 97% of jQuery sites have a good INP, against 97% of all sites. On Vue, 48% of sites use timer and rAF callbacks, and 95% of Vue sites have a good INP.
LoAF script invoker or the framework
Does the framework explain the Long Animation Frame (LoAF) script invoker type difference?
On jQuery, 97% of sites with classic script evaluation Long Animation Frame (LoAF) script invoker type have a good INP, against 96% of jQuery sites with timer and rAF callbacks. Within jQuery, sites with classic script evaluation and timer and rAF callbacks have a good INP about equally often. On Vue, 96% of sites with classic script evaluation Long Animation Frame (LoAF) script invoker type have a good INP, against 95% of Vue sites with timer and rAF callbacks. Within Vue, sites with classic script evaluation and timer and rAF callbacks have a good INP about equally often.
What triggers main-thread Long Animation Frames during load and interaction
The Long Animation Frames API (LoAF) attributes every frame over 50ms to the exact invoker that started the script task. Across 12,267 sites (36.1% of LoAF sites), DOM event listeners trigger long frames (96% good INP, 99ms median). Classic script evaluation accounts for 38.6% (97% good INP) and timer/rAF user-callbacks account for 40.7% (96% good INP), while heavy module-script evaluation (0.5%) and unbatched Promise microtasks (0.5%) drop to 97% and 93% good INP.
Understanding Long Animation Frame script invokers
Update visual UI state first inside click/keydown event listeners, then yield via scheduler.yield() before running analytics, storage writes, or non-critical Promise chains. Across all sites with Long Animation Frames, 36.1% trigger long frames in event listeners (96% good INP) and 0.5% in Promise microtasks (93% good INP).
By Arjen Karel · 63,295 crawled WordPress sites (36,524 with phone Chrome field data, 34,005 sites with Long Animation Frame (LoAF) script invoker type, October 2026). How we measured.