Ever notice your ISP's own speed test always looks great? That's not luck.

When you run a test on your provider's website, the data often travels a short, optimized path to a server they control. It rarely reflects the real speed you get streaming a movie or backing up files. The fix is small: host your own speed-test server. Then you measure the connection on your terms.

Why your own server tells the truth

Third-party tests pick the closest, fastest server they can find. That makes numbers look better than your daily experience. A self-hosted server lives on your network or a cheap VPS you control. You decide where it sits. You decide what it measures. No marketing spin.

You also get history. Run a test every hour, log the result, and you build proof. When your connection drops to a crawl at 8 PM every night, you'll have a chart. That chart is leverage when you call support.

The tool: LibreSpeed

LibreSpeed is a tiny, open-source speed test. No Flash. No Java. No accounts. No telemetry sent to anyone. It runs in a browser and the whole thing is a handful of files.

Here's the fast path with Docker:

docker run -d \
  -p 8080:80 \
  --name speedtest \
  --restart unless-stopped \
  lscr.io/linuxserver/librespeed:latest

Open http://your-server-ip:8080 and click go. That's a working speed test you fully own.

Test the connection that actually matters

Put LibreSpeed on a cheap VPS in another city. Now your test measures the real internet path — not the cozy shortcut your ISP built to their own server. This is the number that decides whether your video calls stutter.

Want local network speed instead? Run it on a Raspberry Pi at home. Test how fast your laptop talks to your NAS over Wi-Fi versus cable. You'll often find your wireless is the real bottleneck, not your internet plan.

Build a record while you sleep

Add a scheduled test so you collect data automatically. A simple cron job hitting the LibreSpeed CLI every 30 minutes builds a log over a week. Patterns jump out fast:

  • Slowdowns at peak evening hours point to network congestion.
  • Steady low speeds all day point to a plan or wiring problem.
  • Random drops point to a failing router or bad cable.

Knowing which one you have saves you from buying the wrong fix.

Privacy bonus

Every commercial speed test profiles you. They log your IP, location, ISP, device, and build a dataset they sell or share. Your self-hosted test sends that data nowhere. It's your network, your numbers, your eyes only.

Your takeaway: Spin up LibreSpeed in Docker today, point it at a VPS in another city, and run it once an hour for a week. By next weekend you'll know exactly what you're paying for — and have the receipts to prove it.