Troubleshooting

Bufferbloat Explained: Why Your Ping Spikes and How to Fix It

9 min read · Updated 2026-08-15 · PulseLAN

Your internet plan tests fine, yet the moment someone starts a big upload or a game update downloads, your video call turns to slush and your ping jumps from 20 ms to 400 ms. That is bufferbloat: oversized network buffers hoarding packets under load and adding hundreds of milliseconds of delay. Here is what causes it, how to measure it in a couple of minutes, and how to fix it — usually without spending a dime.

What bufferbloat actually is

Every router, modem, and switch has memory set aside to hold packets that are waiting their turn to be sent. That buffer exists for a good reason: it smooths out brief bursts of traffic so nothing gets dropped unnecessarily. The trouble is that many consumer devices ship with buffers that are far too large for the link speed they are feeding. When the link fills up — say, during a big upload — packets pile into that oversized buffer and sit there.

Because the buffer is deep, packets are not dropped; they are simply delayed. A packet that would normally cross your router in a millisecond now waits behind hundreds of other packets. The result is latency that balloons only when the connection is busy. Your throughput can look perfectly healthy on a speed test while your responsiveness quietly collapses. That gap between raw speed and responsiveness is the heart of the problem, and it is why understanding the difference between throughput, latency, and jitter matters so much here.

Note: Bufferbloat is a latency problem, not a bandwidth problem. A gigabit connection with bad buffer management can feel worse on a video call than a 50 Mbps line that is tuned correctly.

Why it wrecks calls and games but not downloads

Downloads and file transfers are throughput-hungry but latency-tolerant. A file does not care whether each packet takes 20 ms or 300 ms to arrive, as long as they keep coming. Interactive traffic is the opposite. A voice packet, a game input, or a Zoom frame is useless if it shows up half a second late.

When your upload saturates the link, every interactive packet has to queue behind the bulk transfer's packets in that bloated buffer. So the exact moment you most want low latency — a live call, a competitive match — is when a background sync, a cloud backup, or someone else's 4K stream pushes your delay through the roof. The classic tell is that everything is fine until the connection gets busy, then it falls apart, then it recovers the instant the transfer finishes.

Uploads are usually the worse offender because home connections have far less upstream bandwidth than downstream, so the upstream buffer fills first and fills fastest. A single cloud photo backup can be enough to spike your ping.

How to test for bufferbloat

A normal speed test will not reveal bufferbloat, because it measures ping while the line is idle and then measures throughput separately. You need a loaded-latency test: something that pings continuously while simultaneously saturating the link, so you can watch what happens to latency under load.

The manual version is simple. Open a terminal and start a continuous ping to a nearby server:

  • On Windows: ping -t 8.8.8.8
  • On macOS or Linux: ping 8.8.8.8

Watch the idle times for a few seconds — they should be low and steady. Now, in another window, start a heavy upload: send a few large files to a cloud drive, or run a full speed test. Keep watching the ping. If your times jump from, say, 18 ms to 200–600 ms, you have bufferbloat. Repeat the experiment while saturating the download instead. Then let everything finish and confirm the ping settles back down.

Several public tools run this loaded test automatically and give you a letter grade for latency under load. That grade — not the raw Mbps number — is what predicts call and game quality.

Tip: Run the test wired into the router if you can. Wi-Fi adds its own variable latency, and you want to isolate the router's buffering behavior from wireless noise before you start changing settings.

Before and after: what good looks like

The table below shows typical patterns. Idle ping is what you see with the line quiet; loaded ping is what you see while the connection is saturated. These are illustrative ranges, not benchmarks — your absolute numbers depend on your ISP and distance to the test server, but the shape is what matters.

ScenarioIdle pingPing under loadAdded latencyVerdict
Bloated buffers, no SQM~18 ms~350–600 ms+300 ms or moreBad — calls and games unusable under load
Partial fix (QoS, no fair queuing)~18 ms~80–150 ms+60–130 msNoticeably better, still not clean
SQM with fq_codel or cake, tuned~18 ms~25–45 ms+10–25 msGood — barely feels the load
Fiber with cake at line rate~8 ms~10–18 ms+5–10 msExcellent

The goal is to keep the added latency under load down to a few tens of milliseconds. Getting from +400 ms to +20 ms is the difference between a call that stutters and one nobody notices.

How to fix bufferbloat

1. Turn on SQM (Smart Queue Management)

The real fix is not a bigger pipe — it is smarter queuing. Modern algorithms like fq_codel and cake actively manage the buffer: they keep it short, drop or mark packets early when it starts to fill, and fairly interleave interactive traffic between bulk flows. Instead of letting a download monopolize the buffer, they let your voice packets slip through with minimal delay.

Many current routers expose this under a name like "SQM," "Smart Queue," "Adaptive QoS," or "bufferbloat control." If yours has it, enable it and choose cake or fq_codel if you get the option.

2. Set your bandwidth slightly below your line rate

This is the counterintuitive part. For SQM to control the queue, the queue has to live on your router, not inside your ISP's equipment where you cannot touch it. You achieve that by telling the SQM to shape traffic at roughly 85–95% of your true line rate.

  • Measure your actual sustained up and down speeds first (a plain speed test is fine for this part).
  • Set the SQM download and upload limits to about 90% of those numbers.
  • Re-run the loaded-latency test and nudge the percentage down if latency is still high, or up if you are giving away too much speed.

You are trading a little peak throughput — often 5–10% — for a massive latency improvement under load. For anyone who makes calls or games, that trade is overwhelmingly worth it.

Warning: If you set the shaping rate above your real line rate, SQM cannot control the queue and does nothing. When in doubt, set it a bit lower and measure.

3. Use a router that can actually do it

If your ISP-supplied gateway has no SQM option, you have a few paths:

  • Flash OpenWrt onto a supported router. Its SQM package with cake is the gold standard and is free.
  • Buy a router with built-in adaptive QoS. Several gaming-oriented and prosumer models include competent bufferbloat control out of the box.
  • Add a dedicated shaping device between your modem and network if you want to keep your existing Wi-Fi.

One caveat: cake and fq_codel are CPU-bound. A cheap router may not be able to shape a multi-gigabit line without maxing out its processor, so match the hardware to your plan speed. If you are on a fast tier, read up on multi-gig home networking before you buy.

4. Reduce what saturates the link in the first place

SQM is the fix, but you can also relieve pressure: schedule big cloud backups and OS updates for overnight, pause syncing during calls, and cap the upload rate of chatty apps. This does not solve bufferbloat, but it keeps the buffer from filling during the moments you care about.

Ruling out other culprits

Latency spikes under load are the signature of bufferbloat, but not every latency problem is buffering. If you also see packets vanishing — not just delayed — you may have a separate issue; walk through diagnosing packet loss to tell the two apart. And if the spikes happen only on Wi-Fi and never when wired, the queue may not be your bottleneck at all; interference and channel congestion can masquerade as bloat, which is where router placement and channel selection come in. When you want to confirm the fix end to end, a controlled test with a LAN speed test like PulseLAN alongside a continuous ping lets you watch throughput and latency together.

Bufferbloat is one of the most satisfying home-network problems to fix because the payoff is so lopsided: a few minutes in your router settings, a small sacrifice in peak speed, and suddenly your calls stay smooth even while the whole house is downloading. Measure under load, enable smart queuing, shape just below your line rate, and re-measure. If your ping under load drops from the hundreds into the tens, you have solved it.