Navigation timing performance entriesBaseline · Widely available
A navigation performance entry measures navigation events, such as loading time or the number of redirects.
Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Oct 25, 2021. Widely available since Apr 25, 2024.
Browser support
DesktopChrome
1–56Not supported
57+Supportedsince Mar 9, 2017
Current: 155Edge
12+Supportedsince Jul 29, 2015
Current: 154Firefox
1–57Not supported
58+Supportedsince Jan 23, 2018
Current: 157Safari
1–14.1Not supported
15+Supportedsince Sep 20, 2021
Current: 27MobileChrome Android
18–56Not supported
57+Supportedsince Mar 16, 2017
Current: 155Firefox Android
4–57Not supported
58+Supportedsince Jan 22, 2018
Current: 157Safari iOS
1–15Not supported
15.1+Supportedsince Oct 25, 2021
Current: 27How to use
This feature is Baseline widely available — use it freely, no fallback needed.
Example
Full syntax and examples are on MDN: PerformanceNavigationTiming.
Feature detection
JS · check before using
if ("PerformanceNavigationTiming" in globalThis) {
// PerformanceNavigationTiming is available
} else {
// load a polyfill or use a fallback
}Sub-features
Support for each part of the feature (13). The overall table above shows when the whole feature works.
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| PerformanceNavigationTiming | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.criticalCHRestart | 116 | 116 | ✕ | ✕ | 116 | ✕ | ✕ |
| PerformanceNavigationTiming.domComplete | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.domContentLoadedEventEnd | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.domContentLoadedEventStart | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.domInteractive | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.loadEventEnd | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.loadEventStart | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.redirectCount | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.toJSON | 57 | 16 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.type | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.unloadEventEnd | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |
| PerformanceNavigationTiming.unloadEventStart | 57 | 12 | 58 | 15 | 57 | 58 | 15.1 |