What internet connections in Ghana actually delivered, day by day from 2020-01-01 to 2024-03-26: median, mean and quartile download and upload speed in megabits per second, round-trip latency in milliseconds, and how many speed tests each day's figures rest on. Measured by M-Lab from tests run by people in Ghana — not a subscription count and not an advertised rate. 1506 days are covered across that span: M-Lab publishes a day only when it has enough samples, so the gaps are the source's and are left as gaps rather than interpolated. M-Lab stopped publishing these daily country statistics on 28 March 2024, so this is a closed record: there is no later day to add. Sourced from Measurement Lab, public domain. 1506 records.
The newest figures in this dataset are from 26 Mar 2024; the source has published nothing newer. Check the dates before relying on a figure.
Every column this dataset returns, with its type. This is the shape of the API response.
| Field | Type |
|---|---|
| date | DATE NOT NULL |
| download_median_mbps | DECIMAL(12,3) |
| download_mean_mbps | DECIMAL(12,3) |
| download_q25_mbps | DECIMAL(12,3) |
| download_q75_mbps | DECIMAL(12,3) |
| download_min_mbps | DECIMAL(12,3) |
| download_max_mbps | DECIMAL(12,3) |
| download_latency_median_ms | DECIMAL(10,1) |
| download_tests | INTEGER |
| upload_median_mbps | DECIMAL(12,3) |
| upload_mean_mbps | DECIMAL(12,3) |
| upload_q25_mbps | DECIMAL(12,3) |
| upload_q75_mbps | DECIMAL(12,3) |
| upload_min_mbps | DECIMAL(12,3) |
| upload_max_mbps | DECIMAL(12,3) |
| upload_latency_median_ms | DECIMAL(10,1) |
| upload_tests | INTEGER |
| source | TEXT |
| dateDATE NOT NULL | download median mbpsDECIMAL(12,3) | download mean mbpsDECIMAL(12,3) | download q25 mbpsDECIMAL(12,3) | download q75 mbpsDECIMAL(12,3) | download min mbpsDECIMAL(12,3) | download max mbpsDECIMAL(12,3) | download latency median msDECIMAL(10,1) | download testsINTEGER | upload median mbpsDECIMAL(12,3) | upload mean mbpsDECIMAL(12,3) | upload q25 mbpsDECIMAL(12,3) | upload q75 mbpsDECIMAL(12,3) | upload min mbpsDECIMAL(12,3) | upload max mbpsDECIMAL(12,3) | upload latency median msDECIMAL(10,1) | upload testsINTEGER | sourceTEXT |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2020-01-01 | 1.611 | 6.208 | 0.477 | 5.903 | 0.037 | 85.315 | 178 | 174 | 1.136 | 5.171 | 0.29 | 4.285 | 0.004 | 87.02 | 177 | 189 | Measurement Lab (public domain, CC0) |
| 2020-01-02 | 2.111 | 6.118 | 0.438 | 5.498 | 0.01 | 88.558 | 176 | 205 | 1.474 | 7.49 | 0.358 | 5.182 | 0.01 | 124.187 | 171.9 | 203 | Measurement Lab (public domain, CC0) |
| 2020-01-03 | 1.609 | 6.857 | 0.547 | 5.242 | 0.008 | 123.972 | 177 | 204 | 1.263 | 6.177 | 0.413 | 4.51 | 0.013 | 86.094 | 169.8 | 222 | Measurement Lab (public domain, CC0) |
| 2020-01-04 | 1.875 | 6.301 | 0.681 | 5.528 | 0.034 | 80.381 | 178 | 214 | 1.107 | 4.671 | 0.346 | 3.501 | 0.012 | 86.689 | 171.9 | 223 | Measurement Lab (public domain, CC0) |
| 2020-01-05 | 2.368 | 7.789 | 0.721 | 7.694 | 0.013 | 125.71 | 172 | 202 | 1.517 | 5.337 | 0.549 | 3.678 | 0.018 | 123.828 | 169.8 | 209 | Measurement Lab (public domain, CC0) |
1,501 more rows — see the plans
See the plansGET connect.apighana.com/api/data/internet_performance_daily
Cite this dataset and the organisation its records come from (Measurement Lab). Datasets are updated, so keep the date you accessed it in the citation. These records cover 1 Jan 2020 to 26 Mar 2024; say which period your figures come from. Last updated from the source on Sep 18, 2026.
API Ghana. (2026). Internet performance daily (Version 1.0) [Data set, compiled from Measurement Lab]. Retrieved October 1, 2026, from https://apighana.com/datasets/internet-performance-daily
curl "https://connect.apighana.com/api/data/internet_performance_daily?page=1&limit=20" \ -H "X-API-Key: $APIGHANA_KEY"
const response = await fetch(
"https://connect.apighana.com/api/data/internet_performance_daily?page=1&limit=20",
{ headers: { "X-API-Key": process.env.APIGHANA_KEY } },
);
const { data, meta } = await response.json();import os, requests
response = requests.get(
"https://connect.apighana.com/api/data/internet_performance_daily",
headers={"X-API-Key": os.environ["APIGHANA_KEY"]},
params={"page": 1, "limit": 20},
)
rows = response.json()["data"]