# sivel/speedtest-cli

**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/sivel-speedtest-cli).**

14,073 stars · 1,929 forks · Python · apache-2.0 · archived

## Links

- GitHub: https://github.com/sivel/speedtest-cli
- awesome-repositories: https://awesome-repositories.com/repository/sivel-speedtest-cli.md

## Topics

`python` `python-library` `python-script` `speedtest`

## Description

Speedtest-cli is a command-line utility designed to measure internet upload and download throughput by connecting to remote servers. It functions as a diagnostic tool for evaluating connection quality and verifying network performance against service provider claims.

The utility identifies testing endpoints by calculating the physical distance between the client and available servers, ensuring measurements are based on responsive nodes. It manages the testing lifecycle by coordinating with remote services to fetch server lists and register results, which can be exported into machine-readable formats like JSON or CSV for integration with external monitoring systems.

Beyond basic throughput measurement, the tool supports network troubleshooting by allowing users to filter testing locations based on specific criteria or proximity. It also provides functionality for generating unique web links that display visual summaries of completed tests, facilitating the reporting and comparison of connection performance.

## Tags

### Development Tools & Productivity

- [Network Speed Testers](https://awesome-repositories.com/f/development-tools-productivity/command-line-network-clients/network-speed-testers.md) — Provides a command-line interface for measuring internet upload and download throughput.

### Software Engineering & Architecture

- [Performance Benchmarking](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-engineering/performance-benchmarking.md) — Measures upload and download throughput to evaluate internet connection quality and reliability.
- [Throughput Measurement](https://awesome-repositories.com/f/software-engineering-architecture/monotonic-time-measurement/throughput-measurement.md) — Calculates network bandwidth by streaming data chunks and measuring transfer time.

### Networking & Communication

- [Network Diagnostics](https://awesome-repositories.com/f/networking-communication/network-reliability-diagnostics/network-diagnostics.md) — Identifies connectivity issues by testing performance against specific servers and filtering results.
- [Network Diagnostic Utilities](https://awesome-repositories.com/f/networking-communication/network-diagnostic-utilities.md) — Locates nearby testing endpoints and filters servers to ensure accurate network speed measurements.
- [Server Discovery](https://awesome-repositories.com/f/networking-communication/server-discovery.md) — Discovers nearby testing endpoints sorted by physical distance to help select the most responsive server. ([source](https://github.com/sivel/speedtest-cli/blob/master/README.rst))

### System Administration & Monitoring

- [Internet Performance Monitors](https://awesome-repositories.com/f/system-administration-monitoring/internet-performance-monitors.md) — Automates the collection of network speed data for long-term tracking and analysis.
- [Performance Reporting](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/metric-performance-monitors/performance-visualization/performance-reporting.md) — Generates shareable visual summaries to document and compare connection performance against provider claims.
- [Network Performance Tools](https://awesome-repositories.com/f/system-administration-monitoring/network-performance-tools.md) — Exports bandwidth test results into machine-readable formats for integration with logging systems.
- [Metrics Exporters](https://awesome-repositories.com/f/system-administration-monitoring/metrics-exporters.md) — Exports performance metrics into machine-readable formats to simplify integration with external monitoring systems. ([source](https://github.com/sivel/speedtest-cli/blob/master/README.rst))

### Testing & Quality Assurance

- [Performance Measurement](https://awesome-repositories.com/f/testing-quality-assurance/performance-testing-analysis/performance-diagnostics/performance-measurement.md) — Measures upload and download throughput and reports performance metrics in structured formats. ([source](https://github.com/sivel/speedtest-cli#readme))
- [Result Sharing](https://awesome-repositories.com/f/testing-quality-assurance/performance-testing-analysis/performance-diagnostics/result-sharing.md) — Generates unique web links displaying visual summaries of completed speed tests. ([source](https://github.com/sivel/speedtest-cli/blob/master/README.rst))
- [Server Filters](https://awesome-repositories.com/f/testing-quality-assurance/testing-infrastructure-management/test-execution-management/test-suite-filters/server-filters.md) — Filters available testing locations by distance or specific criteria to ensure accurate bandwidth measurements. ([source](https://github.com/sivel/speedtest-cli#readme))

### Artificial Intelligence & ML

- [Endpoint Selection](https://awesome-repositories.com/f/artificial-intelligence-ml/geospatial-coordination-systems/endpoint-selection.md) — Identifies responsive testing nodes by calculating physical distance between the client and available servers.
