Blog

Why the speed test says 100 Mbps and the video still stutters

You pay for 100 megabits, the speed test proudly shows 100, and the video call freezes every time someone at home uploads photos to the cloud. The test isn’t lying. It measures the width of the road, while your call is stuck in the queue at the exit. Here is what that queue is, how to measure it, and how to make it shorter.

By the fof.lol team · · 5 min read

A hundred megabits! Six lanes!

A hundred megabits. Zero metres per second.

SpeedBench learns the difference between a wide road and a fast one. Someone is backing up their photos ahead.

1Two different numbers

A connection has two properties that are easy to mix up. Bandwidth, in megabits per second, is how wide the road is: how much data can pass at once. Latency, the ping, in milliseconds, is how long one packet takes to get there and back.

Most of what we do needs surprisingly little width. SpeedBench’s own table puts HD video at 5 Mbps, 4K at 25, and a video call at 3 down and 2 up with a ping under 150 ms. A game needs even less width but a ping under 60. So 100 Mbps is plenty. What spoils a call or a game is almost never the width; it’s the wait.

2Where the queue builds up

Between your home and the internet sits the router, and it has a buffer: a waiting room for packets that arrived faster than the line can take them. A little buffer is useful. A big one is a trap. When someone starts a large upload (a cloud backup, a video for a chat, a game update), the waiting room fills to the brim, and every packet now waits its turn, including the tiny packets of your voice.

That is bufferbloat: the delay that appears only under load. With an idle line the ping is 20 ms; while the backup runs, 480. The megabits don’t drop, the speed test is happy, and the person on the call hears you half a second late.

The road is wide. The router’s door is not.

The pumpkin times the queue. The queue is in no hurry.

3SpeedBench: measure the jam

SpeedBench measures exactly this. First the ping on an idle line (20 requests), then download and upload, and during both it keeps pinging about four times a second. The result is Latency under load, separately for download (↓) and upload (↑), and the Bufferbloat grade by how much the delay grew at its worst:

  • A+: under 5 ms, as if nothing were happening;
  • A: under 30 ms, fine for anything;
  • B: under 60 ms, calls are fine, games notice;
  • C: under 200 ms, calls start to lag;
  • D: under 400 ms, people talk over each other;
  • F: 400 ms and more. Our example with 480 lands here.

Upload is usually the culprit: the upstream line is narrower, so its waiting room overflows sooner. Run the test at a busy hour, not at night, when the network is quiet and everything looks perfect.

4What helps

  • SQM or QoS in the router. Smart queue management keeps the waiting room short and lets small packets through first. It is often called SQM, sometimes “QoS” or “bandwidth control”; it usually wants you to enter your real speed, a little below what the test shows.
  • Find the big upload. Cloud photo backups, game updates, torrents, a security camera sending video. Pause them for the call, or schedule them for the night.
  • A cable instead of Wi-Fi for the computer you call from. It won’t fix the router’s queue, but it removes the second jam, in the air.
  • If the router has none of this, a router that has is often the cheapest upgrade of the whole connection, cheaper than a faster tariff that won’t help.

After any change, run SpeedBench again and compare the grade. Before a call, MeetBench checks the same thing in its own way: an increase in delay while sending of up to 100 ms is fine, over 300 ms is a problem.

SQM on. One at a time, no long waits.

The same door, a short queue. The pumpkin’s stopwatch finally gets bored.

Measure your jam

One test with download, upload and latency under load, graded from A+ to F. No installation, and the result fits in a short link.

Open SpeedBench

Read next