Measure Real Download Speed with curl

See how fast a specific server actually transfers data, in bytes per second, using plain curl.

macOScurldownloadbandwidthLow risk
Run `curl -o /dev/null -w "Download speed: %{speed_download} bytes/sec\n" "https://proof.ovh.net/files/10Mb.dat"` to time a real download.

01Command

Command
$ curl -o /dev/null -w "Download speed: %{speed_download} bytes/sec\n" "https://proof.ovh.net/files/10Mb.dat"

02What it does

Speed-test sites measure your ISP, but often you want to know how fast one particular server (a game update, a mirror, your own NAS) downloads. curl's %{speed_download} reports the average throughput of the whole transfer; multiply bytes/sec by 8 and divide by 1,000,000 to get megabits. Swap the URL for any test file hosted by the server you care about.

03Risk

RiskLow risk
!Warning: The test downloads the file's full size — pick a small file on metered connections.

04Undo

✓No undo needed — this command does not change persistent state.

05Sources

  • curl — transfer a URL (macOS man page)
    SS64 · technical · 2026-09-17
    Evidence: Documents the -w write-out variable %{speed_download} reporting the average transfer speed in bytes per second, and -o /dev/null discarding the body.

Last verified: 2026-09-18 · Category: Network