WebRTC Metrics
A comprehensive overview of WebRTC statistics, derived indicators, and observable signals, to better understand call quality, connectivity, and user experience in rtcStats
A bluetooth device is being usedAborted connection attemptAEC DisabledApple device usedAudio InterruptionsaudioLevelaudioLevelaudioLevel(rms)audioLevel(rms)availableIncomingBitrateavailableOutgoingBitratebytesDiscardedOnSendbytesReceieved (bits/s)bytesReceivedbytesReceivedbytesReceivedbytesReceived (bits/s)bytesReceived(bits/s)bytesSentbytesSentbytesSentbytesSentbytesSent (bits/s)bytesSent (bits/s)bytesSent(bits/s)Can't establish connection to TURNcertificate.fingerprintcertificate.fingerprintAlgorithmcodec.channelscodec.clockRatecodec.mimeTypecodec.payloadTypecodec.sdpFmtpLineconcealedSamplesconcealedSamples/sconcealedSamples/totalSamplesReceived(%)concealmentEventsConnected via a public discovered addressConnected via VPNConnection churnConnection droppedConnection failed to establishConnection relayed over TCPConnection relayed over TLSConnection warmupconsentRequestsSentConstant Microphone VolumecorruptionMeasurementsCPU pressurecurrentRoundTripTime(ms)Delay in playing audioDelays on sending mediaDTLS failureDuplicated lines in local SDPDuplicated lines in remote SDPechoReturnLossechoReturnLossEnhancementEmpty connectionfecBytesReceivedfecPacketsDiscardedfecPacketsDiscarded/sfecPacketsReceivedfecPacketsReceived/sfirCountfirCountfractionLostframeHeightframeHeightframesframesAssembledFromMultiplePacketsframesDecodedframesDecoded/sframesDroppedframesDropped/Received(%)framesEncodedframesEncoded/sframesPerSecondframesPerSecondframesPerSecondframesReceivedframesReceived/sframesRenderedframesSentframesSent/sframeWidthframeWidthfreezeCountheaderBytesReceivedheaderBytesReceived(bits/s)headerBytesReceived(bits/s)headerBytesSentheightHigh bandwidth limitationHigh CPU LimitationHigh decode timeHigh encode timeHigh freeze durationHigh inbound network instabilityHigh inbound network instabilityHigh incoming audio packet lossHigh incoming media jitterHigh incoming media round trip timeHigh other limitationHigh outbound network instabilityHigh outbound network instabilityHigh outgoing audio packet lossHigh outgoing media jitterHigh outgoing media round trip timeHigh pause durationHigh signaling timeHigh STUN delayHigh TURN delayHigh video retransmission receivedhugeFramesSentICE warmupIncoming audio is too loudIncoming audio is too lowIncoming video disruptedInefficient Simulcast detectedinsertedSamplesForDecelerationinsertedSamplesForDeceleration/sInternal IP exposedinterruptionCountInvalid packet loss valuesIPv6 Connectionjitter(ms)jitter(ms)jitterBufferDelayjitterBufferDelay/jitterBufferEmittedCount(ms)jitterBufferEmittedCountjitterBufferFlushesjitterBufferMinimumDelayjitterBufferTargetDelaykeyFramesDecodedkeyFramesDecoded/slastPacketReceivedTimestamplastPacketSentTimestampLate WebRTC Internals capturelocal-candidate.addresslocal-candidate.candidateTypelocal-candidate.portlocal-candidate.prioritylocal-candidate.protocollocal-candidate.relayProtocollocal-candidate.urlLong connection timeLow echo cancellationmessagesReceivedmessagesReceived/smessagesSentmessagesSent/sMicrophone is inaudibleMicrophone is too loudminPlayoutDelaymosMultiple STUN serversnackCountnackCountNo audible incoming audioNo audio samples played outNo iceServers configuredNo IPv4 interfaceNo specific audio and video constraintsNo specific audio constraintsNo specific video constraintsNo TURN TLS/443No volume on incoming audioNo volume on outgoing audiopacketsDiscardedpacketsDiscarded(%)packetsDiscarded/spacketsDiscardedOnSendpacketsLostpacketsLostpacketsLost(%)packetsLost(%)packetsLost/spacketsLost/spacketsReceivedpacketsReceivedpacketsReceivedpacketsReceived/spacketsReceived/spacketsReceivedWithCepacketsReceivedWithCepacketsReceivedWithEct1packetsReceivedWithEct1packetsReportedAsLostpacketsReportedAsLostpacketsReportedAsLostButRecoveredpacketsReportedAsLostButRecoveredpacketsSentpacketsSentpacketsSentpacketsSent/spacketsSent/spacketsSentWithEct1packetsSentWithEct1/spacketsWithBleachedEct1MarkingpauseCountpeer-connection.dataChannelsClosedpeer-connection.dataChannelsOpenedpliCountpliCountPotential echo loopPotential local bufferbloatPrefer TURN candidates onlyPrivate TURN address publishedProtected mDNS addressqpSumqpSumqpSum/framesDecodedqpSum/framesEncodedqualityLimitationDurationsRedundant STUN serversremote-candidate.addressremote-candidate.candidateTyperemote-candidate.portremote-candidate.protocolremovedSamplesForAccelerationremovedSamplesForAcceleration/sreportsSentrequestsReceivedrequestsSentresponsesReceivedresponsesSentretransmittedBytesReceivedretransmittedBytesReceived(bits/s)retransmittedBytesSentretransmittedBytesSent(bits/s)retransmittedPacketsReceivedretransmittedPacketsSentretransmittedPacketsSent/sroundTripTime(ms)roundTripTime(ms)roundTripTimeMeasurementsroundTripTimeMeasurementsShort-lived connectionsilentConcealedSamplessilentConcealedSamples/sSlow DTLS establishmentStalled streamSymmetric NATtargetBitratetargetEncodedBytesTargetToo many camera changesToo many disconnectionsToo many enumerateDevices requestsToo many frames droppedToo many getUserMedia requestsToo many ICE handoversToo many ICE ServersToo many microphone changesToo many network interfacestotalAssemblyTimetotalAssemblyTime/framesAssembledFromMultiplePackets(ms)totalAudioEnergytotalAudioEnergytotalCorruptionProbabilitytotalDecodeTimetotalDecodeTime/framesDecoded(ms)totalEncodeTimetotalEncodeTime/framesEncoded(ms)totalFreezesDurationtotalInterFrameDelaytotalInterFrameDelay/framesDecoded(ms)totalInterruptionDurationtotalPacketSendDelaytotalPacketSendDelay/packetsSent(ms)totalPausesDurationtotalPlayoutDelaytotalPlayoutDelay/totalSamplesCount(ms)totalProcessingDelaytotalProcessingDelay/jitterBufferEmittedCount(ms)totalRoundTripTimetotalRoundTripTimetotalRoundTripTimetotalRoundTripTime/responsesReceived(ms)totalRoundTripTime/roundTripTimeMeasurements(ms)totalRoundTripTime/roundTripTimeMeasurements(ms)totalSamplesCounttotalSamplesDurationtotalSamplesDurationtotalSamplesDurationtotalSamplesDuration/stotalSamplesReceivedtotalSamplesReceived/stotalSquaredCorruptionProbabilitytotalSquaredInterFrameDelaytransport.bytesReceivedtransport.bytesSenttransport.dtlsCiphertransport.dtlsStatetransport.iceStatetransport.packetsReceivedtransport.packetsSenttransport.selectedCandidatePairChangestransport.selectedCandidatePairIdtransport.srtpCiphertransport.tlsVersionTURN Authentication ErrorTURN Client ErrorTURN configured but no TURN candidate gatheredTURN Other ErrorTURN Other ErrorTURN Server ErrorUDP blockedUnused Data ChannelUnused media streamUSB device usedVirtual device usedwidth