web-platform-tests / web-platform-tests/interop
Long Animation Frames API
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 524
- Forks
- 35
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 10
Description
Description
The Long Animation Frames API (aka LoAF) defines a mechanism for pages to observe “long animation frames” (animation or rendering updates delayed beyond ~50 ms) that block rendering or user input.
It offers more granular insights than the Long Tasks API by including render timing, attribution of scripts, and breakdowns of style/layout/rendering phases.
The proposal covers the API surface (PerformanceLongAnimationFrameTiming etc.), buffer and observer semantics, script attribution, thresholds, visibility considerations, and interactions with the INP (Interaction to Next Paint) metric.
Out of scope are non-frame-based metrics (e.g. purely non-visual JS long tasks), or vendor-specific profiling beyond what the spec defines.
Specification
https://w3c.github.io/long-animation-frames/
web-feature
https://web-platform-dx.github.io/web-features-explorer/features/long-animation-frames/
Test Links
https://wpt.fyi/results/long-animation-frame
Additional Signals
-
Standards Status: The specification was published as a W3C First Public Working Draft on April 28, 2026, and continues to be developed in the Editor's Draft.
-
Browser Support / Current State:
• Chromium-based browsers support the API, with Chrome, Chrome for Android, and Edge shipping support starting in version 123.
• Firefox does not currently support the API, but Mozilla has expressed a positive standards position. An implementation issue remains open.
• Safari and Safari on iOS do not currently support the API. WebKit's standards-position issue remains open. -
Developer Adoption / Ecosystem Usage:
• Tools / SDKs like Sentry have added support for this API.
• DebugBear, SpeedCurve, RUMvision and other performance monitoring services write about using LoAF to identify blocking scripts, layout/style costs etc. -
Workaround / Site Breakage Risk:
• Sites relying on Long Tasks for diagnosis may need to migrate or integrate LoAF as well to obtain rendering-phase visibility.
• There may be missing visibility / attribution in certain cross-origin / worker / extension contexts. Chrome for Developers -
Likely Compatibility Impact:
• The API is additive, you can feature-detect (PerformanceObserver.supportedEntryTypes.includes('long-animation-frame')) so sites only use it in capable browsers. Chrome for Developers
• Some behavior around attribution, buffer sizes, thresholds, cross-origin scripts, visibility etc. may differ or need convergence. -
Platform / Developer Impact:
• Helps developers better diagnose responsiveness and smoothness issues, particularly for interactions (including INP)
• Enables performance tools like RUM providers to give more actionable data.
• Helps alert site owners as well as third-party providers to emerging performance problems, making it easier to detect and improve issues (for example with CMPs, session replay tools)
• Potential to reduce site-level latency and improve user experience by guiding optimizations (script splitting, deferring non-critical work, reducing layout/style cost, etc.)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked Long Animation Frames specification and review the web-feature entry and WPT results for existing coverage. The issue does not name files, tests, or a concrete change, so the scope and completion criteria would need to be established before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- testing, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100