6

How to calculate approximately the connection speed of a website using JavaScript?

I want to create a javascript widget like, which will calculate the speed opening the current opened page.

I am asking if this can be done using just javascript and what will be the idea.

Update

Note that the page size is always Unknown.

Amr Elgarhy
  • 66,568
  • 69
  • 184
  • 301

2 Answers2

11

Here's an example using AJAX with .Net backend, though it could be anything.

Here's a simpler example using an image.

The key is to have a page/object of a known size and capture the start and end times as the browser retrieves it. Then simply divide the size by some [unit of time] to get [size] per [unit of time]. Then use math to translate this into whatever you want.

Ryan Emerle
  • 15,461
  • 8
  • 52
  • 69
-2

Sure.

<script>
    startTime = Date.now();
    window.onload = function(){
        endTime = Date.now();
        //Time in ms between opening page, and loading all the date
        alert(endTime - startTime)
    };
</script>

Now to approximate speed. Statically you know let's say page is 200kb.

var kbps = 200 / (endTime - startTime * 1000);
Dmitri Farkov
  • 9,133
  • 1
  • 29
  • 45