Want to check wifi speed in terminal or looking how to check internet speed in terminal? Here is how to use speedtest-cli to test internet download speed in Ubuntu terminal.
The speedtest-cli is a command line interface for testing Internet bandwidth using speedtest.net Speedtest-cli is a script written in the Python programming language which measures the Internet speed bidirectionally.
This application allows you to check your Internet speed upon distance in km, it can test against specific servers and it also provides a URL so that you can share your result on the Internet.
Install speedtest-cli on Ubuntu
Run the following commands to install speedtest-cli on Ubuntu:
sudo apt-get update
sudo apt-get install python-pip
sudo pip install speedtest-cli
Once installed, you can use it via Terminal commands.
Using speedtest-cli
The speedtest-cli command can be used to check the Internet speed on Ubuntu Linux Systems. The command has the following format:
speedtest-cli [-h] [--bytes] [--share] [--simple] [--csv] [--csv-delimiter CSV_DELIMITER] [--csv-header] [--json] [--list] [--server SERVER] [--mini MINI] [--source SOURCE] [--timeout TIMEOUT] [--secure] [--version]
The easiest way to use the command is without any argument:
$ speedtest-cli
The command shows the download speed and upload speed in Mbit/s. If you wish to get the speed results in bytes, run:
$ speedtest-cli --bytes
Whereas the command when used with –simple argument, displays only the basic information like ping, download and upload speed.
$ speedtest-cli --simple
You can also share the speed results as image using the command speedtest-cli –share.
speedtest-cli optional arguments
There are many command options for speedtest-cli:
- -h, –help show this help message and exit
- –bytes Display values in bytes instead of bits. Does not affect the image generated by –share, nor output from–json or –csv
- –share Generate and provide a URL to the speedtest.net share results image
- –simple Suppress verbose output, only show basic information
- –csv Suppress verbose output, only show basic information in CSV format. Speeds listed in bit/s and not affected by –bytes
- –csv-delimiter CSV_DELIMITER Single character delimiter to use in CSV output. Default “,”
- –csv-header Print CSV headers
- –json Suppress verbose output, only show basic information in JSON format. Speeds listed in bit/s and not
affected by –bytes - –list Display a list of speedtest.net servers sorted by distance
- –server SERVER Specify a server ID to test against
- –mini MINI URL of the Speedtest Mini server
- –source SOURCE Source IP address to bind to
- –timeout TIMEOUT HTTP timeout in seconds. Default 10
- –secure Use HTTPS instead of HTTP when communicating with speedtest.net operated servers
- –version Show the version number and exit
Please note:
There is the potential for this tool to report results inconsistent with Speedtest.net. There are several concepts to be aware of that factor into the potential inconsistency:
- Speedtest.net has migrated to using pure socket tests instead of HTTP based tests
- This application is written in Python
- Different versions of Python will execute certain parts of the code faster than others
- CPU and Memory capacity and speed will play a large part in inconsistency between Speedtest.net and even other machines on the same network
More info: https://github.com/sivel/speedtest-cli