Overview

Command line (CLI) network speed test for GNU/Linux or Mac OS servers, using libncurses to estimate network throughput between your server and wherever you are connecting from. Works on any client platform that has a terminal that supports curses (e.g. iOS, Android, Mac OS, Windows, Linux, etc).

Network speed is measured by writing screenfuls of random characters to the terminal, using the resulting framerate to estimate the throughput. It takes advantage of the implicit communication between the server and your terminal to measure network performance without any client software beyond the terminal you already have.

Screenshots

cspeedtest in color mode

Usage

Usage: cspeedtest [options]

Options:
  -t, --int==T          set integration time to T seconds
  -i, --interactive     run in interactive mode
  -b, --low-bandwidth   low bandwidth (B/W)
  -h, --help            show this help
  -v, --version         show version

Installing

Build from source

  1. Download the source code for the latest release.
  2. Expand the tarball
  3. Run the usual GNU build process:
    • $ ./autoconf
    • $ ./configure
    • $ make
    • $ make install (if desired)

Snap Store

Get it from the Snap Store

Known Issues

  • It’s reasonably accurate over slower connections. However, if your connection is fast enough, the test will eventually become terminal-limited and under report the true network speed.
  • As bit rate increases the color and B/W version diverge. (This is related to the issue above and the fact that the B/W version saturates the terminal display speed quicker.)

Contributing

You’re welcome to fork and contribute pull requests to the GitHub repository.