This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
* Some parts of this feature may have varying levels of support.
Note: This feature is available in Web Workers.
The Performance interface provides access to performance-related information for the current page.
Performance entries are specific to each execution context. You can access performance information for code running in a window via Window.performance, and for code running in a worker via WorkerGlobalScope.performance.
The Performance interface doesn't inherit any properties.
Performance.eventCounts Read only
An EventCounts map containing the number of events which have been dispatched per event type.
A legacy PerformanceNavigation object that provides useful context about the operations included in the times listed in timing, including whether the page was a load or a refresh, how many redirections occurred, and so forth.
Performance.timing Read only Deprecated
A legacy PerformanceTiming object containing latency-related performance information.
Performance.memory Read only Non-standard Deprecated
A non-standard extension added in Chrome, this property provides an object with basic memory usage information. You should not use this non-standard API.
Performance.timeOrigin Read only
Returns the high resolution timestamp of the start time of the performance measurement.
The Performance interface doesn't inherit any methods.
Performance.clearMarks()Removes the given mark from the browser's performance entry buffer.
Performance.clearMeasures()Removes the given measure from the browser's performance entry buffer.
Performance.clearResourceTimings()Removes all performance entries with a entryType of "resource" from the browser's performance data buffer.
Performance.getEntries()Returns a list of PerformanceEntry objects based on the given filter.
Performance.getEntriesByName()Returns a list of PerformanceEntry objects based on the given name and entry type.
Performance.getEntriesByType()Returns a list of PerformanceEntry objects of the given entry type.
Performance.mark()Creates a timestamp in the browser's performance entry buffer with the given name.
Performance.measure()Creates a named timestamp in the browser's performance entry buffer between two specified marks (known as the start mark and end mark, respectively).
Performance.measureUserAgentSpecificMemory() Experimental
Estimates the memory usage of a web application including all its iframes and workers.
Performance.now()Returns a DOMHighResTimeStamp representing the number of milliseconds elapsed since a reference instant.
Performance.setResourceTimingBufferSize()Sets the browser's resource timing buffer size to the specified number of "resource" type PerformanceEntry objects.
Performance.toJSON()Returns a JSON representation of the Performance object.
Listen to these events using addEventListener() or by assigning an event listener to the oneventname property of this interface.
resourcetimingbufferfullFired when the browser's resource timing buffer is full.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
Performance |
6 | 12 | 7 | 15 | 8 | 18 | 7 | 14 | 9 | 1.0 | 4.4 | 9 |
clearMarks |
2925–29 | 12 | 38 | 33 | 11 | 2925–29 | 42 | 33 | 11 | 2.01.5–2.0 | 4.4 | 11 |
clearMeasures |
2925–29 | 12 | 38 | 33 | 11 | 2925–29 | 42 | 33 | 11 | 2.01.5–2.0 | 4.4 | 11 |
clearResourceTimings |
4622–57 | 12 | 35 | 3315–44 | 11 | 4625–57 | 35 | 3314–43 | 11 | 5.01.5–7.0 | 464.4–57 | 11 |
eventCounts |
85 | 85 | 89 | 71 | No | 85 | 89 | 60 | No | 14.0 | 85 | No |
getEntries |
2825–36 | 12 | 35 | 1515–23 | 11 | 2825–36 | 35 | 1514–24 | 11 | 1.51.5–3.0 | 4.4 | 11 |
getEntriesByName |
2825–36 | 12 | 35 | 1515–23 | 11 | 2825–36 | 35 | 1514–24 | 11 | 1.51.5–3.0 | 4.4 | 11 |
getEntriesByType |
2825–36 | 12 | 35 | 1515–23 | 11 | 2825–36 | 35 | 1514–24 | 11 | 1.51.5–3.0 | 4.4 | 11 |
mark |
2825–28 | 12 | 38 | 33 | 11 | 2825–28 | 42 | 33 | 11 | 1.5 | 4.4 | 11 |
measure |
2825–28 | 12 | 38 | 33 | 11 | 2825–28 | 42 | 33 | 11 | 1.5 | 4.4 | 11 |
measureUserAgentSpecificMemory |
89 | 89 | No | 75 | No | 89 | No | 63 | No | 15.0 | 89 | No |
memory |
7 | 79 | No | 15 | No | 18 | No | 14 | No | 1.0 | 4.4 | No |
navigation |
10 | 12 | 7 | 15 | 8 | 18 | 7 | 14 | 9 | 1.0 | 4.4 | 9 |
now |
2421–24 | 12 | 15["In Firefox 57.0.4 the accuracy was reduced to 20 microseconds.", "In Firefox 59 the accuracy was reduced to 2 milliseconds.", "In Firefox 60 the accuracy was increased to 1 millisecond."] |
15 | 8 | 25 | 15["In Firefox for Android 57.0.4 the accuracy was reduced to 20 microseconds.", "In Firefox for Android 59 the accuracy was reduced to 2 milliseconds.", "In Firefox for Android 60 the accuracy was increased to 1 millisecond."] |
14 | 9 | 1.5 | 4.4 | 9 |
resourcetimingbufferfull_event |
4622–57 | 79 | 35 | 3315–44 | 11 | 4625–57 | 35 | 3314–43 | 11 | 5.01.5–7.0 | 464.4–57 | 11 |
setResourceTimingBufferSize |
4622–57 | 12 | 35 | 3315–44 | 11 | 4625–57 | 35 | 3314–43 | 11 | 5.01.5–7.0 | 464.4–57 | 11 |
timeOrigin |
62 | 16 | 53 | 49 | 15 | 62 | 53 | 46 | 15 | 8.0 | 62 | 15 |
timing |
6 | 12 | 7 | 15 | 8 | 18 | 7 | 14 | 9 | 1.0 | 4.4 | 9 |
toJSON |
56 | 12 | 25 | 43 | 14.1 | 56 | 25 | 43 | 14.5 | 6.0 | 56 | 14.5 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Performance