CallMeter logoCallMeter Docs

Metrics Reference

Complete reference for CallMeter's 90+ real-time VoIP quality metrics. Understand every measurement across quality, network, feedback, jitter buffer, audio, video, call timing, and impairment categories.

Metrics Reference

CallMeter collects 90+ real-time measurements per endpoint per second during every test and probe execution. These metrics give you complete visibility into what is happening on the wire, from high-level quality scores like MOS down to individual packet timing measurements.

This reference documents every metric: what it measures, why it matters, and how to interpret it.

Metric Categories

CallMeter organizes metrics into eight categories, each covering a different layer of the VoIP stack.

Quality

The headline metrics that summarize call quality into actionable numbers. Start here when evaluating test results.

MetricKeyUnitWhat It Tells You
MOS Scoremos1-5Overall voice quality rating
R-Factorr_factor0-100Transmission quality rating
Jitterjitter_msmsPacket arrival time variation
Round Trip Timertt_msmsNetwork latency
Packets Lostpackets_lostpacketsAbsolute packet loss count
Packet Loss Ratefraction_lost%Percentage of packets lost
Clock Driftclock_drift_estimateppmHardware clock accuracy
Clock Skewclock_skew_estimateppmSender-receiver clock difference
Timestamp Jumpstimestamp_jumpsjumpsRTP timestamp discontinuities

Network

Transport-level measurements that show what is happening at the packet level. Use these to diagnose the root cause when quality metrics show degradation.

MetricKeyUnitWhat It Tells You
Packets Sentpackets_sentpacketsTotal packets transmitted
Packets Receivedpackets_receivedpacketsTotal packets received
Bytes Sentbytes_sentbytesTotal data transmitted
Bytes Receivedbytes_receivedbytesTotal data received
Packets Sent Ratepackets_sent_rate_psppsTransmission rate
Packets Received Ratepackets_recv_rate_psppsReception rate
Send Bitratebytes_sent_rate_bpsbpsOutbound bandwidth
Receive Bitratebytes_recv_rate_bpsbpsInbound bandwidth
Duplicate Packetsduplicate_packetspacketsPackets received more than once
Out-of-Order Packetsout_of_order_packetspacketsPackets arriving in wrong order
Sequence Resetssequence_number_resetsresetsSequence counter restarts
Sequence Gapssequence_number_gapspacketsBurst loss event sizes
Sequence Jumpssequence_number_jumpsjumpsLarge sequence discontinuities
Max Packet Spacingmax_packet_spacingmsLargest gap between packets
Avg Packet Spacingavg_packet_spacingmsAverage gap between packets
Expected Packetsexpected_packetspacketsExpected count from sequence numbers
RTP Late Packetslate_packetspacketsPackets late at network level
SSRC Switchesssrc_switchescountRTP stream identifier changes
SRTP Decryption Failuressrtp_decrypt_failurescountEncryption decryption errors
Local ICE Candidatelocal_candidate_typeICE candidate type used locally (host/srflx/prflx/relay)
Remote ICE Candidateremote_candidate_typeICE candidate type used remotely (host/srflx/prflx/relay)

Feedback

RTCP feedback messages exchanged between endpoints. These metrics are critical for understanding how endpoints react to quality problems.

MetricKeyUnitWhat It Tells You
NACK Messagesnack_countcountNegative acknowledgement requests
PLI Messagespli_countcountPicture Loss Indication messages
FIR Messagesfir_countcountFull Intra Request messages
SLI Messagessli_countcountSlice Loss Indication messages
SIP INFO PFUsip_info_pfurequestsSIP INFO Picture Fast Update requests (RFC 5168) - non-RTCP keyframe request signaling
RTCP Intervalrtcp_sr_rr_interval_msmsRTCP report cadence health

Jitter Buffer

Receiver-side buffering metrics that reveal how well the receiver is coping with network jitter.

MetricKeyUnitWhat It Tells You
Current Delayjitter_buffer_delaymsCurrent jitter buffer delay (ms) - gauge metric from GStreamer rtpjitterbuffer
Target Delayjitter_buffer_targetmsTarget jitter buffer delay (ms) - configuration reference from GStreamer
Late Packetsjitter_buffer_latepacketsPackets arriving too late for playout
Average Jitterjitter_buffer_avg_jittermsBuffer-observed jitter
Packet Lossesjitter_buffer_lossespacketsPackets lost at buffer level
Duplicatesjitter_buffer_duplicatespacketsDuplicate packets at buffer
Packets Pushedjitter_buffer_pushedpacketsPackets delivered for playout
RTX Requestsjitter_buffer_rtx_requestscountRetransmission requests sent
RTX Successjitter_buffer_rtx_successcountSuccessful retransmissions

Audio

Codec-specific audio measurements including audio levels, silence detection, comfort noise, DTMF event tracking, audio bitrate, and packetization interval.

