Data
Documentation
What KASPR measures and how, the metrics and their limits, and every variable on the location check and report.
Measurement & data
How KASPR measures
KASPR sends ICMP echo (ping) queries to geolocated IPv4 addresses from cloud infrastructure worldwide — over 3 billion measurements a day across more than 400 million endpoints. Each response records a round-trip time; results are aggregated to district, region and country by hour. Where address space is dense a random sample of 100,000 addresses is measured; where it is sparse, every address is. The design targets a consistent baseline across thousands of small boundaries over time, rather than a globally representative sample of all addresses.
IPv4 only; addresses unreachable by ICMP are excluded. Geolocation is third-party and refreshed monthly, so its accuracy varies across space and time.
The core metrics
Connectivity is the count of unique active IPv4 addresses answering in a period. Latency (rtt_mean_norm) is the mean round-trip ping time — higher is worse. Jitter (rtt_variance_norm) is the variance of round-trip time — higher is a less stable connection. Adjusted variants (an _adj suffix) correct for the monthly infrastructure-scanning boundary. Relative quality is the gap to the fastest district in the same country — rtt_d in absolute terms, rtt_dp as a percentage.
Raw levels are not comparable across regions, because infrastructure differs. Compare within a region over time, or use the differenced indices for cross-region work.
Anomaly detection
Connectivity and latency anomalies come from a statistical model over a 90-day trailing window. Each series is normalised so its long-run normal reads 100; a fixed-effects model on hour-of-day and day-of-week gives the expected value, and 99.9% prediction intervals (α = 0.001) set the normalcy band. A reading outside the band is flagged as an anomaly.
A region without enough coverage — fewer than 100 active-IP observations, or fewer than 14 reading days — carries connectivity and latency only; the anomaly columns are left blank.
Coverage and cadence
The measurement spans 136 countries, 2,921 regions (ADM1) and 26,324 districts (ADM2), with history from February 2019. The geolocated anomaly product updates hourly (1, 3 or 6-hour aggregation); the subnational quality product is monthly or yearly; the telco / ISP product is daily and matched to stock tickers.
Data is descriptive and provided as is. It approximates infrastructure and user experience through remote measurement.
The hourly model
How the dashboard turns the measurement into a typical week, hour by hour. The worked examples sit on the dashboard’s own Docs page.
The model
One national weekly shape per country. A district sets only its level, how hard it swings, and how spread out its measurements are — never the shape itself.
These are probe-population levels, not what any one person should expect their connection to do.
Chance of a bad hour
The chance jitter clears the reliability bar in that hour. The same bar for everyone, which is what makes two places comparable.
Against the current bar, roughly half of all countries sit so far below it that their chance of a bad hour is effectively zero, while a fifth are above it most of the week. For a well-connected audience the absolute number reads as zero, and the useful comparison is the difference between hours, not the level.
Bad for here
The same calculation, measured against this area’s own 75th-percentile hour instead of the shared bar. A place compared to itself uses this; anything comparing across places must use the shared bar, or the comparison is meaningless.
The rule this splits into: a place compared to itself uses “bad for here”; anything comparing across places must use the shared bar. Roughly a quarter of every area’s hours are “bad for here” by construction, so using it across places would make excellent and terrible internet look identical.
Verdict and swing
Swing is the peak-to-trough of the weekly curve, in points. Under 5 points we say the hour doesn’t meaningfully matter; over 15 we say it matters a lot. Both boundary values themselves are “a little”.
Both boundary values are “a little”: a swing of exactly 5 points, and one of exactly 15, both land there.
Reliability percentile
Where this area’s level sits among every area of the same kind worldwide — countries against countries, districts against districts.
Group risk
The chance at least one person has trouble. Independent connections, so the chances compound rather than add. Severity combines in variance, and latencies are averaged and maxed — never summed, because these are separate measurements to infrastructure, not a path between two people.
The chances compound because the connections are independent. When everyone is in the same country that assumption weakens, and the joint number should be read as a floor.
Baseline bands
The middle 80% of the probe population for that hour. This is a distribution of measurements, never a user’s expected experience.
These are probe-population levels, not what any one person should expect their connection to do.
Provenance and freshness
Where each figure came from: the area’s own measurements, or its parent region or country when local data was too sparse. The weekly shape is national in every case.
KASPR Regional Intelligence: the variables
Every figure on the location check, the report and the sample report, in the order they appear. All of them describe a district, at one data vintage.
Grade A to E
The grade ranks the district by the KASPR Connectivity Score, a 0–100 blend of speed, stability, evening slowdown, reliability and trend over the past 90 days. A is the top fifth of the scored districts in the same country, E the bottom fifth. A district without a score of its own takes its region’s and is marked as estimated.
- The score
- A weighted mean of five components, each turned into a global percentile among the scored districts (100 is best): speed 30%, the median daily mean round-trip time; stability 25%, the median daily variability; evening 20%, latency in the evening hours (19:00 to 22:00) against the rest of the day; reliability 20%, the share of degraded days; trend 5%, median latency against a year earlier (needs 18 months of data). A missing component drops out of the weights.
- Window
- The 90 days to the data vintage. A day counts when it has at least 12 observed hours and at least 30 responding addresses.
- Which districts are scored
- A district is scored when it has at least 60 such days, with speed, stability and reliability all present.
- The grades
- Fifths of the scored districts in the same country: each grade holds a fifth of them, so the letter says how a district compares with the rest of its country. A country with fewer than 10 scored districts is graded against every scored district worldwide instead. At this vintage (16 July 2026) those worldwide cut-offs on the total are A at 70 or above, B at 58 or above, C at 46 or above, D at 33 or above, and E below 33.
- Estimated grades
- A district without its own score takes its region’s total, graded with the same cut-offs, and says “estimated from the surrounding region” next to the grade.
- Reading it
- One global scale: some countries, Australia among them, read low on it in score version 1.0. Comparing grades within a country is the safer reading.
Own or estimated
Own: the district has its own Connectivity Score and its own typical-week measurements. Estimated: KASPR lacks enough measurements of its own there, so the figures come from the surrounding region, or the country, and say “estimated from the surrounding region”. Estimated districts cost half in a report.
- Own
- The district has both its own score and its own typical-week parameters.
- Estimated
- Otherwise. The district reads its region’s record, or its country’s where the region has none.
- History
- The monthly history is the district’s own series, or its region’s when the district has none.
Typical latency
The mean round-trip time, in milliseconds, of KASPR’s probes from its measurement servers to the responsive internet addresses in the district, in a typical week at this data vintage. It is not the delay a user sees to a given website or app, and it is not download speed. It includes the distance to KASPR’s servers, so compare districts within a country rather than across continents.
- What is measured
- KASPR’s servers send ICMP echo (ping) probes to geolocated IPv4 addresses in the district every hour; each answer records a round-trip time, from the server to the address and back.
- The figure
- The mean of those round-trip times at the district’s typical-week level: one number for the district, built from history and set at this data vintage, not any particular hour.
- Unit
- Milliseconds. Lower is better.
- What it is not
- Not the delay to a given website, app or cloud region; not throughput or download speed; not a building’s own connection.
- Comparing districts
- The round trip includes the distance between the district and KASPR’s servers, so a district far from those servers reads higher than its local network alone would. Compare districts within a country, or one district over time.
Stability
How much round-trip times vary across the district’s responding addresses within an hour, in milliseconds, at the district’s typical-week level. Lower is steadier.
- The figure
- The variability of round-trip times across the district’s responding addresses within an hour, at its typical-week level at this data vintage.
- Unit
- Milliseconds. Lower is steadier.
- Why it matters
- Calls, video and remote desktops suffer from uneven delay even when the average round trip looks fine.
- Name
- Internally, and in KASPR’s data and API, this is called jitter; the location check and the report call it stability.
Worst hours
The three hours of the week with the highest modelled variability, in the district’s local time. KASPR models one weekly pattern per country and scales it for each district, so districts in one country share their worst hours and differ in how rough those hours get.
- The figure
- Three hours of the week, written as day and hour in the district’s local time (for example Wed 20:00), with the highest modelled variability in the typical week.
- How it is built
- The same typical-week model used by Pulse provides hourly stability and latency estimates in local time. These profiles are supplied with the July 2026 release and summarise historical patterns.
- What it is not
- Not a forecast of next week, and not a pattern measured for that district alone.
Disruptions, past 12 months
A disruption is a fall in the number of responding addresses that KASPR’s anomaly detection classes as a collapse, an outage or a sustained drop. The record is daily, so disruptions are counted in whole days, over the 12 months to the data vintage.
- What counts
- An anomaly episode in which fewer addresses answer than the district’s expected level, classed collapse, outage or sustained. Single-day spikes are not disruptions.
- Window
- The 365 days to the data vintage. An episode that began earlier or ran past it counts only its days inside.
- The figures
- The number of disruptions, their total days and the longest, in whole days. Recovery time is not measured at daily resolution.
- Cause
- None is stated or implied: the record shows when, where and how deep a fall was, not why.
- Estimated districts
- A district without data of its own shows its region’s disruptions.
Disruption depth
How far the number of responding addresses fell during a disruption, as a percentage of the district’s usual level. A deeper fall means more of the district’s measured addresses stopped answering.
- The figure
- The fall in responding addresses against the district’s usual level, in percent; 0 is no fall and 100 is none answering.
- What it is not
- A count of people or businesses offline: addresses are not subscribers.
Chance of a rough hour
The chance that an hour of the typical week is rougher than usual for this district, judged against the district’s own week rather than one bar for every place. The free check uses this model; the paid report instead shows hourly latency and stability observations.
- Rougher than usual
- An hour counts as rough when its modelled variability is above the district’s own 75th-percentile hour.
- Reading it
- By construction about a quarter of every district’s hours are rough, so the chance compares hours within a district, not districts with each other.
- Peak
- The highest chance in the district’s typical week (the field p_rough_hour_peak in the data).
Change over the report period
The change between the first and last complete months available within July 2025–July 2026, as (last − first) / first. Lower is better for both latency and stability; partial months are excluded from this comparison.
- The rule
- The first and last complete months within the report window, calculated separately for each metric.
- At this vintage
- The current record ends on 16 July 2026. July 2026 is partial, so the last complete month is June 2026.
- Reading it
- A negative change is an improvement. Changes within 5% either way are treated as no clear change.
- Context
- The report’s charts are limited to July 2025–July 2026.
Co-disruption
Two of your districts count as disrupted together when their disruptions overlap by at least one day. The report counts these occasions in the past year. A backup location in a district that fails at the same time is not a backup.
- The rule
- Two districts’ disruptions overlap when their date ranges share at least one day; each overlap is one occasion, and its shared days are counted too.
- Left out
- Pairs of districts that both read their region’s record: they share one list by construction.
- Window
- Disruptions intersecting the 365 days ending at the data vintage, clipped to that window.
Exposure
Each district’s weight at your locations, multiplied by its disruption days in the past 12 months. The weight is the number of your locations in the district. It ranks where disruption touched most of your locations.
- The figure
- Weight × disruption days in the 12 months to the data vintage, per district.
- Weight
- The number of your locations in the district.
- Reading it
- A ranking of your districts against each other, not a loss estimate.
Confidence
How much measurement stands behind the district’s typical week: high when the district has its own data and at least 100 observations in every hour of the week, medium at 20 or more, low otherwise. It appears in the report’s district export.
- High
- Own data and at least 100 observations in each hour-of-week cell.
- Medium
- At least 20 observations in each cell.
- Low
- Fewer.
Data vintage
The date the data was cut: every figure on the page is from this vintage. Windows such as the past 12 months or the past 90 days end at the vintage, not today.
- Current vintage
- 16 July 2026, for the records, the grades and the history.
- Refresh
- A one-off report is fixed at its vintage; the sample report is frozen.
Matching a location to a district
Each location is matched to a district in your browser: the district it lies inside, otherwise the nearest district within 2 km, otherwise “no coverage”. A point on a boundary shared by two districts goes to the one with the lowest KASPR district id.
- Inside
- A point inside or on the edge of a district’s boundary.
- Nearest
- Outside every district but within 2 km of one, for example on a coast: the nearest, with the distance shown.
- No coverage
- Further than 2 km from any district. A district in a country KASPR does not model is matched but shown as not covered.
- Boundary rule
- A point on a shared edge goes to the lowest KASPR district id, so every build gives the same answer.
- Addresses
- An address is turned into coordinates first; a city-level match is marked as such.
Area conditions, not a building
Every figure describes the internet in the district, measured from outside the networks on fixed-line infrastructure. It is not a test of any building’s own connection: a location can be better or worse served than its district.
- Measured from
- Outside the networks, by probing addresses; nothing runs at your locations.
- Covers
- Fixed-line internet infrastructure, summarised by district.
