What Bufferbloat Is
Bufferbloat happens when your router's buffer — the temporary storage it uses to handle incoming and outgoing data — fills up during a large transfer. Once full, every other packet has to queue behind the download or upload data. Your gaming packets, video call packets, and web requests all pile up waiting for the download data ahead of them to clear.
The confusing part: your download speeds look great. A speed test run while this is happening will still show high throughput. But your latency has spiked from 20ms to 300ms or more. Games freeze and stutter. Video calls become choppy. The connection appears healthy by the most basic measurement, but feels completely broken to anyone doing real-time activities.
Bufferbloat is extremely common on consumer routers, which typically use large buffers to maximize throughput without any mechanism to give latency-sensitive traffic priority access.
How to Test for Bufferbloat
The test is straightforward. You need two things happening at once: a latency measurement and a heavy transfer.
- Open a terminal and start a continuous ping:
ping 8.8.8.8(add-ton Windows to run indefinitely). - Note your baseline ping — the value when nothing else is happening. Usually 10–50ms on most home connections.
- Now start a large file download in the background. Download a Linux ISO, a large game update, or anything that will saturate your connection for at least 60 seconds.
- Watch your ping values while the download runs.
If your ping jumps from 20ms to 200ms or higher during the download, you have bufferbloat. If it stays within 20–30ms of baseline throughout the download, your queue management is working well.
| Test Step | What to Measure | Sign of Bufferbloat |
|---|---|---|
| Idle ping | Baseline latency | Already high at idle — different problem |
| Ping during large download | Latency increase under load | Ping jumps 3x or more above baseline |
| Ping during large upload | Latency increase under upload | Upload often causes worse spikes than download |
| Gaming or call quality under load | Real-world impact | Input lag, freezes, choppy audio |
The Fix: Smart Queue Management (SQM)
SQM is a router feature that intelligently manages the queue rather than simply making it larger. Instead of letting a download fill the buffer and block everything else, SQM schedules traffic so that small, latency-sensitive packets skip ahead of large bulk transfers. The CAKE algorithm (used in OpenWrt and pfSense) is particularly effective.
When SQM is enabled and configured correctly, under-load latency typically stays within 10–20ms of idle latency. That means gaming and video calls remain smooth even when someone else is maxing out the connection.
Routers that support SQM / CAKE:
- Any router running OpenWrt firmware — the widest compatibility, supports CAKE natively
- Routers running pfSense or OPNsense — supports CAKE and FQ-CoDel
- Asus routers with Merlin firmware — adds QoS improvements over stock firmware
- Some Netgear Nighthawk models — check your specific model's settings for SQM or DQL options
If Your Router Does Not Support SQM
Standard QoS with bandwidth limits can still reduce bufferbloat significantly, even without full SQM. The approach is to prevent the buffer from filling completely:
- Find your actual sustained download and upload speeds from a speed test (not the plan speed — measure what you actually get).
- In your router's QoS settings, set the download limit to 85–90% of your measured download speed. Set the upload limit to 85–90% of your measured upload speed.
- Set gaming and video call traffic as highest priority.
- Test again: start a large download and run a ping. Latency should now be significantly more stable under load.
The idea is that by capping your connection slightly below its maximum, your router always has some queue headroom available. Latency-sensitive packets can always find space in the queue rather than waiting behind a wall of download data.
Verifying the Fix
After making changes, repeat the test: run a continuous ping while downloading a large file. Compare your under-load ping before and after. A successful fix will show latency staying close to your idle baseline. If latency still spikes significantly, try tightening the bandwidth cap further or investigate whether your router supports any additional queue management options.
Frequently Asked Questions
What is bufferbloat?
Bufferbloat is when your router's internal buffer fills up during a download or upload, causing packets for other traffic to pile up and wait. This makes latency spike dramatically while your connection looks healthy on a basic speed test.
How do I know if I have bufferbloat?
Start a large download and run a ping test at the same time. If your latency jumps significantly — from 20ms to 200ms or more — while the download runs, you have bufferbloat.
What is SQM and does it fix bufferbloat?
SQM (Smart Queue Management) is a router feature that intelligently manages the queue so large transfers don't crowd out latency-sensitive traffic. When configured correctly, it can bring under-load latency back within 10–20ms of idle latency.
Which routers support SQM or CAKE?
Routers running OpenWrt or pfSense support SQM and CAKE natively. Some Asus routers with Merlin firmware and certain Netgear Nighthawk models also offer good queue management options.
Why does gaming lag when someone else downloads something?
When a large download fills your router's buffer, your gaming packets get stuck in the queue behind the download data. SQM or QoS forces the download to yield to interactive traffic, keeping gaming latency low.
Will QoS alone fix bufferbloat if my router doesn't support SQM?
Basic QoS helps but may not fully eliminate bufferbloat. Setting bandwidth limits to about 85–90% of your measured speed and prioritizing gaming or video call traffic will reduce the problem significantly on routers without full SQM support.