CallMeter Docs

Jitter

Inter-arrival jitter measures the variation in packet arrival times — a key indicator of network stability that directly impacts voice and video quality.

Jitter

PropertyValue
Keyjitter_ms
UnitMilliseconds (ms)
TypeGauge
DirectionSend and Receive
RFCRFC 3550 Section 6.4.1

What It Measures

Jitter measures how much the timing between received packets varies from one packet to the next. In a perfect network, packets arrive at perfectly regular intervals — for example, every 20ms for a G.711 audio stream. In reality, each packet takes a slightly different path and encounters different queuing delays, so arrival times fluctuate. That fluctuation is jitter.

Technically, CallMeter computes inter-arrival jitter using the algorithm defined in RFC 3550 Section 6.4.1. This is a running average that smooths out individual packet variations while tracking the overall trend. The formula compares the expected inter-packet spacing (based on RTP timestamps) against the actual arrival time difference.

Why It Matters

Even if no packets are lost, high jitter degrades call quality. Here is why:

The receiver uses a jitter buffer to smooth out arrival time variations. Packets that arrive early wait in the buffer; packets that arrive late (but within the buffer window) still get played on time. But if jitter exceeds the buffer size, late packets are discarded — effectively creating packet loss from the receiver's perspective.

Higher jitter forces larger jitter buffers, which adds playout delay. That delay increases round-trip time, which makes conversations feel unnatural. It is a cascading problem: jitter causes buffer growth, buffer growth causes delay, delay hurts conversational quality.

How CallMeter Measures It

CallMeter computes jitter every second using the RFC 3550 algorithm applied to the live RTP packet stream. This is a direct measurement from actual packet arrival times, not an estimate or report from the remote side. The value represents the smoothed inter-arrival jitter at the point of measurement.

Thresholds

LevelValueMeaning
Good20ms or belowNetwork is stable
Warning20ms - 50msBuffer may need to grow, monitor closely
CriticalAbove 50msLikely causing audible quality degradation

What Causes High Jitter

  • Network congestion — When links are saturated, packets queue behind other traffic. Burst traffic creates variable queuing delays.
  • Shared or oversubscribed links — VoIP sharing bandwidth with large file transfers or video streaming experiences inconsistent delays.
  • WiFi and wireless links — Radio contention, retransmissions, and power-saving modes introduce irregular delays.
  • QoS misconfiguration — Without proper DSCP markings and queue prioritization, voice packets compete equally with all other traffic.
  • Path changes — When routing changes mid-call (BGP reconvergence, failover events), the new path may have different latency characteristics.
  • Buffer bloat — Oversized buffers on network equipment absorb congestion but convert it into high, variable delay.

How to Fix It

  1. Enable QoS. Mark RTP packets with DSCP EF (Expedited Forwarding) and configure network equipment to prioritize marked traffic.
  2. Use dedicated media paths. Separate voice traffic from data traffic using VLANs or dedicated links.
  3. Reduce wireless hops. Use wired connections for SIP infrastructure wherever possible.
  4. Check for buffer bloat. If jitter is high but consistent, oversized buffers on intermediate equipment may be the cause. Reduce buffer sizes.
  5. Monitor path stability. Use CallMeter's per-second jitter timeline to correlate spikes with network events.

Jitter vs Packet Loss

Low jitter with high packet loss points to a different problem than high jitter with low loss. The first suggests intentional drops (firewall, rate limiter). The second suggests congestion. Always look at both metrics together.

  • MOS Score — Jitter is a primary input to MOS calculation
  • R-Factor — Jitter contributes to the delay impairment factor
  • Packet Loss Rate — High jitter can cause effective packet loss at the jitter buffer
  • Round Trip Time — Jitter buffer sizing adds to end-to-end delay
  • Max Packet Spacing — Shows the worst-case gap between packets

On this page