Web-Facing Change PSA: Speculation rules: desktop "eager" eagerness improvements

60 views
Skip to first unread message

Chromestatus

unread,
Aug 8, 2025, 3:51:51 AMAug 8
to blin...@chromium.org, dom...@chromium.org, nhi...@chromium.org, tn...@chromium.org

Contact emails

tn...@chromium.org

Specification

https://wicg.github.io/nav-speculation/speculation-rules.html#:~:text=early%20as%20possible.-,%22moderate%22,balance%20between%20%22eager%22%20and%20%22conservative%22.,-%22conservative%22

Summary

On desktop, "eager" eagerness speculation rules prefetches and prerenders now trigger when users hover on a link for a shorter time than the "moderate" mouse hover time. The previous behavior, of starting prefetch/prerenders as soon as possible, was the same as "immediate" eagerness. This new behavior is more useful as it better reflects the author's intent to be more eager than the "moderate" and less eager than "immediate". More detail on this and other upcoming improvements to speculation rules eagerness are available at https://docs.google.com/document/d/1YPbtUPfZIDElzBZNx8IQMzRFvy8oauLG_i1XIr6jgTs/edit?usp=sharing.



Blink component

Internals>Preload

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility

The exact definitions of eagerness levels are left vague in the specification. ("User agents should enact the candidate if user behavior suggests the user may navigate to this URL in the near future. For instance, the user might have scrolled a link into the viewport and moved the cursor over it for some time.") This change is in line with those suggestions. Due to speculation rules' nature as a progressive enhancement, it is very hard to depend on the exact heuristic, so varying across browser engines, platforms, and browser versions should not pose significant interoperability or compatibility risks. As evidence, the heuristic has varied across mobile and desktop ever since launch, and this has not caused such problems.



Gecko: Neutral (https://github.com/mozilla/standards-positions/issues/620#issuecomment-2546739520) We have not asked Firefox for their thoughts on this specific change. They are positive on and implementing prefetching, and will likely make their own choices for how to implement each eagerness level.

WebKit: No signal (https://github.com/WebKit/standards-positions/issues/54) We've not asked Safari for their thoughts on this specific change. They have recently indicated a tentative positive position towards conservative-eagerness prefetching.

Web developers: Positive We've seen several developers re-create this viewport-based technique using JavaScript to manually insert and remove speculation rules, e.g. in the Quicklink library.

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

None



Debuggability



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

This is only applicable to desktop, and mobile needs other heuristics.



Is this feature fully tested by web-platform-tests?

No

Because the specification intentionally allows user agent flexibility, web platform tests do not capture any specific heuristic here.



Flag name on about://flags



Finch feature name

PreloadingEagerHeuristics

Rollout plan

(RARE) Experiment users ramp up over time

Requires code in //chrome?

False

Estimated milestones

Shipping on desktop 141


Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).

None

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5113430155591680?gate=6200775483195392

This intent message was generated by Chrome Platform Status.
Reply all
Reply to author
Forward
0 new messages