Understand Ookla Speedtest Json Values

Understand Ookla Speedtest Json Values

I'm having some difficulties matching the json results with the values shown on the website:

I run the test with speedtest -f json-pretty -u bps

{
    "type": "result",
    "timestamp": "2022-03-16T01:40:00Z",
    "ping": {
        "jitter": 68.655000000000001,
        "latency": 11.285
    },
    "download": {
        "bandwidth": 804925,
        "bytes": 5394240,
        "elapsed": 6706
    },
    "upload": {
        "bandwidth": 97467,
        "bytes": 1321920,
        "elapsed": 15005
    },
    "result": {
        "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "url": "",
        "persisted": true
    }
}

But when I go to the url, I see this:

How do those 3 download values become 6.44Mbps ?

1 Answer

Those 3 values mean:

Bandwidth - Actual internet download speed in bps, from man speedtest:

The human-readable format defaults to Mbps and any machine-readable formats (csv, tsv, json, jsonl, json-pretty) use bytes as the unit of measure with max precision.

To get value in Mbps, as in following image you have to divide it by 125000:

The bytes per second measurements can be transformed into the human-readable output format default unit of megabits (Mbps) by dividing the bytes per second value by 125,000.

Bytes - Volume of data used during the test (also in bytes)

Elapsed - Duration of testing download speed, in ms - how much time the testing took.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Chloe Bennett
Author

Chloe Bennett

Chloe Bennett explores the intersection of pop culture, streaming entertainment, digital trends, and contemporary lifestyle. Her weekly commentary reaches thousands of culture enthusiasts.