Performance

What is Jitter?

Definition

Jitter is variation in packet delay over time, as distinct from the average delay itself. For voice, gaming and trading, jitter often matters more than latency: a consistent 60 ms is far more usable than an average of 40 ms that regularly spikes to 200 ms, because buffers are sized for the worst case rather than the mean.

Why Jitter matters

For voice, gaming and trading, jitter often matters more than latency: a consistent 60 ms is far more usable than an average of 40 ms that regularly spikes to 200 ms, because buffers are sized for the worst case rather than the mean. Jitter usually comes from queueing on a congested link, from route flapping, or — on the server side — from CPU steal time delaying the process that should have replied. That last cause is invisible in a network trace and is the reason dedicated vCPU matters for latency-sensitive workloads. Measure it with mtr or a long iperf3 run rather than a handful of pings; a five-packet sample tells you almost nothing about variance.

Jitter in practice

When you run a latency-sensitive service, jitter is what you measure with mtr or a long iperf3 run, not a handful of pings. Watch for variance in the delay column, not just the average. If you see spikes, check for CPU steal time on the host—that is invisible in a network trace. Reduce jitter by ensuring you have dedicated vCPU, not shared resources. Get it wrong and your buffers will be sized for worst case, which means your voice, gaming, or trading traffic degrades to unusable during peaks.

What people get wrong about Jitter

People assume a low average latency means good performance. The common error is ignoring variance, thinking that 40 ms average with spikes to 200 ms is fine. Correct: jitter often matters more than latency—buffers are sized for worst case, so consistent 60 ms outperforms an average 40 ms that regularly spikes. Always measure over time.

Jitter — common questions

What tool can I use to measure jitter?

Use mtr for a quick view or a long iperf3 run for variance analysis. A five-packet ping sample tells you almost nothing about jitter—it only shows average latency. Running a test over a longer period reveals the spikes in delay variation that actually matter for real traffic.

How does CPU steal time affect jitter?

CPU steal time delays the process that should reply to a packet, adding unexpected latency spikes. This cause is invisible in a network trace, so it’s often missed. It’s why dedicated vCPU matters for latency-sensitive workloads—on shared hosts, steal time introduces jitter you can’t fix on the network side.

More from performance

CPU steal time
Steal time is the proportion of time a virtual CPU was ready to run but the hypervisor gave the physical core to another guest.
RTT
RTT is the time for a packet to travel to a destination and for the response to return, measured in milliseconds.
TTFB
TTFB measures the time from a request being sent to the first byte of the response arriving.