I don’t know if you’ve noticed, but if you perform an internet speed test on your phone using different apps/websites you tend to get different results. Heck I just tried right now and these are the 3 results I got;
- Speedtest.net – 36.6mbps (download) and 7.6 Mbps (upload)
- Fast.co.zw – 18.4mbps (download) and 19Mbps(upload)
- Speedcheck.org – 0.74Mbps (downloads) and 0.52Mbps (upload)
There is a great degree of variance on all three tests and following a discussion with a colleague who faced a similar problem we thought it was worth looking into this mystery.
Different results for different tests
The first and most common reason for the variance is simply because different tests run differently. Let’s use Speedtest and Fast.com as examples (since these are the most popular).
Speedtest measures how long it takes to process multiple data chunks, while simultaneously working to stuff the pipe full of data throughout the test.
Fast on the other hand “runs parallel connections”. For each connection the fast.com client then picks a 25MB for downloading and this works out in the following way;
In situations where the network layer supports periodical progress events, it makes sense to request the whole file and estimate network speed using download progress counters. In cases where the download progress event is not available, the client will gradually increase payload size during the test to perform multiple downloads and get a sufficient number of samples.
Yes, a lot of networking mumbo jumbo but that’s beside the point. The point, in reality, is the speed tests vary and that variance is reflected in whatever tests you perform.
Differences outside of the tests themselves
Lifehacker suggests that some of the following problems you may have if you’re getting different results from speed tests;
- You might have an artificially slow connection to whatever server(s) the test is using;
- Your ISP might be prioritizing or throttling your performance, depending on how the test operates;
- Even your browser, packed with add-ons and extensions, might be interfering with a specific test;
- Or you’re running tests at different times and misinterpreting a “poor” internet connection for what’s actually network congestion;