Extends the Performance Navigation Timing API NavigationType with 'useragent_launch' to help measure the cold start scenario during page load. This allows a web developer to measure the performance of their application code compared to the cost of browser initialization tasks. This is a pain point for pinned PWAs or WebView apps that will often require a cold start of the user agent.

Motivation

Despite the variety of performance measurements available through the current API, it's difficult to discern from the NavigationType whether the measurements reflect those of a regular navigation under normal browsing or of one where the browser is in a non-optimal performance state, such as a cold start. A browser launch is one of the most expensive performance scenarios commonly encountered in typical PWA and WebView patterns. Our proposal seeks to create a new value for the NavigationType enum to differentiate this condition from others in measurements of web application performance. Modifying the NavigationType to include state for a user agent launch (i.e. useragent_launch) will enable engineers to determine whether a given measurement is taken from a launch scenario, enabling greater differentiation of application performance from browser performance in scenarios where the browser engine is launched and terminated frequently. Examples include: Electron apps, system WebViews, or other application scenarios where the browser is relatively short-lived or commonly launched from a terminated state.

Status in Chromium

Blink>PerformanceAPIs>NavigationTiming


No active development

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.

  • No signal
  • No signal
  • No signals

Owner

Last updated on 2022-05-11