RTCRtpSender: getStats() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

The RTCRtpSender method getStats() asynchronously requests an RTCStatsReport object which provides statistics about outgoing traffic on the RTCPeerConnection which owns the sender, returning a Promise which is fulfilled when the results are available.

Syntax

js
getStats()

Parameters

None.

Return value

A JavaScript Promise which is fulfilled once the statistics are available. The promise's fulfillment handler receives as a parameter a RTCStatsReport object containing the collected statistics.

The returned RTCStatsReport accumulates the statistics for all of the streams being sent using the RTCRtpSender, as well as the statistics for any dependencies those streams have.

These might include, for example, statistics with types: outbound-rtp, candidate-pair, local-candidate, remote-candidate.

Examples

This simple example obtains the statistics for an RTCRtpSender and updates an element's innerText to display the current round trip time for requests on the sender.

js
sender.getStats().then((stats) => {
  document.getElementById("currentRTT").innerText = stats.roundTripTime;
});

Specifications

Specification
WebRTC: Real-Time Communication in Browsers
# widl-RTCRtpSender-getStats-Promise-RTCStatsReport

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
getStats()

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

See also