Wondering why your ping spikes to 300ms the moment someone starts a download? Before you can fix bufferbloat, you need to measure it. This guide explains exactly how to run a bufferbloat test using DSLReports, Waveform, and terminal ping commands, how to interpret your A–F grade, and what your loaded latency numbers mean for gaming, video calls, and everyday browsing.
Always run your bufferbloat test with your testing device connected directly to your router via a wired Cat6 Ethernet cable. Running the test over Wi-Fi introduces wireless-layer jitter and retransmission delays that will artificially inflate your bufferbloat measurement, making it impossible to determine whether the problem is on your router or your wireless medium. Test on Ethernet, fix what you find, then re-test on Wi-Fi to isolate wireless-specific issues.
Go to dslreports.com/speedtest or waveform.com/tools/bufferbloat. Connect your device via Ethernet. Run the test. If your grade is A or B, your connection is healthy. If it is C, D, or F, you have bufferbloat — enable SQM (FQ-CoDel or CAKE) on your router following our Bufferbloat Fix Guide and re-test to confirm improvement.
Configure your network environment to generate a custom remediation plan based on your connection type and router brand.
Diagnose and optimize high ping, jitter, and packet loss affecting gaming, video streaming, and real-time remote applications.
A bufferbloat test does not just measure your download or upload speed. It specifically measures loaded latency — how much your round-trip time (ping) increases when your internet connection is simultaneously handling a large data transfer.
The test methodology is simple: it saturates your bandwidth (fills your download and upload channels to capacity) while continuously sending ICMP ping packets to a reference server. Under a FIFO-queued router, the ping packets must wait behind the bulk data in the buffer, causing latency to spike. The spike magnitude is your bufferbloat score.
Idle Ping (No Load)
Baseline latency with no bandwidth in use. Reflects physical distance to server and ISP routing quality.
Download-Loaded Ping
Ping measured while download is saturated. Higher spike = more download-path bufferbloat in router or modem buffers.
Upload-Loaded Ping
Ping measured while upload is saturated. Often worse than download on DSL/cable due to narrow upload bandwidth.
DSLReports is the most widely referenced bufferbloat test tool because it provides a clear letter grade and a real-time latency graph. Follow these steps for an accurate measurement:
Connect via Ethernet
Plug your testing device directly into your router via a Cat6 cable. Wireless testing will add its own jitter on top of bufferbloat, making results inaccurate.
Close all background traffic
Stop all downloads, streaming, cloud backups, and other network activity on all devices in your home. You want only the test to saturate the link.
Open dslreports.com/speedtest
Navigate to the DSLReports Speed Test in a desktop browser (Chrome or Firefox recommended).
Click Start Speed Test
The test runs for approximately 30–60 seconds. Watch the Bufferbloat section on the right side of the screen — it shows real-time A–F grading.
Record your results
Note: Download speed, Upload speed, Idle ping, Download latency (loaded ping under download), Upload latency (loaded ping under upload), Bufferbloat grade.
Save the results link
After the test, DSLReports generates a permanent URL for your results. Copy it — you can share it with ISP support or compare it to future tests.
The Waveform Bufferbloat Test at waveform.com/tools/bufferbloat provides more granular data than DSLReports, separating download and upload latency measurements independently:
| Waveform Metric | What It Means | Good Value | Bad Value |
|---|---|---|---|
| Idle Latency | Your baseline ping with no load | <30ms | >100ms |
| Download Latency | Ping measured during full download saturation | <20ms increase | >100ms increase |
| Upload Latency | Ping measured during full upload saturation | <20ms increase | >100ms increase |
| Bi-directional Latency | Ping during simultaneous up + download saturation | <30ms increase | >150ms increase |
If your Upload Latency is much worse than your Download Latency, your SQM upload cap is either set too high or hardware NAT is bypassing your upload queue. If Download Latency is worse, check that your download SQM cap is correct and that your modem's internal receive buffer is not bloating.
You can perform a manual bufferbloat test without any external tool using your operating system's built-in terminal commands. This method gives you the raw latency numbers directly:
Step 1: Open Command Prompt. Run the ping and note idle time. Step 2: Open browser and start Fast.com. Step 3: Watch Command Prompt for spikes.
# Step 1: Start continuous ping (note idle ping) ping 8.8.8.8 -t # Step 2: Open browser, go to fast.com # Step 3: Watch ping output during speed test # If ping jumps from e.g. 20ms to 200ms = bufferbloat confirmed # Optional: measure with timestamp ping 8.8.8.8 -t | Tee-Object -FilePath ping_log.txt
# Start continuous ping ping -i 0.2 8.8.8.8 # While ping is running, open browser and start fast.com # Watch ping output — the spike during saturation = your bufferbloat # Advanced: use mtr for per-hop analysis mtr --report --report-cycles=60 8.8.8.8
| Observed Ping Behavior | Interpretation |
|---|---|
| 15ms → 18ms during test | No bufferbloat — excellent AQM in place |
| 15ms → 45ms during test | Mild bufferbloat — B grade, minor SQM tuning needed |
| 15ms → 120ms during test | Significant bufferbloat — C/D grade, SQM required |
| 15ms → 400ms during test | Severe bufferbloat — F grade, full SQM overhaul needed |
This table shows what each DSLReports grade means, how much latency increase it represents, and the impact on different use cases:
| Grade | Loaded Latency Increase | Competitive Gaming | Video Calls | Browsing | Action |
|---|---|---|---|---|---|
| A+ | <5ms under full load | ✅ Excellent | ✅ Perfect | ✅ Instant | Nothing — optimal |
| A | 5–20ms under full load | ✅ Great | ✅ Great | ✅ Fast | Nothing — healthy |
| B | 20–50ms under full load | ⚠️ Acceptable | ✅ Fine | ✅ Fine | Optional SQM tuning |
| C | 50–100ms under full load | ❌ Noticeable lag | ⚠️ Minor glitches | ⚠️ Sluggish | Enable SQM immediately |
| D | 100–300ms under full load | ❌ Severe desync | ❌ Frequent drops | ❌ Very slow | SQM + disable HW NAT |
| F | >300ms under full load | ❌ Unplayable | ❌ Call drops | ❌ Timeouts | Full router SQM overhaul |
Different internet connection types have different baseline bufferbloat characteristics, even before applying SQM fixes:
| Connection Type | Typical Grade (No SQM) | Typical Grade (With SQM) | Primary Bufferbloat Source |
|---|---|---|---|
| Fiber (FTTH) | B–C | A+–A | Router FIFO queue only |
| Cable (DOCSIS 3.1) | C–D | A–B | Router + cable modem buffer |
| DSL (PPPoE) | D–F | B–C | Router + ISP DSLAM buffers |
| 5G Home Internet | C–D | B | Router + cellular RAN buffers |
| Starlink | D–F | B–C | Satellite RAN + router buffers |
After enabling SQM with the correct settings, your bufferbloat test results should show a dramatic improvement in loaded latency while your raw speed remains roughly the same (only slightly reduced by the SQM cap):
Download Speed: 94 Mbps
Upload Speed: 11 Mbps
Idle Ping: 16ms
Download Loaded Ping: 287ms (+271ms)
Upload Loaded Ping: 412ms (+396ms)
Bufferbloat Grade: D
Download Speed: 85 Mbps (−10%)
Upload Speed: 10 Mbps (−9%)
Idle Ping: 16ms
Download Loaded Ping: 23ms (+7ms)
Upload Loaded Ping: 21ms (+5ms)
Bufferbloat Grade: A
Notice that raw speed dropped by only ~10% (the SQM cap) but loaded latency improved by over 400ms. This is the trade-off: a small reduction in peak throughput eliminates the bufferbloat spike completely, making the connection feel dramatically smoother for gaming, video calls, and responsive browsing.
If you enabled SQM but your DSLReports grade is still C or worse, work through this troubleshooting checklist:
⚠️ Hardware NAT is still enabled
Fix: Disable CTF, Cut-Through Forwarding, Flow Cache, or NAT Acceleration on your router. This is the #1 reason SQM appears active but has zero effect.
⚠️ SQM bandwidth cap set to advertised speed (not measured speed)
Fix: Run a raw speed test first. Set SQM caps to 85–90% of the measured result, not your ISP plan speed. Plan speeds are theoretical maximums.
⚠️ SQM applied to wrong interface
Fix: Confirm SQM is applied to the WAN interface (eth0.2, pppoe-wan, etc.) — not a LAN interface. Only the WAN interface creates the bottleneck.
⚠️ ISP-side DSLAM or CMTS buffering
Fix: If your grade is still D/F even with a single device and idle network, the ISP's own equipment may be bloating. Contact ISP and request node inspection.
⚠️ Router CPU cannot keep up with line speed
Fix: SQM requires the router's CPU to inspect every packet. On older routers with slow CPUs, SQM may cause packet loss at high speeds. Consider upgrading to a modern router or flashing OpenWrt on a more powerful device.
Once you've tested and confirmed your bufferbloat grade, use these guides to fix it and optimize your entire gaming network:
Bufferbloat Fix Guide
Complete SQM, FQ-CoDel, and CAKE configuration for all router brands
Gaming Lag Spikes Fix
Fix sudden latency spikes in competitive games
Gaming Jitter Fix
Reduce packet delay variation and stabilize ping
Gaming Packet Loss Fix
Stop dropped packets in Warzone, Valorant, CS2
High Ping Fix
Reduce your baseline latency to game servers
How to Reduce Latency
Comprehensive latency reduction for all connection types
Best QoS Settings
Optimize router QoS rules for gaming traffic
Best Router Settings
Full gaming router optimization guide
Packet Loss Test
Check your connection for true packet drops
Default FIFO queues in consumer routers fill completely before dropping packets, causing 200–500ms delay spikes under bandwidth saturation.
CTF/Flow Cache routes packets directly in hardware, completely bypassing any CPU-based SQM algorithm — making SQM appear active but have no effect.
Setting the SQM bandwidth limit to 100% of line speed means the physical link saturates before SQM can constrain the queue, leaving bufferbloat intact.
Congested ISP distribution equipment maintains its own large buffers that home router SQM cannot control, causing residual bufferbloat at the WAN edge.
Navigate to dslreports.com/speedtest in a desktop browser. Click Start Speed Test. The tool runs simultaneous upload and download saturation tests while measuring your latency (ICMP ping) in real-time under load. At the end it assigns a letter grade (A+ to F) based on the ratio of your loaded latency vs. your idle latency. Record your grade, idle ping, and loaded ping spike to document your baseline before applying any fixes.
Navigate to waveform.com/tools/bufferbloat in a browser. This tool measures your connection quality using three simultaneous download streams, three simultaneous upload streams, and a continuous ICMP ping to a reference server. It reports your Download Latency, Upload Latency, and Idle Latency separately, making it easy to determine whether your bufferbloat is worse on upload or download. A loaded latency increase of less than 20ms is considered good.
Open a terminal and start a continuous ping to 8.8.8.8 (ping 8.8.8.8 -t on Windows, ping 8.8.8.8 on macOS/Linux). Observe the idle ping value. Then open a browser and start a speed test at fast.com or speedtest.net. Watch the ping terminal during the speed test — if your ping value jumps by more than 15–20ms during the download phase or more than 30ms during the upload phase, your connection has bufferbloat. The exact spike amount is your bufferbloat severity.
Before changing any router settings, screenshot or record: your DSLReports grade (A–F), your idle ping, your download-loaded ping maximum, your upload-loaded ping maximum, and the date/time of the test. After applying SQM (FQ-CoDel or CAKE), run the exact same tests again. This before/after comparison proves whether the fix worked and by how much the bufferbloat was reduced.
After enabling Smart Queue Management (SQM) on your router and setting the bandwidth cap to 85–90% of your measured speed, run the DSLReports and Waveform tests again. A correctly configured SQM system should reduce your bufferbloat grade from C/D/F to A or B. If the grade does not improve, confirm that hardware NAT acceleration (CTF/Flow Cache) has been disabled on your router, as it bypasses SQM entirely.
Contact your ISP if: after enabling SQM with correct settings your DSLReports grade remains D or F even on an otherwise idle network with only one device; a Waveform test shows high loaded latency starting immediately (suggesting ISP-side queue bloat at the CMTS/DSLAM before your traffic even reaches your router). Provide your Waveform test results and a WinMTR trace showing elevated latency at hop 2 (the ISP's first router) as evidence.
A bufferbloat test measures how much your network latency (ping) increases when your internet connection is under full load — for example, when downloading a large file or streaming video. It does this by saturating your upload and download bandwidth simultaneously while continuously measuring ping. The difference between your idle ping (low load) and your loaded ping (full saturation) is your bufferbloat severity. The larger the spike, the worse your bufferbloat.
The DSLReports bufferbloat grading system rates your connection based on how much loaded latency increases above your idle baseline. A+ or A means your loaded ping increased by less than 5–20ms — excellent, no bufferbloat problem. B means 20–50ms increase — acceptable. C means 50–100ms — noticeable gaming lag spikes. D means 100–300ms — severe bufferbloat requiring SQM. F means your ping spikes more than 300ms under load — unplayable for online games.
The two most reliable bufferbloat test tools are: (1) DSLReports Speed Test (dslreports.com/speedtest) — provides a letter grade and shows your latency graph during the test, making it easy to visualize the spike. (2) Waveform Bufferbloat Test (waveform.com/tools/bufferbloat) — separates download and upload latency measurements, which helps identify whether upload-path or download-path bufferbloat is worse on your connection.
Open a terminal and run a continuous ping (ping 8.8.8.8 -t on Windows). Note your idle ping (e.g., 15ms). Then start a speed test in your browser and watch the ping terminal. If your ping jumps from 15ms to 150ms or more during the download or upload phase, you have bufferbloat. The amount of the spike tells you the severity — a 10ms spike is fine, a 200ms spike is severe and requires SQM configuration on your router.
When you run a speed test, it saturates your entire download and upload bandwidth. Your router's internal buffer fills with queued speed test packets. Real-time packets — like your ping or game packets — must wait behind these queued packets before being transmitted. The time they spend waiting in the queue is the latency spike you observe. This is bufferbloat. The fix is to enable SQM (FQ-CoDel or CAKE) on your router, which keeps queue depths short even during full-bandwidth saturation.
A good bufferbloat score is an A or B grade on DSLReports, or a loaded latency increase of less than 30ms on Waveform. For competitive gaming, you want your loaded ping to increase by no more than 10–15ms above your idle baseline. An increase of 50ms or more will cause noticeable lag spikes during games when other household devices use the internet simultaneously.
No. Fiber optic connections have very low idle latency, but they can still fail the bufferbloat test if the router does not have proper queue management. Bufferbloat is a router-side problem, not a medium problem. Even a 1 Gbps fiber connection will show severe bufferbloat (D or F grade) if the router uses a basic FIFO queue without AQM. The fix is always router-side: enable SQM with FQ-CoDel or CAKE.
Run a bufferbloat test: (1) Before and after changing any router QoS settings to verify the fix worked. (2) After your ISP performs any line maintenance or firmware update on your modem. (3) If you notice sudden gaming lag spikes returning after a period of good performance. (4) Seasonally — ISP node load can change as neighbors upgrade their internet plans, potentially worsening upstream bufferbloat on shared infrastructure.
Yes. Navigate to the Waveform Bufferbloat Test or DSLReports in your mobile browser. 4G and 5G connections often show moderate bufferbloat (B–C grade) because cellular networks include significant internal buffering in the radio access network (RAN) to handle wireless channel variability. If your mobile bufferbloat is worse than your home Wi-Fi, the cellular network itself is the limiting factor and cannot be fixed with router SQM.
Starlink connections typically show C–D grade bufferbloat without SQM due to the high variability in satellite link throughput caused by orbital geometry and atmospheric conditions. The bufferbloat is compounded by Starlink's use of large internal buffers to smooth over inter-beam handoffs. Running CAKE with a conservative bandwidth cap (70–80% of measured speed) on a router between your Starlink dish and your devices significantly improves bufferbloat grades to A or B.