Web/API/PerformanceResourceTiming

From Get docs


The PerformanceResourceTiming interface enables retrieval and analysis of detailed network timing data regarding the loading of an application's resources. An application can use the timing metrics to determine, for example, the length of time it takes to fetch a specific resource, such as an XMLHttpRequest, <SVG>, image, or script.

The interface's properties create a resource loading timeline with high-resolution timestamps for network events such as redirect start and end times, fetch start, DNS lookup start and end times, response start and end times, etc.. Additionally, the interface extends PerformanceEntry with other properties which provide data about the size of the fetched resource as well as the type of resource that initiated the fetch.

Note: This feature is available in Web Workers.

Properties

This interface extends the following PerformanceEntry properties for resource performance entry types by qualifying and constraining them as follows:

 PerformanceEntry.entryTypeRead only
Returns "resource".
PerformanceEntry.nameRead only
Returns the resources URL.
PerformanceEntry.startTimeRead only
Returns the timestamp for the time a resource fetch started. This value is equivalent to PerformanceEntry.fetchStart.
PerformanceEntry.durationRead only
Returns a timestamp that is the difference between the responseEnd and the startTime properties.

The interface also supports the following properties which are listed in the order in which they are recorded for the fetching of a single resource. An alphabetical listing is shown in the navigation, at left.

PerformanceResourceTiming.initiatorTypeRead only
A string representing the type of resource that initiated the performance entry, as specified in PerformanceResourceTiming.initiatorType.
PerformanceResourceTiming.nextHopProtocolRead only
A string representing the network protocol used to fetch the resource, as identified by the ALPN Protocol ID (RFC7301).
PerformanceResourceTiming.workerStartRead only
Returns a DOMHighResTimeStamp immediately before dispatching the FetchEvent if a Service Worker thread is already running, or immediately before starting the Service Worker thread if it is not already running. If the resource is not intercepted by a Service Worker the property will always return 0.
PerformanceResourceTiming.redirectStartRead only
A DOMHighResTimeStamp that represents the start time of the fetch which initiates the redirect.
PerformanceResourceTiming.redirectEndRead only
A DOMHighResTimeStamp immediately after receiving the last byte of the response of the last redirect.
PerformanceResourceTiming.fetchStartRead only
A DOMHighResTimeStamp immediately before the browser starts to fetch the resource.
PerformanceResourceTiming.domainLookupStartRead only
A DOMHighResTimeStamp immediately before the browser starts the domain name lookup for the resource.
PerformanceResourceTiming.domainLookupEndRead only
A DOMHighResTimeStamp representing the time immediately after the browser finishes the domain name lookup for the resource.
PerformanceResourceTiming.connectStartRead only
A DOMHighResTimeStamp immediately before the browser starts to establish the connection to the server to retrieve the resource.
PerformanceResourceTiming.connectEndRead only
A DOMHighResTimeStamp immediately after the browser finishes establishing the connection to the server to retrieve the resource.
PerformanceResourceTiming.secureConnectionStartRead only
A DOMHighResTimeStamp immediately before the browser starts the handshake process to secure the current connection.
PerformanceResourceTiming.requestStartRead only
A DOMHighResTimeStamp immediately before the browser starts requesting the resource from the server.
PerformanceResourceTiming.responseStartRead only
A DOMHighResTimeStamp immediately after the browser receives the first byte of the response from the server.
PerformanceResourceTiming.responseEndRead only
A DOMHighResTimeStamp immediately after the browser receives the last byte of the resource or immediately before the transport connection is closed, whichever comes first.
PerformanceResourceTiming.transferSizeRead only
A number representing the size (in octets) of the fetched resource. The size includes the response header fields plus the response payload body.
PerformanceResourceTiming.encodedBodySizeRead only
A number representing the size (in octets) received from the fetch (HTTP or cache), of the payload body, before removing any applied content-codings.
PerformanceResourceTiming.decodedBodySizeRead only
A number that is the size (in octets) received from the fetch (HTTP or cache) of the message body, after removing any applied content-codings.
PerformanceResourceTiming.serverTimingRead only
An array of PerformanceServerTiming entries containing server timing metrics.

Methods

PerformanceResourceTiming.toJSON()
Returns a DOMString that is the JSON representation of the PerformanceResourceTiming object.

Example

See the example in Using the Resource Timing API.

Specifications

Specification Status Comment
Resource Timing Level 1The definition of 'PerformanceResourceTiming' in that specification. Candidate Recommendation Initial definition.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
PerformanceResourceTiming Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

Full support 10

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

connectEnd Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

Full support 10

Opera

Full support 32

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 32

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

connectStart Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

Full support 10

Opera

Full support 32

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 32

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

decodedBodySize Chrome

Full support 54

Edge

Full support 17

Firefox

Full support 45

IE

No support No

Opera

Full support 41

Safari

No support No

WebView Android

Full support 54

Chrome Android

Full support 54

Firefox Android

Full support 45

Opera Android

Full support 41

Safari iOS

No support No

Samsung Internet Android

Full support 6.0

domainLookupEnd Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

domainLookupStart Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

encodedBodySize Chrome

Full support 54

Edge

Full support 17

Firefox

Full support 45

IE

No support No

Opera

Full support 41

Safari

No support No

WebView Android

Full support 54

Chrome Android

Full support 54

Firefox Android

Full support 45

Opera Android

Full support 41

Safari iOS

No support No

Samsung Internet Android

Full support 6.0

fetchStart Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

initiatorType Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

nextHopProtocol Chrome

Full support 61

Edge

Full support 17

Firefox

Full support 45

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

Full support 61

Chrome Android

Full support 61

Firefox Android

Full support 45

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 8.0

redirectEnd Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

redirectStart Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

requestStart Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

responseEnd Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

responseStart Chrome

Full support 43

Edge

Full support 12

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

secureConnectionStart Chrome

Full support 43

Edge

Full support 18

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

serverTiming Chrome

Full support 65

Edge

Full support ≤79

Firefox

Full support 61

IE

No support No

Opera

Full support 52

Safari

No support No

WebView Android

Full support 65

Chrome Android

Full support 65

Firefox Android

Full support 61

Opera Android

Full support 47

Safari iOS

No support No

Samsung Internet Android

Full support 9.0

toJSON Chrome

Full support 43

Edge

Full support ≤18

Firefox

Full support 40

IE

No support No

Opera

Full support 30

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 42

Opera Android

Full support 30

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

transferSize Chrome

Full support 54

Edge

Full support 17

Firefox

Full support 45

IE

No support No

Opera

Full support 41

Safari

No support No

WebView Android

Full support 54

Chrome Android

Full support 54

Firefox Android

Full support 45

Opera Android

Full support 41

Safari iOS

No support No

Samsung Internet Android

Full support 6.0

Available in workers Chrome

Full support 43

Edge

Full support ≤18

Firefox

Full support 60

IE

No support No

Opera

Full support 32

Safari

Full support 12

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 60

Opera Android

Full support 32

Safari iOS

No support No

Samsung Internet Android

Full support 4.0

workerStart Chrome

Full support 43

Edge

Full support 16

Firefox

Full support 58

IE

No support No

Opera

Full support 32

Safari

Full support 11

WebView Android

Full support 43

Chrome Android

Full support 43

Firefox Android

Full support 58

Opera Android

Full support 32

Safari iOS

Full support 11

Samsung Internet Android

Full support 4.0

Legend

Full support  
Full support
No support  
No support


See also