Here will be my rant about measuring download speed in general, proxies including.
So in the very start of testing - I was downloading differently sized file (i.e. 1Mb, 10Mb, 100Mb) and was getting different results. Didn't think much of it, set to 100Mb and was testing just fine (that's why on the website you can see 1-10 speed tests, can't allow more because of bandwidth). However, my dear friend mentioned that my results were pretty small (generally under 10mbps median for a residential proxy), so I started to dig deeper. Turns out, websites like speedtest, fast etc. are using multiple threads when measuring, so I added threading and speed improved. However results were still unclear. Fast forward to today (or it's yesterday already) and I've been trying to measure amount of downloaded file during set amount of seconds. It was working fine, however it appears so you get TCP connection time (with SSL handshake and everything). Alright, I'm starting timer from first received byte. Aaaaand it's not enough, because the way download/upload works is that host and client are exchanging bytes with increasing speed, because nobody knows what other side is capable of. In other words - few seconds you and your favorite porn torrent tracker are trying to find maximum available speed for both. This results in first few seconds being useless for measurement. I say "first few" but you don't really know - in my tests speed becomes steady in anything of 1-8s range. So you not only loosing a ton of bandwidth on "warmup", you also are actively trying to understand when warmup is finished. And then it hitted me like an apple - nobody is actually using proxy for downloading staff. So measuring "time to download a file under 1-2Mb" is actually the right call and it's one of most important metrics because it includes TCP/SSL handshakes (around 1s of unavoidable time) and warmup - who cares if proxy possible of serving 1Gbps if it's reaching this speed after 10s? Anyway, small file downloading speed will be my metric from now on, because it's the most real-life approach to "speed". Even better would be to say "how much time it took to download file of 1Mb" but to be honest it's very unintuitive to process. Also speed always be less than when you test it on specialized websites mentioned above for reasons I've also mentioned above, but like you have to live with it, idk what to tell you.