ScriptsApr 19, 2026·3 min read

LibreSpeed — Self-Hosted Internet Speed Test

LibreSpeed is a free, open-source HTML5 speed test that you can host on your own server. It measures download, upload, ping, and jitter without relying on third-party services or Flash.

Introduction

LibreSpeed is a lightweight, self-hosted speed test tool that runs entirely in the browser using HTML5 and JavaScript. It gives network administrators and ISPs a private alternative to cloud-based speed tests, ensuring that measurement data never leaves your infrastructure.

What LibreSpeed Does

  • Measures download speed, upload speed, ping latency, and jitter from the browser
  • Runs entirely client-side with no Flash, Java, or external dependencies
  • Supports multiple test servers with automatic closest-server selection
  • Stores results in a database with an optional telemetry backend
  • Provides an embeddable widget for integration into dashboards and status pages

Architecture Overview

The frontend is pure HTML5, CSS, and vanilla JavaScript that performs speed measurements using XMLHttpRequest and the Web Workers API. Test data is generated and consumed client-side against configurable server endpoints. The backend can be a simple PHP, Node.js, or Go server that handles garbage data generation for downloads and data sinking for uploads. An optional telemetry module logs results to a MySQL or PostgreSQL database.

Self-Hosting & Configuration

  • Deploy via Docker with a single command or drop PHP files into any web server directory
  • Configure test parameters (chunk sizes, test duration, parallel streams) in speedtest_worker.js
  • Set up the optional telemetry backend by configuring database credentials in telemetry_settings.php
  • Enable multiple test points by deploying server backends at different locations and listing them in the config
  • Customize the UI appearance by editing the HTML template or using the example configurations

Key Features

  • Zero external dependencies with no calls to third-party servers during tests
  • Support for multiple server endpoints with distance-based automatic selection
  • Configurable test parameters including stream count, chunk size, and duration
  • Optional result logging with IP geolocation and historical result browsing
  • Available as Docker image, standalone PHP, Node.js, or Go implementations

Comparison with Similar Tools

  • Speedtest by Ookla — proprietary cloud service, not self-hostable, collects user data
  • fast.com — Netflix-operated, measures only download speed, no self-hosting option
  • OpenSpeedTest — similar concept but less configurable and smaller community
  • iPerf3 — network benchmarking tool for LAN testing, not browser-based
  • Netdata — full monitoring suite with bandwidth charts, not a dedicated speed test

FAQ

Q: Does LibreSpeed require a powerful server? A: No. The server only needs to serve static files and handle HTTP connections. A small VPS can saturate a 1 Gbps link for single-user tests.

Q: Can I test internal network speed? A: Yes. Deploy LibreSpeed on your LAN to measure throughput between client devices and your server without any internet traffic.

Q: Does it support HTTPS? A: Yes. LibreSpeed works over HTTPS. Configure your web server with TLS certificates as you would for any other site.

Q: How accurate are the results compared to Ookla Speedtest? A: Results are comparable for most connections. Differences arise from server proximity, test methodology (parallel streams vs. single stream), and CDN effects that cloud services may leverage.

Sources

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets