# alexjustesen/speedtest-tracker

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/alexjustesen-speedtest-tracker).**

5,274 stars · 210 forks · PHP · mit

## Links

- GitHub: https://github.com/alexjustesen/speedtest-tracker
- Homepage: https://speedtest-tracker.dev/
- awesome-repositories: https://awesome-repositories.com/repository/alexjustesen-speedtest-tracker.md

## Topics

`dashboard` `docker` `hacktoberfest` `laravel` `speedtest` `speedtest-cli` `tracker` `tracking`

## Description

Speedtest Tracker is a self-hosted application that automatically schedules and records internet speed tests on a recurring basis. It continuously monitors download and upload speeds, ping latency, and packet loss, storing results as time-series data in a relational database. The application displays historical trends through a web dashboard and provides a read-only public URL for sharing speed test history with unauthenticated visitors. When network performance degrades, Speedtest Tracker triggers alerts based on user-defined thresholds.

Security and access control are built in: an IP address allowlist restricts incoming requests to authorized source addresses. Notifications are delivered through multiple channels—database, mail, or webhook—and automatically retry delivery up to three times if the initial attempt fails. The interface and scheduling are timezone-aware, and the dashboard supports multiple languages via community-contributed translations. Alert thresholds are fully configurable, allowing users to set limits for download speed, upload speed, and ping values.

Speedtest Tracker uses a cron-driven scheduler to invoke a CLI wrapper around the Ookla Speedtest binary, parsing its JSON output for each test run. The application is designed for containerized deployment and can be installed on various platforms using Docker or other container runtimes.

## Tags

### Artificial Intelligence & ML

- [Recurring Task Scheduling](https://awesome-repositories.com/f/artificial-intelligence-ml/agent-architectures/orchestration-engines/ai-agent/runtime-execution-control/recurring-agent-scheduling/recurring-task-scheduling.md) — Runs internet bandwidth and latency tests on a customizable recurring schedule to continuously track connection performance.

### Business & Productivity Software

- [Automated Extraction Schedulers](https://awesome-repositories.com/f/business-productivity-software/scheduling-automation/automated-extraction-schedulers.md) — Runs automated internet speed tests on a recurring schedule to continuously collect performance data. ([source](https://cdn.jsdelivr.net/gh/alexjustesen/speedtest-tracker@1.x/README.md))
- [Public](https://awesome-repositories.com/f/business-productivity-software/collaborative-task-managers/collaborative-list-sharing/template-sharers/public.md) — Shares a read-only view of speed test results with unauthenticated users via a public URL.

### Development Tools & Productivity

- [CLI Wrappers](https://awesome-repositories.com/f/development-tools-productivity/cli-wrappers/cli-wrappers.md) — Executes the Ookla Speedtest binary and parses its JSON output to extract network metrics.
- [Cron Scheduling](https://awesome-repositories.com/f/development-tools-productivity/cron-scheduling.md) — Uses cron-based scheduling to run speed tests at configurable recurring intervals.
- [Public Dashboards](https://awesome-repositories.com/f/development-tools-productivity/dashboard-viewing/public-dashboards.md) — Provides a public URL that displays read-only speed test history without requiring authentication.

### System Administration & Monitoring

- [Alert Thresholds](https://awesome-repositories.com/f/system-administration-monitoring/alert-thresholds.md) — Evaluates speed test results against user-defined thresholds and triggers notifications when limits are exceeded. ([source](https://docs.speedtest-tracker.dev/getting-started/environment-variables))
- [Bandwidth Testers](https://awesome-repositories.com/f/system-administration-monitoring/bandwidth-monitors/bandwidth-testers.md) — Schedules and executes bandwidth tests on a regular cadence without manual intervention.
- [Internet Performance Monitors](https://awesome-repositories.com/f/system-administration-monitoring/internet-performance-monitors.md) — Runs recurring internet speed tests to track download, upload, and ping performance over time.
- [Metric Collection](https://awesome-repositories.com/f/system-administration-monitoring/metric-collection.md) — Collects and records download/upload speeds, ping, and packet loss for each test. ([source](https://cdn.jsdelivr.net/gh/alexjustesen/speedtest-tracker@1.x/README.md))
- [Network Alerting Systems](https://awesome-repositories.com/f/system-administration-monitoring/network-alerting-systems.md) — Sends notifications when measured download, upload, or ping values exceed user-defined thresholds.
- [Speed Test Dashboards](https://awesome-repositories.com/f/system-administration-monitoring/real-time-monitoring-dashboards/web-dashboards/speed-test-dashboards.md) — Provides a web-based dashboard for viewing speed test history and trends.
- [Self-Hosted Monitoring Suites](https://awesome-repositories.com/f/system-administration-monitoring/self-hosted-monitoring-suites.md) — A self-hostable application for tracking internet connection quality over time using containerized deployment.
- [Performance Degradation Alerts](https://awesome-repositories.com/f/system-administration-monitoring/alert-thresholds/performance-degradation-alerts.md) — Triggers alerts when download/upload speeds or ping values cross configured thresholds. ([source](https://cdn.jsdelivr.net/gh/alexjustesen/speedtest-tracker@1.x/README.md))
- [Allowlist Management](https://awesome-repositories.com/f/system-administration-monitoring/ip-address-blocklists/allowlist-management.md) — Restricts incoming requests to authorized IP addresses using a configurable allowlist.
- [Notification Channels](https://awesome-repositories.com/f/system-administration-monitoring/notification-channels.md) — Delivers alerts via database, mail, and webhook channels. ([source](https://docs.speedtest-tracker.dev/settings/notifications))
- [Trend Plotters](https://awesome-repositories.com/f/system-administration-monitoring/trend-analysis/trend-plotters.md) — Displays historical speed test results and trends as visual charts. ([source](https://cdn.jsdelivr.net/gh/alexjustesen/speedtest-tracker@1.x/README.md))

### Data & Databases

- [Relational Time-Series Stores](https://awesome-repositories.com/f/data-databases/time-series-databases/relational-time-series-stores.md) — Stores each speed test result as a time-stamped row in a relational database for historical querying.

### Software Engineering & Architecture

- [Trend Tracking](https://awesome-repositories.com/f/software-engineering-architecture/service-level-objective-validation/trend-tracking.md) — Collects and visualizes speed test history to identify trends and evaluate internet service provider reliability.
