How to monitor bandwidth at regular interval

Hi to all,
I’d like to monitor the available Internet bandwidth for a certain period of time (i.e. 24h) at regular intervals. I think my ISP is giving me a bad connection.
I’d like to write a script that write on the output a sort of speed test.
I’m not that expert in network traffic monitoring. So here the questions:

  1. What values should I consider (ping…others)?
  2. I guess I can’t retrieve the number of connected devices directly from my workstation. Am I wrong?
  3. Could you suggest some CLI program?
    Any advice would be appreciated.
    Many thanks in advance.

I would suggest using something like and use a script to run it (or manually). They provide a downloadable record of the tests run so you can see the historical statistics.

Be aware that the speed provided by the ISP is only one limiting factor. Data transfer is also affected by every link in the transfer path between you and the testing server.


You can try it is a opensource option available… and speedtest also have a good option but i don’t know is it open source or no i think it is not open.


Thank you all.
I’m used to but I’ve never seen so far that it has a CLI. Never heard about openspeedtest but seems equally good for me.
I think I should use a proxy for discovering connected devices (phones, tablet) to the router but It requires more and more knowledge than mine. I would mark both as solutions. Don’t know if possible. Have a nice day.