SpeedFox Testing Methodology
Full technical disclosure of how we measure bandwidth, latency, and connection quality.
By the SpeedFox team · Last updated
1. Latency & Jitter Probes
Latency (Ping) is measured by calculating the Round Trip Time (RTT) of consecutive lightweight HTTP requests to our target test server. SpeedFox computes Jitter using the RFC 3550 standard for Mean Absolute Deviation between sequential latency measurements:
2. Download & Warm-Up Phase
The download test opens parallel HTTP streams (configurable 1–6 connections) directly from the client browser. To prevent TCP slow-start from under-reporting your true bandwidth, SpeedFox incorporates a 1.5-second warm-up window. Samples recorded during warm-up are discarded before calculating final average throughput.
3. Cache Busting & Header Protections
To ensure accuracy, every request append unique timestamp parameters and sets explicit HTTP headers (Cache-Control: no-cache, no-store) preventing local browser caches or intermediary proxy servers from spoofing speed results.
4. Bufferbloat Grading
Alongside idle ping, SpeedFox samples round-trip latency while the download and upload phases are actively saturating your connection, then takes the 90th percentile of those loaded-ping samples, which resists a single fluke spike swinging the result while still reflecting genuinely sustained latency under load. The increase over your idle ping is graded on the same A+-to-F convention popularized by Waveform's bufferbloat test:
See what bufferbloat is and why it matters for the full explanation.
Real-world Browser Limitations
No browser speed test can guarantee 100% precision due to external factors including Wi-Fi interference, background system updates, active VPN overhead, or JavaScript engine garbage collection. We present measurements transparently without making exaggerated claims.