Hacker News new | past | comments | ask | show | jobs | submit login
Speed Test (cloudflare.com)
664 points by RadixDLT on Aug 10, 2023 | hide | past | favorite | 207 comments



Nice. Every speed test should have a "latency under load" graph, because we can't fight bufferbloat if we can't see it.

DSLReports had the first bufferbloat test I'm aware of, but it's broken now. Another example is https://www.waveform.com/tools/bufferbloat

Ideally this problem should be fixed by ISPs and modem manufacturers, but individuals can use OpenWrt with luci-app-sqm, at least when the connection has a predictable speed limit.

An option to choose between IPv4/IPv6 (or test both) would probably be useful.


Ah the Waveform test is ours! I've been meaning to post it properly to HN since we launched it.

It's far from being a perfect bufferbloat/latency under load test, and there's lots of room to improve it, but we built it when DSL Reports seemed to be running a little unreliably.

We actually use Cloudflare and Fastly on the backend for latency/speed testing. We built and host the test for free mostly because I wanted it, but I justified the dev time as it being very-roundabout marketing for us - so if you ever need a signal booster or MIMO antenna for 5G internet, looks us up :).


In some cases, the upload portion of the waveform test appears to be broken, btw. I worry that underneath it has switched from cubic to BBR and is thus understanding what a normal user actually experiences.

Otherwise I still feel yours is the best web based latency under load test out there! Thank you for creating it and keeping it going so long! (Can I have you add preseem, libreqos, etc, to the FAQ?)


Hey, I love that tool. Use it all the time at our Wisp installs. And it's easy to point clients to it and have them send me the results. If you need donations to keep it going please reach out.


Cloudflare's speed test doesn't have a graph for latency under load, but it shows those numbers while the test is running.

But you can find those graphs in Cloudflare Radar. Half of the https://radar.cloudflare.com/quality section is based on speed test data.


I see a graphical visualization of latency with multiple points and error bars. Maybe "graph" isn't the right technical term?

Edit: It's a box and whisker plot: https://www.khanacademy.org/math/statistics-probability/summ...