MetricKeyUnitWhat It Tells You
PLC Eventsplc_eventscountPacket loss concealment events
PLC Durationplc_durationms/sTotal PLC duration from Opus decoder - opusdec plc-duration property (cumulative, Opus codec only)
Audio Signal Levelaudio_signal_level_rms_dbovdBovVAD-gated speech level
Audio Noise Levelaudio_noise_level_rms_dbovdBovBackground noise level
Speech Activity (VAD)vad_speech_ratio%Voice Activity Detection ratio showing DTX/VAD behavior and bandwidth savings
Comfort Noise Ratecomfort_noise_insertsinserts/sComfort noise insertion rate providing concealment visibility
Opus Bandwidthopus_bandwidth_khzkHzOpus decoder bandwidth in kHz (narrowband=4, mediumband=6, wideband=8, super-wideband=12, fullband=20) - indicates audio quality tier and frequency range of the encoded content
Opus Decoder Gainopus_decoder_gain_dbdBOpus decoder gain adjustment in dB - indicates output level normalization applied by decoder. Measured from opusdec in both send and receive paths.
Opus Packet Loss %opus_packet_loss_pct%Codec-level loss percentage
Opus Last Packet Durationopus_last_packet_duration_msmsOpus frame duration
Audio Level RMSaudio_level_rms_dbovdBovOverall audio level

Video

Encoding and playback metrics including frame rate, resolution changes, keyframe intervals, freeze events, decoder errors, and discarded frames.

MetricKeyUnitWhat It Tells You
Keyframe Requests Sentkeyframe_requests_sentcountPLI/FIR requests sent
Keyframe Requests Receivedkeyframe_requests_receivedcountPLI/FIR requests received
Keyframes Sentkeyframes_sentcountKeyframes transmitted
Keyframes Receivedkeyframes_receivedcountKeyframes received
Video Bitratevideo_bitrate_bpsbpsVideo codec bitrate
Video FPSvideo_fpsfpsFrame rate
ResolutionresolutionMPxVideo resolution displayed as width×height (e.g., 640×480, 1920×1080) - shows adaptive bitrate changes
Keyframe Intervalkeyframe_interval_msmsTime between keyframes
Video Freeze Eventsvideo_freeze_countcountNumber of video freezes
Video Freeze Durationvideo_freeze_duration_msmsTotal freeze time
Video Decoder Errorsvideo_decoder_errorscountFrame decode failures

Call Timing

SIP signaling timing measurements captured once per call. Unlike the categories above, these are one-shot values rather than time-series data.

MetricKeyUnitWhat It Tells You
Time to Tryingtime_to_trying_msmsINVITE to 100 Trying
Time to Ringingtime_to_ringing_msmsINVITE to 180 Ringing
Post-Dial Delaypdd_msmsPost-Dial Delay — time from INVITE to first ringback or media
Call Setup Timecall_setup_msmsTotal time from INVITE to 200 OK (call connected)
Time to First Mediatime_to_first_media_msmsINVITE to first RTP packet
Call Durationcall_duration_msmsTotal call time
Final Status Codefinal_status_codecodeSIP response code
Call Resultcall_resultstringOutcome category

Impairment

Counters emitted by CallMeter's built-in network impairment simulator. They report what the platform deliberately did to the stream, so a degraded result can be attributed to the injected condition rather than to the network under test.

MetricKeyUnitWhat It Tells You
Impairment: Droppedimpairment_packets_droppedpacketsPackets dropped by impairment engine (random + burst loss)
Impairment: Delayedimpairment_packets_delayedpacketsPackets delayed by impairment engine (latency + jitter)
Impairment: Reorderedimpairment_packets_reorderedpacketsPackets reordered by impairment engine
Impairment: Duplicatedimpairment_packets_duplicatedpacketsPackets duplicated by impairment engine
Impairment: Throttledimpairment_packets_throttledpacketsPackets dropped by bandwidth limiter (token bucket)
Impairment: Avg Delayimpairment_avg_delay_msmsAverage delay added by impairment engine (ms)

Time-Series vs One-Shot Metrics

Most CallMeter metrics are time-series measurements. The platform samples them every second throughout the call and records each data point with a timestamp. This produces a continuous timeline that you can chart, zoom into, and correlate across endpoints.

One-shot metrics are captured once per call and represent a single event or duration. Call timing metrics like post-dial delay and setup time fall into this category. They appear as single values in the results summary rather than as charts.

Send vs Receive Direction

Every metric has a direction: send or receive.

  • Send metrics describe what the endpoint is transmitting. For example, packets_sent counts outbound RTP packets, and bytes_sent_rate_bps measures outbound bitrate.
  • Receive metrics describe what the endpoint is receiving from the remote side. For example, jitter_ms on the receive side measures how much the incoming packet arrival times vary.

Some metrics are meaningful in both directions. Packet counts, byte counts, and bitrates exist for both send and receive. Quality scores like MOS and R-Factor are computed per direction based on the conditions observed in that direction.

Filtering by Direction

In the CallMeter dashboard, use the direction filter on any endpoint detail view to isolate send or receive metrics. This is essential when diagnosing asymmetric quality issues where one direction is degraded but the other is fine.

Using This Reference

Each metric page in this reference follows a consistent structure:

  1. What it measures — Plain-language explanation followed by technical detail
  2. Why it matters — Business and operational impact
  3. How CallMeter measures it — Measurement methodology
  4. Thresholds — Good, warning, and critical ranges (where applicable)
  5. Common causes of problems — What drives this metric out of range
  6. How to fix it — Actionable remediation steps
  7. Related metrics — Cross-references to metrics that provide additional context

Start with the Quality metrics for the high-level picture, then drill into Network metrics when you need to understand the underlying transport behavior.

On this page