How to Measure Internet Speed (Without Losing Your Mind)

THE.HostingTHE.Hosting
5 min read

Internet speed is a tricky thing. One day everything’s lightning-fast, the next — you’re stuck watching the loading spinner of doom. So how do you test your speed properly without disappointment or calling your ISP in frustration? Let’s break it down.

Why your internet speed might be lower than expected

You open a speed test expecting to see those promised hundreds of Mbps — and get something that feels more like dial-up? Don’t panic just yet. A lot of things can affect the result.

The laws of physics still apply

If your favorite server is in Japan and you're sitting in Moscow, the signal has a long way to go — thousands of kilometers and dozens of network nodes. Even light takes time to travel around the world. The farther the server, the higher the ping, the lower the speed. No magic here.

Tip: Always choose the closest server available.

The speed test server is underpowered

Your internet plan says 1000 Mbps, but the test shows only 100? The issue might be with the server you’re testing against — maybe it simply can’t handle high-speed connections.

Tip: Stick to reliable testing services like Speedtest by Ookla.

Your computer is overwhelmed

Dozens of tabs opened, a torrent running wild, and a video rendering in the background? No wonder your speed test is crawling. These tests need system resources too!

Tip: Close anything unnecessary before running a test.

Wi-Fi isn’t your best friend

We all love a cable-free life — but when it comes to accuracy, Wi-Fi can mess things up. Walls, neighbors’ routers, microwaves, even your own devices can interfere with the signal.

Tip: For best results, use a wired connection if possible.

Too many devices are online

Your partner’s streaming movies, your kid’s downloading a 100 GB game on Steam, and your Wi-Fi-savvy neighbor just joined in on your network — all of that eats bandwidth.

Tip: Try to minimize connected devices while testing.

How to run a speed test on different OSes

Each operating system has its quirks. Here’s how to test speed properly no matter what you're using.

Browser-based test

Works across all platforms. Super simple:

  1. Open a browser and go to Speedtest by Ookla.

  2. Click “Go” and wait for the test to finish.

Planning to test often? You might want to install the standalone app — it’s available in the Windows Store.

For Debian or Ubuntu (up to 24.04):

sudo apt-get install curl

curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash

sudo apt-get install speedtest

For Ubuntu 24.04 (note the repo fix):

sudo apt-get install curl

curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash

sudo sed -i 's/noble/jammy/' /etc/apt/sources.list.d/ookla_speedtest-cli.list

sudo apt update

sudo apt-get install speedtest

For RedHat and similar:

curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh | sudo bash

sudo yum install speedtest

Run the test:

speedtest

To use a specific server:

speedtest -s <server_ID>

On macOS (via Homebrew):

brew tap teamookla/speedtest

brew update

brew install speedtest --force

Then just run speedtest in your terminal.

Alternative: Use iperf3 for advanced testing

If you're not 100% sold on Speedtest results, you can try iperf3 — a more precise tool for measuring bandwidth using a client-server model.

Installing iperf3 on Linux (Ubuntu 22.04):

sudo apt-get install iperf3

How it works

You’ll need two devices — one as a server, one as a client.

Start the server:

iperf3 -s

Run the client (replace IP with the server’s address):

iperf3 -c [server_IP]

To run a reverse test (from client to server and back):

iperf3 -c [server_IP] -R

Advanced usage

Add options for more control:

iperf3 -c [IP] -u -w 1m -t 10 -l 1100 -b 1000M -P 5

Want to test reverse direction? Add -R:

iperf3 -c [IP] -u -w 1m -t 10 -l 1100 -b 1000M -P 5 -R

Parameter breakdown:

  • -c [IP] — client mode, specify server

  • -u — use UDP

  • -w 1m — buffer size: 1MB

  • -t 10 — duration: 10 seconds

  • -l 1100 — packet size, 1100 bytes

  • -b 1000M — target bandwidth

  • -P 5 — 5 parallel streams

Reading results

You'll see key stats like:

  • Interval — test duration

  • Transfer — data transferred

  • Bitrate — measured bandwidth

  • Lost/Total Datagrams — packet loss rate

Example:
808 MB transferred at 678 Mbps, with 0% packet loss from 770,149 sent.

Save results

To store output in a file (in JSON format):

iperf3 -c [IP] --logfile log.txt -J

Heads-up: iperf3 can max out your bandwidth during tests, so avoid running it if your server is doing something important.

A few things people often forget (but shouldn't)

  • Evening speed drop is normal Everyone’s online at night — streaming, gaming, doomscrolling. Want consistent results? Test early in the morning or late at night.

  • Overselling is real Some ISPs promise speeds they can’t deliver consistently. They rely on the fact that not all users max out bandwidth at the same time. But if everyone downloads a 4K movie at once — boom, your speed tanks. Try testing at different times of day.

  • Check your routing Sometimes your traffic takes a roundabout route — through half of Europe — before reaching the destination. Use:
    tracert example.com (Windows)
    traceroute example.com (macOS/Linux)

    Too many hops? There’s your latency.

  • Don’t test while others are hogging bandwidth Someone streaming 4K Netflix or downloading torrents will ruin your results. Pause other connections before testing for an accurate picture.

What to do if your speed is too low

  • Restart your router — yes, the classic move still works.

  • Check your Ethernet cable.

  • Try a different test server.

  • Run tests at different times of day.

  • Contact your ISP and ask if they’re having issues.

Final thoughts

Measuring your internet speed isn’t just about hitting “Start.” It’s a bit of a science. But if you follow these tips, your test will be as fair and accurate as it gets. And if it still feels sluggish — maybe it’s time to consider switching providers. Good luck out there!

0
Subscribe to my newsletter

Read articles from THE.Hosting directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

THE.Hosting
THE.Hosting