Keep Track on Your Internet Speed with MySpeed, Here’s How

MySpeed, a self-hosted app, monitors your internet speed with automated tests. Supports Grafana, Prometheus, and multi-server options.

We all use some ISP, and our internet speed can vary depending on our chosen plan. Unfortunately, sometimes, we’ve all faced situations where our internet speed was slower than usual.

In such situations, it’s really useful to have a tool that automatically checks and records our internet speed regularly. This way, we can look back and see when our internet was working fine, and there were issues.

Enter MySpeed, versatile, free & open-source speed test analysis software with features for effectively monitoring and analyzing your internet speed.

What is MySpeed?

MySpeed is a self-hosted application designed to record and analyze your internet connection speeds for up to 30 days. It allows users to set up automated internet speed tests that provide detailed insights into their network’s performance, visualized in a pleasant, user-friendly web-based interface.

MySpeed Dashboard
MySpeed Dashboard

The app has the following key features:

Automated Speed Tests

MySpeed automates the speed testing process using Cron expressions, allowing users to configure the frequency of tests according to their specific needs.

This feature ensures that all data is up-to-date, reflects current network conditions without requiring manual input, and generates detailed statistics covering metrics such as speed, ping, and other relevant data points.

Multiple Server Support

Users can add multiple speed test servers to their MySpeed instance. This flexibility enables testing across different servers to provide a broader overview of internet speed across various networks.

Health Checks and Notifications

MySpeed includes a feature to configure health checks that alert the user via email, Signal, WhatsApp, or Telegram if there are any disruptions or significant drops in service quality. This proactive feature helps maintain optimal performance and facilitates immediate troubleshooting.

Integration with Prometheus and Grafana

My favorite feature! MySpeed supports integration with Prometheus and Grafana for users requiring advanced monitoring and data visualization. This compatibility allows for in-depth analysis and visual representation of your network’s speed data over time.

The Prometheus metrics scraping API is available at “/api/prometheus/metrics“.

Choice of Speed Test Servers

The app is compatible with various speed test servers like Ookla, LibreSpeed, and Cloudflare. Thus, users can choose the server best suits their geographic or operational preferences.

MySpeed: Installation and Usage

MySpeed can be installed in different ways, but the easiest and recommended method is through Docker. First, make sure Docker is running on your system. Then, simply run the following command:

docker run -d -p 5216:5216 -v myspeed:/myspeed/data --restart=unless-stopped --name MySpeed germannewsmaker/myspeedCode language: Bash (bash)

If you prefer the Docker Compose approach, here’s what your “docker-compose.yml” file should contain.

services:
  app:
    container_name: MySpeed
    image: 'germannewsmaker/myspeed'
    restart: unless-stopped
    ports:
      - '5216:5216'
    volumes:
      - data:/myspeed/data
volumes:
  data:Code language: Dockerfile (dockerfile)

Finally, run the deployment:

docker compose up -dCode language: Bash (bash)
Deploying MySpeed with Docker Compose.
Deploying MySpeed with Docker Compose.

Point your browser to “http://<server-ip-address>:5216,” and the MySpeed welcome screen will greet you.

MySpeed welcome screen.
MySpeed welcome screen.

Follow the four simple setup steps in the app, adjusting the settings to your liking. After that, you can enjoy a convenient tool at your fingertips to quickly review your internet speed history.

The default dashboard view.
The default dashboard view.

For more information, visit the project’s website or its GitHub page. Additionally, the documentation for MySpeed is at this link.

In closing, if you consider your service to be accessed via the internet, ensure it’s available via a secure HTTPS connection. You can do this by putting the MySpeed app behind a reverse proxy like Nginx, Nginx Proxy Manager, Caddy, Traefik, HAProxy, or any other option you prefer.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Think You're an Ubuntu Expert? Let's Find Out!

Put your knowledge to the test in our lightning-fast Ubuntu quiz!
Ten questions to challenge yourself to see if you're a Linux legend or just a penguin in the making.

1 / 10

Ubuntu is an ancient African word that means:

2 / 10

Who is the Ubuntu's founder?

3 / 10

What year was the first official Ubuntu release?

4 / 10

What does the Ubuntu logo symbolize?

5 / 10

What package format does Ubuntu use for installing software?

6 / 10

When are Ubuntu's LTS versions released?

7 / 10

What is Unity?

8 / 10

What are Ubuntu versions named after?

9 / 10

What's Ubuntu Core?

10 / 10

Which Ubuntu version is Snap introduced?

The average score is 68%