📈 Python script to create a beautiful Google Chart out of your speedtest results
Switch branches/tags
Nothing to show
Clone or download
Latest commit e0d78ea Jul 17, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Update docs Jul 10, 2018
.gitignore Cleanup .gitignore Mar 15, 2017
LICENSE Switch license to MIT Nov 22, 2015
README.md Version bump to 1.7.0 Jul 16, 2018
requirements.txt Add oauth2client to requirements.txt Jul 10, 2018
speedtest-charts.py removed sheetname cli arg as it is not really needed Jul 16, 2018



Simple Python script to push speedtest results (using speedtest-cli) to a Google Docs spreadsheet. I use this to measure and track my upload and download bandwith:

You can find an interactive demo (actually productive) version of the chart by clicking the image above.

Note: If you rather like Grafana than writing to a Google spreadsheet, checkout my new project docker-speedtest.


Installation and usage

  1. Clone and open repository:

    git clone https://github.com/frdmn/google-speedtest-chart.git
    cd google-speedtest-chart
  2. Install dependencies:

    pip install -r requirements.txt
  3. Symlink it into your $PATH:

    ln -s speedtest-charts.py /usr/local/bin/speedtest-to-google
  4. Authorization

    1. 📖 Authorize pygsheets
    2. 📖 Create an OAuth token, download the credential file and and store it as credentials.json
  5. Create a spreadsheet dedicated to collect your speedtest results:

    📖 docs/Create-a-spreadsheet-to-collect-data.md

  6. Run the script with default settings (make sure you have a spreadsheet document called "Speedtest"):


    Alternatively you can use the -w switch to set a custom spreadsheet name:

    speedtest-to-google -w Speedtest-document

    Here are some other arguments that are available:

    usage: speedtest-charts.py [-h] [-w, --workbookname WORKBOOKNAME] [-b, --bymonth]
    Simple Python script to push speedtest results (using speedtest-cli) to a Google Docs spreadsheet
    optional arguments:
      -h, --help            show this help message and exit
      -w, --workbookname WORKBOOKNAME
                        Sets the woorkbook name, default is "Speedtest"
      -b, --bymonth         Creats a new sheet for each month named MMM YYYY (ex: Jun 2018)