# LibreSpeed

LibreSpeed is a lightweight self-hosted speed test page. It is open source and self-hosted, installable on ZimaOS, Umbrel, Kubernetes (Helm) and Unraid.

Canonical page: https://ourlocalhost.com/app/279/librespeed

## Description

LibreSpeed is a lightweight self-hosted speed test page. It measures download, upload, and latency in a browser, with optional database storage, so home, office, or lab users can check network performance without sending traffic to an external speed test service.

## Platform availability

Available on 4 of 9 platforms: Unraid, Umbrel, ZimaOS, Helm.

## Health score

84/100 (Excellent), based on 5 of 5 factors.
- Maintained: 100 (last commit 27 days ago)
- Popular: 84 (15,216 GitHub stars)
- Easy to install: 55 (3 install platforms, install notes, Docker image)
- Light to run: 85 (512 MB minimum RAM)
- Security check: 80 (no serious findings, CI, tests, OpenSSF Scorecard 4.9/10)

## Links

- ZimaOS: https://github.com/WisdomSky/CasaOS-LinuxServer-AppStore/tree/master/Apps/Librespeed
- Umbrel: https://apps.umbrel.com/app/librespeed
- Kubernetes (Helm): https://artifacthub.io/packages/helm/geek-cookbook/librespeed
- Unraid: https://ca.unraid.net/apps/librespeed-1jqqpaq00xves6?q=librespeed
- GitHub: https://github.com/librespeed/speedtest
- Official website: https://librespeed.org

## Common questions

### Why does the download test return very low results?

Check that garbage.php and empty.php, or your replacements, are reachable. Open the browser Network tab before starting the test to verify the test files load.

### Why does LibreSpeed show much lower speeds behind a reverse proxy?

Do not place LibreSpeed behind a reverse proxy because proxy processing can affect measurement accuracy. Serve it directly on the local network when testing real client performance.

### What must be enabled for saved results to survive a reboot?

If you store test results in MySQL, start the database and enable it to start automatically. A disabled database service can make saving fail and may not survive a reboot.

### Why won’t the Node.js version start?

Install the Node.js dependencies first, then start it with node Speedtest.js. Without the dependencies, the server will not start and the speed test will not work.

### What does LibreSpeed store when telemetry is enabled?

It stores the test ID, time, results, IP address, ISP information, approximate location from IP, user agent and browser locale, and a test log. No personal information is disclosed to third parties, and deletion requires a test ID or IP address.

### How do I switch between the classic and modern UI?

The root index.html redirects based on useNewDesign in config.json or URL overrides. You can also force the design with URL design override parameters.

## Alternatives

- OpenSpeedTest: OpenSpeedTest is a self-hosted HTML5 tool for measuring home or office network speed between your devices and a local server in any modern…
- Orb.net
- Speedtest by Ookla: Measures download, upload, and ping speeds; offers global server testing, real-time connection graphs, VPN options, carrier coverage maps,…
- nPerf: More than a simple speed test, nPerf brings you the best and the fullest mobile connection quality measurement tool up to 10 Gb/s speeds!
- speedtest-cli: A command line interface for testing internet bandwidth using Speedtest by Ookla

---
Source: Our Local Host (https://ourlocalhost.com/app/279/librespeed), the self-hosted and open-source app directory.