Ah, sorry. I thought you were asking for something different (more summarized). It does indeed plot latency during downloads and uploads in the same way as it plots unloaded latency (and I'd call those a "graph" too).


Wow, +500ms latency under upload load for me with Hyperoptic. Incredibly poor. https://www.waveform.com/tools/bufferbloat?test-id=8205ec7e-...


yep. You can fix it for yourself with a SQM-enabled router...

Or encourage your ISP to put in a better packet shaping solution in the first place. There are now a whole bunch of these - Preseem, Cambium, Paraqum, and my own libreqos. Cost is about 30 cents of CAPEX per subscriber.


Is your router just blasting packets out at full speed or does it have a limit set a little below the max. This makes a huge difference in latency.


It's probably your router. The ones supplied by ISPs, as well as many cheap off-the-shelf ones, are terrible at managing load.


The level of detail is very nice, I wish more tools exposed this as easily.

That said, please remember this is a test of you through your ISP to a (hopefully) nearby Cloudflare node. It isn't necessarily testing 'the Internet', since Cloudflare sometimes has creative peering relationships to origins that are not being measured here.

Also, for the people complaining they only have 300 Mb/s -- unless you are streaming multiple 4K movies there is nothing faster about having more bandwidth. You should care about latency, packet loss, and cache hit rate.


> Also, for the people complaining they only have 300 Mb/s -- unless you are streaming multiple 4K movies there is nothing faster about having more bandwidth. You should care about latency, packet loss, and cache hit rate.

Haven’t downloaded any 150+ GB games (or patches even these days) off of Steam lately I see


Yeah. Comcast is shorting me by a solid 50Mb/s and this is the reason it's annoying. On top of the fact that their garbage excuse for a website is literally completely broken. Every time I've tried to use it for the past year it just sticks me in a login loop. What a truly miserable company.


I recently discovered that using the Verizon website on Firefox is pretty much impossible, it similarly has nightmarish login/account issues. Whatever issue the browser has with the site even managed to break their new account flow on two installations I've had done in recent months. The installation and appointments were scheduled and performed, but nobody in their support teams can find either account in their systems and I have not received a bill.

1Gb symmetric at both locations in NYC though and a free Xbox One S and $300 Visa giftcard.

They have essentially paid me to use them as my ISP, and contact from their support teams attempting to figure it out is getting increasingly infrequent


Congrats! Once in a while, the stupidity in systems like this finally works in your favor.


I think the parent comment is still mostly relevant here. 150GB downloads are not common even for those with games that big. A new install is most likely a ~monthly operation and updates that aren’t ready by the time you notice them will be rare.

Sure it would be nice for those few instances, but those are not worth the additional cost for almost any individual or family if they actually work out the time saved waiting.


Is saving 30 minutes on a one time download that imperative? Personally, 300 Mbps on my 400 Mbps plan while upstairs on a wifi connection seems pretty good for my situation. It at least justifies the cost of those mesh routers I bought.


> unless you are streaming multiple 4K movies there is nothing faster about having more bandwidth

Well, having a good network card and frequently downloading large files (which I'm guessing lots of people do here, especially those in ML/AI and related fields), I'm not sure why the downloads wouldn't go faster if you didn't have more bandwidth... People use the internet for more than just watching movies you know.


Yeah, for sure, I'm often syncing multi gigabyte repositories while me and my wife are on video conferences. You really feel the extra bandwidth then.


Smart. With a bit of SEO/marketing, this will become the way consumers judge their internet quality. If connection quality = ping to cloudflare then that puts cloudflare in a very strong negotiating position for peering agreements etc.


There are decent alternatives for this. Fast.com is hosted by Netflix, making them an excellent speedtest to check for service throttling. Google has a speedtest as well (Google "speed test" and it'll show a button).

The more of these tests start appearing, the better.


I've found Fast.com gamed sometimes when traveling in Asia/Europe, in the sense the ISP prioritizes Netflix traffic but normal traffic never gets within 20% of that Fast.com download speed or has much higher latency or something...?

With Cloudflare I'm guessing it's a more balanced measure.


> I've found Fast.com gamed sometimes … the ISP prioritizes Netflix traffic

The other side of this is why Netflix created Fast.com in the first place: ISPs throttling Netflix traffic (or just having poor peering arrangements that affected it) and blaming Netflix when customers complained about poor video quality (due to Netflix downgrading when experiencing congestion) because some speedtest (that likely the ISP prioritized, or at least knew it had better peering to) gave good numbers.

> With Cloudflare I'm guessing it's a more balanced measure.

Both serve the same purpose for their respective owners: to get good scores on fast.com an ISP can't throttle (or allowed to be throttled by avoidable congestion) Netflix traffic, to get good scores on speed.cloudflare.com they can't throttle (or allowed to be throttled by avoidable congestion) traffic to/from Cloudflair's topologically local DCs.

From a user's point of view using both, plus other tests, gives most meaningful results overall.


And they’ve figured out how to get around that. T-Mobile will show full speed on fast but if you have SD video enabled it’ll throttle Netflix videos but not fast.


I was about to bring up T-Mobile because fast.com shows AWFUL results for me, revealing that T-Mobile is in fact throttling Netflix.


Fast.com frequently tells me speeds that cannot exist. Why yes, I am definitely getting 1.2gbps over this gigabit Ethernet and 940mbps Internet connection.


Fast.com seemingly tries to compensate for the overhead. Bandwidth includes every bit on the wire and that's why "940mbps" internet is usually just normal gigabit with a bunch of packet headers and intentionally unused transmit space consuming the phantom 60mbps.

It's hard to guesstimate the exact bandwidth of the data that arrives in your browser because of differences in protocol, MTU, header compression and all that nonsense, especially over technologies like WiFi. In my experience, the WiFi throughput numbers seem spot on.

Their compensation makes for some hilarious statistics, but when you're downloading more than 200mbps the fast.com speedtest doesn't make much sense anyway. No way in hell is Netflix going to allow your single home internet connection to somehow pull in a full gigabit of streaming video. If you're your own ISP you can make it happen, but on the other hand you'll probably also know how to get statistics directly from your network hardware, in which case the fast.com numbers are useless but it still becomes a useful way to spike the load.

Netflix's speedtest is mostly reliable for what it's meant to do, which is solve the question of "my internet is fast but Netflix keeps buffering".

Edit: another factor to consider is that accurate timing has been disabled in most browsers because of side channel attacks like SPECTRE. It's possible that those are affecting your measurements at very high speeds.


I'm familiar with why they sell it as 940mbps vs gigabit; that doesn't concern me. I also don't buy the explanations of MTU, accurate timing, etc for one big reason: other sites like Speedtest.net and the Cloudflare speed test we're on the discussion thread for simply do not have this problem.

And of course, I'd not expect them to want me to pull down 1gbps of streaming video. But I would expect them to burst my connection when downloading videos for offline viewing, their own bandwidth permitting. Unused bandwidth at a point in time is wasted bandwidth. But more central to my original point, I'd also expect their browser-based speed test to not claim I'm going faster than is physically possible. Let's be honest - however they're measuring the actual connection speeds is not as accurate as some of the alternatives on the same playing field.


Netflix and Google both have servers colocated within ISPs' networks so this is probably why. Also SEA is a routing cesspool, many providers don't do settlement free peering and actively throttle IX routes, which is probably why your Internet was so slow.


Huh, that's strange, I usually see the opposite when I'm out and about (particularly in Europe/South America). Popular services like Netflix are throttled but downloading huge blobs from my own servers is much faster.


Here in Europe it's all equally fast. I don't remember ever having a throttled service, that sounds like a page out of the dystopian scenarios produced in the era where net neutrality legislation was being proposed/promoted ten years ago or something. There were rumors back then that bittorrent was being throttled (and corresponding protocol obfuscation and port changing) but I never had that myself


> Here in Europe it's all equally fast

Well, Europe has lots of different countries and I've definitely been in countries that are considered to be in Europe where it's not equally fast, and using a VPN can speed up a lot of things.


Obviously there are faster and slower broadband connections; by "equally fast" I assume GP meant that various services can be reached without ISP choking or throttling, thanks to EU-wide network neutrality rules.


That's what they must mean as well, because otherwise a VPN could never help

I would be curious about concrete examples in Europe, though


TIL. I thought net neutrality legislation was EU-wide actually. Or maybe it is, but not every European country is in the EU, so good point


Fast.com was created specifically to pinpoint the throttling that was actively applied to Netflix in many occurrences back then. It seems to be mostly gone, especially since streaming video now accounts for >50% of web traffic you can't easily throttle it and hope no one notices.


In the USA specifically, I thought? Or which other regions has that happened in? I remember Comcast specifically having a monopoly in many areas and being able to pressure Netflix into getting money from both sides of the fiber (consumers and service providers)


Isn't this exactly what net neutrality laws are supposed to ban?


sure, but aren't there a lot of places that don't have those? I'd say most of the world doesn't, right?


> hosted by Netflix, making them an excellent speedtest to check for service throttling

That's exactly what the person above you meant about Cloudflare, right? By using the Netflix speedtest as a benchmark, you're promoting good connectivity to another commercial entity (for good or for bad, I don't mean to judge, just stating)


Netflix and Google (YouTube) are commercial entities that ISPs will intentionally throttle. Reduce the bandwidth for all Netflix servers to 5mbps and suddenly you're stuck watching at 480p or 720p, even if the connection can handle multiple 4k streams.

This is abused for "unlimited data" subscriptions that aren't unlimited when you actually try to consume more data than a standard subscription would allow you to. Of course that's completely illegal in countries with net neutrality laws, but not every country has those.

I can't think of a reason why a shitty ISP would throttle Cloudflare, as Cloudflare mostly hosts small files. As an ISP you want customers to think websites are nice and fast, because if only Netflix is slow, surely the problem lies with Netflix, right?

If speedtest.net says you have gigabit, Cloudflare says the same, and fast.com is giving you 5mbps, your ISP is messing with your bandwidth. It could be that Netflix has technical issues, but you'd read about those. That's why these tests are useful, and why we need more like them.


> Netflix and Google (YouTube) are commercial entities that ISPs will intentionally throttle.

In Nederland? I only heard these stories from the USA, and then specifically about monopoly ISPs with Netflix as trial target to see if they can get extra money from them


We're safe from this nonsense here in the Netherlands ever since KPN tried to blocked Skype on their network and upset legilators, and the EU has had net neutrality law for a while now. However, with most of the internet being developed over in the USA, the internet as a whole gets better with these features.

I haven't caught any real ISP here (only train/public WiFi). I don't trust Dutch ISPs to follow the law so I do run these checks every now and then.

At least one American mobile carrier overtly advertises "5G" with "unlimited data" followed by "DVD quality (480p) standard" video quality, but not every carrier in every country will be that direct.


Google partners with Measurement Lab (M-Lab) to run this test.


I liked the detailed output of the M-LAB tests, unfortunately the amount of data has fallen over time. They'd also check for traffic shaping / blocking once upon a time. I think the project lasted only as long as the grad students who wrote it were there.


I find fast.com massively overestimates my speeds.

Interestingly, if you hide the tab running their speedtest you get even higher speeds.


> I find fast.com massively overestimates my speeds.

I find fast.com more accurate than most, going by the throughput I see to/from other resources, particularly for upstream rates (which some, including Cloudflair, seem to significantly under-measure). Of course this may vary depending on line type (FTTC, “up to 67Mbit down n& 17 up”, generally seeing more like 50/12) and location (due to differences in local network conditions and peering between you & the speedtest) to I'm not surprised to hear you see the results quite different to those I experience.

> if you hide the tab running their speedtest you get even higher speeds

I suspect this is due to your browser throttling CPU use and timer granularity for background or occluded tabs⁰ reducing the accuracy of the readings, if the code isn't working to mitigate the effect of these throttles on the calculations.

--

[0] refs: https://blog.chromium.org/2020/11/tab-throttling-and-more-pe..., https://www.reddit.com/r/incremental_games/comments/jefviz/f..., and many more


> then that puts cloudflare in a very strong negotiating position for peering agreements etc.

Ideally settlement peering would exist for everyone. Cloudflare, like every other sane provider prefers IX routes over PNI since it's less expensive for everyone involved. There really shouldn't be a discussion about whether peering should be settlement free or not.


btw, on macOS, you can just enter `networkQuality` into your terminal for a speed test. No third-party website or tool of any kind needed, it's a built-in mac CLI.


Who's it measuring against? An (internet) speed test by its nature requires some remote third-party, if you aren't just testing to your own server


Default is Apple’s infra, but you can choose via a config flag. You can also run your own: https://github.com/network-quality/server


They seem to have edge servers around the world. Even here in South Africa, I got idle latency to be 27ms so it must be somewhere in the country. This is from running networkQuality on a MacBook Pro.


In the case of tool built by Apple, running on Apple client hardware, against Apple remote server, that would be "1st party", not "3rd party".


Apple traffic is also heavily prioritised nowadays. They want to avoid huge updates having to be redownloaded I expect. Apple TV would be another reason.


Apple is a 3rd party to yourself


The interesting thing about this to me is its repeated sampling and reporting of a statistical profile of the link. Showing distributions for latency and speed, not just a single average. Really helpful info on less-consistent connections like Starlink.

Example screenshot here: https://postimg.cc/bDTyy8BM


That website is not zoomable on mobile, which is a pretty grave offence for an _image posting site_.


ugh you're right. I'm on the lookout for an imgur replacement, do you have a recommendation?


Minimal file hosts like https://catbox.moe or http://0x0.st work nice in my opinion, here's an example link: https://files.catbox.moe/zamm2d.jpg

The only catch is most of them set a time limit on uploads, but you might be able to (ab)use archive.org if you want the files to stay online forever.


Is there a cli tool for this aswell or just the website? At home I have my server run a speedtest (ookla for now) running every 30 minutes because I do not trust my ISP to keep their end of the deal. I visualize the results with grafana and would love to change over to this. As haivri points out, this is a very detailed report!

EDIT: Apparently there is a nodejs module available https://github.com/cloudflare/speedtest Totally gonna start this project asap


amazing to see this JS library uses minimal direct dependencies and even a separate devDependencies that are not needed for runtime - https://github.com/cloudflare/speedtest/blob/main/package.js...


I do this, although I have a little bit more trust in my fiber ISP. More just curious.

I also wonder how much bandwidth I am using by running all of these tests, but my ISP doesn't have any caps so I guess it doesn't matter.


Do you know samknows? Does that for you.


Uff. Apparently gives correct readings mostly in Chrome only.

I have a 500/500M connection and on the same computer Chrome gives 465/364 and Firefox has 311/303M.

EDIT: this was on Linux/intel.

On Mac M1Pro it Chrome/FF/Safari all get pretty much the same numbers.

Both computers have wired ethernet.


I think this is likely to be related to the way different browsers implement time.

In an effort to improve security, browsers reduce fidelity & accuracy on results from the `performance.now()` timer methods. If you attempt to call `performance.now()`, and then call it again within 100 microseconds, your second result isn't guaranteed to be in the future compared to the first result.

https://developer.mozilla.org/en-US/docs/Web/API/Performance...

If you're implementing a speedtest feature, you'd likely run `performance.now()` iteratively as your high-resolution-timer, and compare that to the number of bytes downloaded. Browsers that perform more significant coarsing will return worse metric-per-second results in that scenario.


Cumulatively, these quirky edge cases make learning web dev very difficult.


I've ran it multiple times in Chrome only and got vastly different results just there, from 200 to 600 down on a 500 connection. Must be heavily dependant on moment-to-moment network conditions I guess, to the point where it's nigh useless.


Yes, the bandwidth test is so short that I'm not surprised it gets inconsistent results. I'd wager the speedtest.net being longer was not decided for fun, but to get more consistent results.

edit: Now I realize that the later tiny-small-medium filesize downloads also add to your above-the-fold download performance, so the results of the initial warm-up test are discarded later.


In general, none of the web based tests run for long enough. Some are configurable to run longer.


I don't have Chrome installed, but on Windows / AMD, I get roughly comparable numbers between Edge (340/211) and Firefox (341/253).


I have tried to produce bufferbloat-related tools that measure things far more accurately and in more detail. https://blog.cerowrt.org/post/flaws_in_flent/


Did you end up on the same server every time? The Atlanta server seems to be OK at the moment.

https://i.imgur.com/SnA9rfH.png


If you're interested in this then you might be interested in the global Internet quality data we are publishing: https://radar.cloudflare.com/quality and https://blog.cloudflare.com/introducing-radar-internet-quali...


Your layout is broken in everything but Chrome.


I do not see an issue with Firefox or Safari on my machine. Feel free to email me (jgc@cloudflare.com) with what you are seeing.


It should be working now. This was an interaction between React's streaming hydration errors (due to unexpected HTML injected by extensions) and one of the frontend dependencies.


Works for me in Firefox. Plugins maybe?


Yes, the add-on to disable Google Analytics https://tools.google.com/dlpage/gaoptout was the problem. Never had that break a web page before.


I think this is great service, and here is another one that Netflix provides:

https://fast.com

That one uses Netflix servers, so you get a valid test as long as your ISP isn't throttling Netflix. Of course they created it so that people would call their ISP and complain they aren't getting the speed they pay for, but it turns out it's a pretty good test most of the time.

And most importantly, it isn't prioritized like speedtest.net.


The prioritization is critical for speedtest.net - it's entire purpose is to provide an assessment of your PHY - not your Network, and certainly not your Internet speed.

speedtest.net should tell you if the physical installation of your cable was done properly - nothing more.


Depends what data you are after: physical bandwidth or the real bandwidth you'll get on a non prioritised website? I for one am after the second one, as it's closer to real life scenarios.


Right - for those you'll want fast.com, speed.cloudflare.com, fiber.google.com/speedtest/, etc... But at first you need to make sure that your fiber/co-ax/DSL was installed correctly - that's why all the cable testers I've watched use speedtest.net


Surely 98% of the people who use Speedtest.net don't understand that though...


I recently discovered the networkquality tool on Mac. As far as I can tell it's the only tool that measures simultaneous upload and download speeds which is more reflective of real world video conferencing use cases.

I was using it to see if my new hardcore gaming router gave me better range than the old one. On isolated up and down tests, it did. But on combined tests, the advantage especially for upload disappeared.


> which is more reflective of real world video conferencing use cases

What's more reflective of real world use cases is a hot discussion topic. :)

The "networkQuality" tool on macOS and other implementations(1) of the "RPM" algorithm(2) are very good to see how an Internet connection behaves under high stress. But the real world is seldom high stress (100Mbps+ connections are rarely pushed to the limit, honestly).

In your example, video conferencing indeed does simulataneous upload and download, but it's also low bandwidth (relatively speaking) and doesn't usually come close to saturating a connection. It can impacted by other traffic in the same connection though.

Which can come from a single user, or multiple users sharing the same connection. And neither networkQuality nor Cloudflare's speed test measure how a connection behaves with multiple users stressing a connection.

In the end, which tool you use depends on what you're trying to measure. For me, the Cloudflare speed test is closer to measuring what I experience in real world use.

(1) https://github.com/network-quality/goresponsiveness

(2) https://www.ietf.org/archive/id/draft-cpaasch-ippm-responsiv...


Yes fair enough. I know my link is great - I pay for 300 up and down and that's what I get. I was running measurements to track degradation in wifi performance due to distance from the router - out in the yard - and how much difference one of these 8 antenna monster routers made. My use case is 100 video conferencing that I want to do reliability from the yard.


Where I am, ISPs have arrangements to give intra-country traffic higher speed than inter-country. The nearest cloudflare PoP this chooses is always inside the country, so it gives misleading result.


This is why it's important to consult multiple speed tests, because it's not really a general "internet speed test", rather a "connection speed test" with a particular server.


I recently switched ISPs and went from something like 100mbs to 500mbs but because of how the new ISP peers some sites are actually slower now.

Though the main ones I use now I can upload at 1000mbs so not going to complain too loud.


Wow, the level of detail exposed here is the best I've seen, super useful.


I have a 250 Mb/s connection, but this claims I have over 440 Mb/s download speed. When looking closer at the details I get 250 Mb/s on all tests except the 1 MB download, so it's probably because of some compression or caching or similar, but I don't get the point of the larger tests if they don't affect the final score. I have never downloaded anything faster than 250 Mb/s before, so this is not a good reflection of my actual internet speed.


I suspect that your line has a configured limit as opposed to physical limit of 250mb/s (perhaps the fibre equipment is capable of 500mb/s or something).

I've seen this ever since I moved to fibre about 8 years ago, I've never taken the fastest packages and whenever I test on speedtest.net it always starts off exceeding my limit, then comes down to my limit over a short while.

The limiter for you may very well allow you to burst for a limited duration, so your speed on 1MB files are possibly at 440mb/s, but once you have sustained line usage it brings you down to your limit. I wouldn't know if this is an intentional feature or just because of how the limiter solution is implemented that it needs to sample over a certain period of time.

It is a slightly useful behaviour if you're browsing the web and only occasionally clicking links which land up being downloaded way faster than your normal limit, but as you're only getting this speed if you do little to nothing for the 10s or 100s of seconds between opening pages, it doesn't have any negative effects over all.


It’s actually quite a hard problem to limit a fast physical connection to a slower speed for a burst - so much so that some tests are much easier with an old 10/100 hub.

What’s nice is when you pay for a certain speed and they give you more if nobody’s using the excess. That’s more rare now but still can be encountered, especially on upload.


Then why is the 100 kB test the slowest, with a max speed of 115 Mb/s? And no upload test gets above 250 Mb/s.

The speed is very clearly throttled by the ISP though, they sell a faster package that I don't need. I'm not complaining, I've just never seen this burst behavior anywhere else.


This is because of the way tcp congestion control works. In order to achieve higher speeds, tcp has a "window" that grows, essentially the amount of data in flight, that has not yet been acknowledged by your client. That window doesn't open very wide in the 100kb test because it happens so quickly.


I have seen similar shaping. This gives a quick responsive browsing experience but throttles bigger downloads/streaming.

It also can be implemented badly. Azure VNET peering had 200M level and 100M level. Where 200M level was 200M most of the time, whereas 100M level was 200M for 30s and 0M for the next 30s.


Provider turned on "burst mode" for your link, for better customer experience.


There's no way I'm getting over 500Mbps on my Telekom phone data in this elevator right now.

EDIT: fast.com is showing 1Gbps. There's no way that's true.


Do you have 5G by chance? Have never really looked up 5G speeds until now, so I personally was suprised by what I found, but apparently the speeds can often be anywhere from 1Gbps to 10Gbps, so anywhere in that ballpark or possibly lower could be true.

> The theoretical maximum speeds of 5G are pretty groundbreaking — but we have a very long way to go before you’re likely to hit that kind of peak speed in the real world, regardless of your connected device. Depending on your 5G coverage, maximum download speeds *often* range from 1Gbps to 10Gbps, and latency, or the time it takes to send data, could go as low as 1 millisecond (ms). [1]

[1]: https://www.digitaltrends.com/mobile/how-fast-is-5g/


Are you on local 5G? I’ve seen numbers like that. And they often put things in the elevator shafts to prevent dropout.



I've been trouble shooting a dodgy 5G connection the last month or so and have entirely abandoned fast.com now. It seems susceptible to wildly inaccurate results when the connection is "bursty", the way 5G can be. I've got some very impressive screenshots from it though, next time anyone wants a measuring contest.


Fast.com uses local Netflix instances for the data so if you near to one yea you can get high speeds. Also 5G might be in the building with you #tinfoilhat


Great, one more speedtest site to pit against all the others. On my gigabyte fibre:

Cloudflare: 697 down / 645 up

fast.com: 860 down / 440 up

Google: 760 down / 347 up

Ookla speedtest: 841 down / 827 up

Quite a large variability in upload speeds, which isn't all the surprising I guess. Network providers often don't really need to prioritise upload traffic...


cloudflare: 863 down / 57 / up

ookla speedtest: 940 up / 750 down


> On my gigabyte fibre:

*gigabit

Get it right already.


I have a gigabyte fiber connection @ home (Technically 10G EPON which has an effective top speed of 8Gb), so there's no way of knowing if it was a mistake or not. (you're probably downvoted because of the dismissive tone though)


I misspoke, but you understood what I meant so no harm was done.


Tried on several devices - it consistently under-reads.

I'm on 500Mbps broadband. Ookla and fast.com show 350Mbps via WiFi. Cloudflare only 274Mbps.

Similar results on Ethernet. Over 400Mbps on a proper speed test. Can't hit 300 on this.

I assume their downstream is capped?


I've read that often ISPs make exceptions for Ookla and fast.com speed tests by removing any sort of throttling to produce the best possible test results.

I expect it isn't as easy for ISPs to treat Cloudflare like this, as it just looks like normal internet traffic.


Got a source for ISPs doing that for fast.com? Fast.com is netflix, so the same argument applies there - if you get 300mbps on fast.com you should get it on netflix too


This is why Netflix runs fast.com, so that if an ISP wants to cheat on speed tests, people are still going to get those cheated speeds even when they stream real Netflix videos. Really clever.


And the other way around, if they throttle Netflix then that'll show up in the speed tests.


Indeed, that's part of what motivated netflix to make fast.com.


is it possible for ISP to distinguish Netflix video streams from connections to Fast.com ? (and throttle them differently)

PS: my latest ISP router doesn't let me change DNS to my local pi-hole. haven't explored all options yet - just got new one 2 days ago -- but currently my DNS queries are going to whatever is the default set by my ISP.


I've never used a pi-hole; but assuming it works as a DHCP server and a DNS resolver, then you should only need to disable DHCP in your router. I've never seen a router than wouldn't let you disable the DHCP server.


What's the motivation to rent an ISP router? That's a lot more control than many people would prefer to give to an entity that is likely anywhere from "greedy and dumb," to greedy and outright hostile.

Having DOCSIS, I buy a modem, and own my router. I am aware that for more exotic technologies like fiber, a rented/ISP-owned 'modem' or network terminal of some sort may be compulsory, but a router is a bridge too far (no pun intended) for me.


(Not in the US.)

Well, here the major ISPs are bundling the FTTH Fibre modem and th WiFi router into a single device.

I wanted to experiment with Mesh router for better wifi coverage but the prices of mesh routers here are high, brands unproven, and returns policy iffy. So I went with the mesh router option offered by ISP for ~1 USD a month.

(I do have a spare wifi router to add if I really feel like. Our location has occassional power outages and the backup power doesn't flip on instantly enough - causing router restarts if we don't add a small battery powered backup to each individual router. So the setup gets bulky and messy.)


Oof. With the power especially, I can see why you would make that call.

On the positive side, they're ripping you off much less than our ISPs do in the States. They usually charge $10-20 a month here for some device which is usually using technology from about 5 years ago (when it's first installed, that is - they don't swap you a new one when technology improves of course, unless you raise a fuss AND they've actually adopted a new model).

I will admit, sometimes it's tempting because you could in theory expect them to support their company-owned hardware. But in practice for us that just means we can complain at some minimum wage call center "tech support" about how the device stops working until rebooted X times a week, and they will offer the choice to reboot it again or to make an all-day appointment for some installer to show up with another identical refurbished modem/router/AP that will have the exact same buggy software.


It's theoretically possible, but practically difficult. They can tell whether you loaded something from fast.com or netflix.com prior to the data stream, or they can give full speed initially and throttle after a minute or two (longer than people's patience for a speed test, but far shorter than a movie).

It's difficult because Netflix can respond to any such technique by taking steps to make it less obvious, so you just end up with one of these cat-and-mouse games.


This was my understanding, too. Anecdotally, I've always seemed to get slower results on fast.com compared to Ookla/speedtest.net/my ISP's speedtest website (the latter of which all seemed to show similar results, leading me to believe that fast.com was exempt from this sort of prioritization).


I think fast.com hits netflix's cache server. Pretty much all isps have one provided to them by netflix.


There's an alternative explanation is that it's possible your ISP hasn't learned to prioritise this speed test traffic unlike other speed tests, and that this is more reflective of general real-world performance?


Odd to see several posts like this, nobody considering that the other tests they've run might be "over-reading".


I know that when I download a large file, it usually hits the advertised speed. So I'm confident that I can saturate my broadband with normal use.

Cloudflare doesn't even get close.


How would they "over-read" and be so accurate?


I'm able to hit 800 down and 400 up on the Cloudflare app. On fast.com i get 980/980, similar with ookla.

I wonder if it could be that various handoffs with cloudflare's network are more busy, but we don't really notice because we're not doing speed tests on it. :)


Ookla traffic is known to be prioritised by ISPs. Maybe ISPs just haven’t caught up with Cloudflare yet and what you’re seeing now is more realistic speeds.


I love the box plots! I wish more sites showed distribution information, including IMDb and Rotten Tomatoes, because I suspect many movies and TV shows have at least bimodal distributions.


I use fast.com instead.

This one tests a 10MB chunk at last and that's the only reliable indication for me.

100KB and 1MB down/up load tests show unrealistically low values, perhaps due to a high latency (ping).


> 100KB and 1MB down/up load tests show unrealistically low values, perhaps due to a high latency (ping).

That's related to TCP congestion control. TCP starts slow and ramps up speed as download progresses.

But you're right that latency also has an impact on smaller downloads, and that's why latency is a critical measurement of connection quality for everyone, not just gamers.


Why do these speed tests start out slow and then get faster over the course of a few seconds?

Is it something about the internet that means the speed changes so much over the course of the test?


That's how TCP works.

TCP initially starts with a small transmission buffer (the congestion window), and gradually increases its size until it starts getting errors (packet drops or reordering).


It's a inherit effect of TCP congestion control. TCP slow start and Window Scaling.


I can't answer your question directly, because I don't know.

But the first keyword I would look at would be BGP.

Generally speaking, routing decisions are dynamic and constantly changing. Add the unreliability of the network layer, corporate politics and optimization heuristics to that and you get varying results.

https://www.cloudflare.com/learning/security/glossary/what-i...

https://en.wikipedia.org/wiki/Border_Gateway_Protocol


BGP / routing is likely to be static during the course of a test (and indeed much longer)


Definitely nothing to do with BGP.


For detailed bufferbloat related statistics, I helped create the flent.org tool, many years ago. It shows details that the web tests cannot.

I keep hoping more folk will see networks with single digit latency under load stats, like what we get from a good cake or fq_codel installation at the CPE, or with libreqos.io, preseem, etc at the ISP.


Super cool that this shows latency under load! It's a shame ISPs seem to only market their throughput numbers, and never mention latency. So many people play multiplayer games now, you would think there would be at least some consumer demand to measure and improve latency over throughput.


Looks great! Didn’t realize there was much more that could be improved upon vs the alternatives but I think I’ll use this again next time.

A dedicated domain would be nice. I probably wouldn’t recommend this to people like fast.com though due to the more complex interface, but I love it!


I actually really like the interface. You have the "generic" speed test information at the top and a lot more additional information at the bottom. It feels a bit overwhelming at first, though, granted.


I'm a fan on https://fast.com

Minimal interface. More details behind a toggle if you need them.


I love that it shows you the 90th percentile


I tried this on my home wifi (fiber backend) and got scores in range with what I expect. Then I tried it again outside the house, a block away using a 5G connection and much to my surprise the bandwidth in downloading was MUCH better (almost 3x) and upload somewhat better (1.5x). The 5G connection had worse latency characteristics though, which is to be expected of course.

Obviously this isn't an apples-to-apples comparison, but I mention it because I'm genuinely surprised that 5G works this well. I've read all the claims but this is the first time I measure it, and frankly if I didn't need lower latency I might've just considered ditching the fiber.


LTE was like this for a year or two also, in the areas that got it deployed first before handsets using it were widely available. It was several times faster than wired consumer internet at the time, though I also remember the latency not being great.

Then within a product cycle or two everyone's phones had it and it went back to normal. I'd expect a similar thing here enjoy it while it lasts I guess.


Users in Sweden should use <https://www.bredbandskollen.se/>.


Seems like a great alternative to blip.

https://github.com/apenwarr/blip


The upload speed numbers are highly suspect. I have cable that shows 32Mbps on every test I've ever run and yet CF is showing an absurd 221Mbps

[edit]

I saw the more detailed information below. The high speed comes entirely from 2 outliers on the 1MB upload test; all of the 10MB tests were clustered around 32Mbps

[edit2]

I reran and got similar results again with 3 1MB uploads over 200Mbps and all other uploads clustered around 32Mbps


It's very cool, but I thing the initial download-speed test is very misleading. Consistently I get like 2/3 of my max, but then when I let it run to completion and it goes through the longer download tests it ramps up to my full speed and I get the full value.


Um. That's how TCP works.


Would be nice to aggregate some of these together. One 'speed' has always been a bad proxy for all the different speeds you get from ISP local caches (that most companies can't get in), local COLO/CDN, regional AWS/Azure/etc... and us-east


Upload results are off for me. I have a 1gbps down/up fiber.

With this speed test, the results are 900mbps down, 400-500mbps up (ran a few tests to confirm)

I tried running fast.com, speedtest.net, google speed test and verizon speed test (I'm on AT&T), they all show ~950mbps down and up


Pretty much spot on for me. 2gig/1gig fiber internet and I got 1.95 Gbps/960 Mbps


Wow that’s fast.

Genuine question: what’s it like having internet that fast?

Because I get 40-50Mbps down and ~16 Mbps down on that tool, and I have fibre to the property (yay, Australia) and I’m so curious to know what’s it like to have a connection that’s actually good.


I’ve ridden a 10g connection to the Internet and the main difference is that big downloads/uploads are near instant. For regular browsing it’s not that noticeable unless it’s also super low latency.


I have 500 Mpbs, and the only noticeable difference versus a connection like yours is that you can download a Ubuntu ISO or a 1080p movie 1-2 minute. That's about it.


This has been my go-to over Fast.com for years. The breakdown of latencies and speeds at different thresholds was very beneficial in validating the behavior of our 5G Home Internet through Verizon.


Sigh. Yet another site that completely fails if cookies are disabled: just an otherwise blank page with the message "Application error: a client-side exception has occurred (see the browser console for more information)", with

    DOMException: Failed to read the 'localStorage' property from 'Window': Access is denied for this document.
in the console.

I can believe that it may not be possible to run the test without local storage (though it's not obvious that that should be the case), but failing to verify that one's website degrades gracefully (and in the face of a totally standard and formerly common browser configuration, no less) deserves disparagment.


Local storage is not cookies. This site stores no cookies.

Looks like their map library uses local storage to persist the API key (or something innocuous) as a form of caching.

This is on you for not letting apps cache data.


This is my test. Just got 5gbe fiber installed this week.

https://imgur.com/a/fTG815R


Interesting. I get higher speeds on cloudflare in chrome.

603Mbps Cloudflare chrome vs. 600 Mbps Cloudflare firefox

But on fast.com (netflix) it's the opposite:

440 Mbps fast.com Chrome vs. 590 Mbps fast.com firefox.


Late reply, but this could be due to your browsers handling DNS differently. Both are capable of using DoH (DNS over HTTPS) and using DNS settings independent of the rest of your PC.


I ran the test from Austin, and it showed the test server as located at the Dallas Airport. I wonder how they decided on which landmarks to represent each data center.


Cloudflare represents each datacenter by the nearest airport code, even though it's not literally at the airport.

https://developers.cloudflare.com/support/troubleshooting/ge...


You also probably need some internal/LAN speed measurement tools. When your wifi link is over-crowded, measuring your uplink isn't much use. I use iperf3.


Many hosting/VPS providers run iperf3 servers you can hit, which can be useful.

Why, here’s some now!

https://github.com/R0GGER/public-iperf3-servers


Maybe it's because I'm using 5G as my home broadband, but it seems massively off when compared to Google's SpeedTest and SpeedTest.net


No way to use bytes instead of bits in the output?


Not how it’s usually measured…link speed is pretty much always in bits/s


But it's not measuring link speed directly. It's measuring transfer rate through TCP which is byte oriented. It's not possible to receive partial bytes via TCP (or UDP for that matter).


I don't measure file size in bits. I don't want to multiply/divide by 8 when roughly estimating how long a download will take. I end up doing 10 instead for maximum ease and pessimism.


Link speed has always been measured in bits/s or as sibling comment suggests baud which is, still, just bits per second.

Obviously a huge part of this is marketing for modems, ISPs, network cards, etc. but it’s consistent. The conversion to GB/s is fairly simple and doable with the super key, or super space on Mac in every modern OS…

I agree with you that the difference is irritating, but wouldn’t have done any different if I were Cloudflare.


> baud which is, still, just bits per second.

Isn't the baud-rate the number of signal transitions per second? How that maps to bits per second depends on the wire encoding.


This is probably more accurate! I was relying on fuzzy memories from an era long past! Thanks for the correction.


> The conversion to GB/s is fairly simple and doable with the super key, or super space on Mac in every modern OS…

Or the dedicated button on my keyboard that spawns a calculator. I don't care, though.


At least it’s no longer in baud.


So what if it's usually bad?


Pretty much bang on for me. 202 down, 195 up where my ISP has sold me 200Mbps symmetric. CommunityFibre in London, UK.


Super impressive level of detail (and easy to understand, at that). Cloudflare went hard on the statistics here.


305 Mbps for me. Cringy how slow internet connetivity is in the UK.


I remember me and my brother getting excited when torrent speeds used to touch 200 kbps. Good days.


You can download an entire album in minutes, that's crazy fast!


Are you in London? My 1Gbps link gives 800-900Mbps in these speed tests, and I'm fine with that. It's a pitty that some of that is unused because I need to use a VPN.

When I lived in a small town, my 500Mbps would give me >400Mbps consistently.


That 800-900Mbps doesn't include the bits needed for IP packet headers, does it?


I'm not sure. All I can say is that speedtest.net and fast.com both show 800/ 900 Mbps for download/upload.


MK area. I wish we had gigabit speeds available.


Googling says there's CityFibre and Giganet in the MK area. Did they skip your house? A fibre company skipped my street in London.


Never heard of the two frankly. Thanks for sharing.


Where are you in the UK that you can get 300 but not gigabit? AIUI, you’ve either got Openreach FTTC (caps out at 80mbps), Openreach FTTH (1gbps), Virgin (1gbps) or various alt nets (usually 1gbps)


Is it cheap?

That's about the same speed for me (in US), and I could get gigabit, but I feel that the ~double cost isn't worth it.


It costs around 70 USD per month. Pretty expensive considered it’s not even gigabit speeds. But as others pointed out I may have better options to consider.


Historically this service is known for being highly incorrect.


Download: 636Mbps Upload: 139Mbps Latency: 13.3ms

Not bad for corp VPN.


The measured speeds are very inaccurate at times - it will often measure low on download and high on upload. Just used it and it rated my connection 277/48 on a 300/30 connection.


No share/record/export/save button?


There is a csv export and sharing to twitter and facebook for me, right nect to pause/retest


Supports IPv6 too. That's a nice surprise.


We've been massive advocates of IPv6 since at least 2012: https://blog.cloudflare.com/ipv6-challenge-to-the-web/


Very cool site, wish there was a dark mode.


I clicked the about link in the top right. I was pleasantly surprised that it was quite a good advertisement for cloudflare workers.


how to change server? default one is too close, I need to test oversea connection


Anything new here?


What are speed tests that work from the command line?


If you have easy access to an arbitrarily large file (or an online random file generator) curl has timing variables that can be exposed via the -w flag.

e.g. Create a format file named curltime.txt containing:

time_namelookup: %{time_namelookup}s\n time_connect: %{time_connect}s\n time_redirect: %{time_redirect}s\n time_starttransfer: %{time_starttransfer}s\n ----------\n time_total: %{time_total}s\n

then

curl -svo /dev/null -w "@curltime.txt" https://example.com/my_arbitrary_file

Would result in something like:

time_namelookup: 0.048205s time_connect: 0.079001s time_redirect: 0.000000s time_starttransfer: 0.377603s ---------- time_total: 0.412150s


That doesn't provide any information about jitter, latency, packet loss, DNS, location, etc.


It's Awesome, giving almost right result




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: