Speedtest.net integration for Gladys Assistant

Measure your internet speed on a schedule using Speedtest.net servers.
Measure your internet connection on a schedule, straight from Gladys, using the worldwide network of Speedtest.net servers. Every run feeds four sensors you can chart on your dashboard and use in scenes:
| Sensor | Unit | What it tells you |
|---|---|---|
| Download | Mbit/s | How fast data reaches your home |
| Upload | Mbit/s | How fast data leaves your home |
| Ping | ms | Reaction time of the connection (lower is better) |
| Jitter | ms | Stability of that reaction time (lower is better) |
Typical uses: keep an eye on what your ISP actually delivers, get notified by a scene when the download rate drops below what you pay for, or detect that a backup line (4G failover…) has taken over.
How a test works
The integration talks directly to Speedtest.net infrastructure — no account, no API key, no Ookla software installed. By default it probes the closest servers, keeps the healthiest one, then measures latency, download and upload (about 25 seconds in total). You can pin a specific server instead: press List nearby servers to see IDs, and paste one into the Server ID field.
Things to know
- A test saturates your connection while it runs. Results are also slightly conservative on very fast lines, since the measurement shares CPU with the sandbox limits Gladys applies to integrations.
- A test transfers real data — several hundred MB per run on a fast line. If your plan has a data cap, increase the interval between tests or disable automatic tests and use the manual button only.
- Scheduled tests follow the Interval between tests setting (default: one test per hour). The Run a speed test now button works at any time.
Troubleshooting
- Results lower than the official app: increase Parallel connections (fast lines fill better with 6–8) or Measurement time.
- Test fails: the closest server may be down — pin a different Server ID, or clear the field to let auto-selection skip unhealthy servers.
This integration is an independent community project, not affiliated with or endorsed by Ookla. Speedtest® is a trademark of Ookla, LLC.
Configuration settings
These are the settings Speedtest.net asks for in its configuration screen in Gladys.
| Setting | Type | Required | Description |
|---|---|---|---|
| How it works | section | No | A test saturates your connection for about 25 seconds and can transfer several hundred MB per run: mind your data cap when choosing the interval. Results are stored as four sensors (download, upload, ping, jitter) you can chart and use in scenes. |
| Run tests automatically | boolean | No | When disabled, tests only run through the manual button below. |
| Interval between tests (s) | number | No | Seconds between automatic tests. 3600 = one test per hour. |
| Server ID (optional) | string | No | Leave empty to auto-select the closest healthy server. Use the "List nearby servers" button to find IDs. |
| Parallel connections | number | No | TCP connections per direction. More connections fill fast links better. |
| Measurement time per direction (s) | number | No | Longer measurements are steadier but transfer more data. |
How to install Speedtest.net in Gladys
- In Gladys, open Integrations: Speedtest.net appears in the catalog, next to the native integrations, with a community badge.
- Click Install. Gladys pulls the Docker image (
ghcr.io/guim31/gladys-speedtest:1.0.2), starts it in a sandbox isolated from the core, and generates the integration's interface (devices, discovery and configuration). - Open the Configuration screen of the integration, fill in the settings, and save.
- You can also install it directly from its repository URL: https://github.com/guim31/gladys-speedtest.
Speedtest.net requires Gladys >=4.86.0. The catalog inside Gladys refreshes every hour, so a new version becomes available at most one hour after its release.
Not running Gladys yet? It is free and open source: follow the installation guide to get started.
About external integrations
Speedtest.net is an external integration: a community integration packaged as a Docker container and published on GitHub, that Gladys installs in one click and runs in a sandbox isolated from its core. It is published and maintained by guim31, not by the Gladys core team.
- Browse all external integrations
- Discover the native integrations built into Gladys
- Build and publish your own external integration
- Source code on GitHub — source of this documentation