Why I Ditched Ookla and Built My Own Speed Test Server
For years, I trusted Ookla’s Speedtest like everyone else. Click “Go,” watch the needle swing, and declare victory—or call your ISP. But something nagged at me. The numbers looked too clean. Too consistent. So I decided to stop being a passive consumer of speed tests and start running my own.
I set up a private speed test server on a virtual private server (VPS) located in a major data center. The idea was simple: measure my real-world connection without Ookla’s optimizations, server selection bias, or traffic shaping. What I found changed how I think about internet performance.
The Ookla Problem: Servers Built to Make You Look Fast
Ookla’s infrastructure is massive—thousands of servers worldwide. But here’s the catch: ISPs can host their own Ookla servers. And many do. That means when you test with an ISP-hosted server, you’re essentially measuring the speed of your local network plus a short hop to the ISP’s own rack. Of course it looks fast.
Even when you pick a random third-party server, Ookla’s algorithm tends to select the one with the lowest latency and highest throughput. That’s great for a best-case scenario. But the real internet isn’t a best-case scenario. You don’t get to choose your server when you stream Netflix, join a Zoom call, or play Call of Duty.
How My Self-Hosted Test Changed the Results
My own server sits in a different city, three hops away from my ISP’s backbone. No special peering. No optimization. Just a standard Linux box running OpenSpeedTest and iperf3.
The first test was sobering. Ookla gave me 940 Mbps down, 35 Mbps up. My server? 620 Mbps down, 28 Mbps up. That’s a 34% drop on download. Not a fluke—I ran it twelve times over three days. The gap persisted.
Why? Because my ISP’s Ookla server is practically inside the exchange. My server requires traversing an actual internet path, complete with congestion, routing delays, and the occasional packet loss. That’s the connection you actually live with.
Bufferbloat: The Silent Killer Ookla Ignores
Ookla measures throughput and ping. It does not measure bufferbloat—the latency spike that happens when your connection is saturated. This is a huge blind spot.
I ran a bufferbloat test alongside my speed test server. With Ookla, my ping was 12 ms. Under load from my server, it jumped to 380 ms. That explains why your video call stutters even when “speed is fine.” Ookla’s short burst test doesn’t fill the buffer long enough to reveal the problem.
A self-hosted test with a sustained download exposes bufferbloat immediately. It’s the difference between a sprint and a marathon. Your ISP optimizes for the sprint. Real life is a marathon.
Peak-Hour Performance: The Truth Comes Out at 8 PM
Ookla tests at any time of day. But ISPs know when people test. They can prioritize speed test traffic. It sounds paranoid, but it’s documented: traffic shaping and deep packet inspection can identify Ookla traffic and give it a fast lane.
I scheduled my server to run tests automatically every hour for a week. The results were eye-opening. At 3 AM, I got 890 Mbps. At 8 PM on a Tuesday? 410 Mbps. That’s a 54% drop during peak hours. Ookla tests taken at 3 PM looked fine. They didn’t reflect my evening experience at all.
If you’re only testing during the day or late at night, you’re getting a lie. A self-hosted server gives you the full picture—including the ugly hours.
How to Build Your Own Speed Test Server
You don’t need to be a network engineer. Here’s the quick version:
- Get a VPS — Any provider like DigitalOcean, Linode, or AWS Lightsail works. Pick a location far from your home for realistic results.
- Install OpenSpeedTest — It’s a free, open-source HTML5 speed test. Deploy it with Docker in about five minutes.
- Set up iperf3 — For more granular testing, iperf3 gives you TCP and UDP throughput, jitter, and packet loss.
- Run tests at different times — Use cron jobs or a simple script to automate hourly tests. Log everything.
That’s it. You now have a truth-teller that doesn’t care about your ISP’s feelings.
What Your ISP Doesn’t Want You to Know
After a month of data, here’s what I learned: Ookla is a useful tool, but it’s a marketing tool first. It shows you the best possible version of your connection. My self-hosted speed test server showed me the real version—the one that lags during peak hours, bloats under load, and doesn’t get special treatment from the ISP.
If you’re serious about knowing your internet’s actual performance, don’t rely on one test from one provider. Run your own. The truth is worth the 20 minutes it takes to set up.