Voidly

Voidly / global report

Global censorship.
In the evidence.

Follow the country scores. Open the records. Keep each source in view.

Highest scores in the retrieved index

Russia36 / 100

45,965 source-window samples

China30 / 100

525 source-window samples

Myanmar29 / 100

810 source-window samples

A measurement-based index, separate from incident counts and shutdown forecasts.

Incident statisticsResponse available
Read checked
2026-10-03T15:58:25.781Z
Generated by source
Not reported
Source provenance

No source note supplied.

Backend / version
sqlite / Not reported
stale / stale_known
not reported / not reported
Omitted rows
0
Inspect this response ↗
Country indexResponse available
Read checked
2026-10-03T15:58:26.294Z
Generated by source
2026-10-03T15:58:26.291Z
Data as of
2026-10-03T15:20:03.329Z
Source provenance

Newest per-country ingestion stamp — the only field here that can go stale. `dateModified` and `generated_at_utc` are serve times, minted per request; do not read them as data freshness.

Backend / version
Not reported / 2026.10.03
stale / stale_known
not reported / not reported
Omitted rows
0
Inspect this response ↗
Recent recordsResponse available
Read checked
2026-10-03T15:58:25.272Z
Generated by source
2026-10-03T15:58:25.248375Z
Source provenance

No source note supplied.

Backend / version
sqlite / 2026.10.03
stale / stale_known
not reported / not reported
Omitted rows
0
Inspect this response ↗

The record behind it.

Tracked records include suspected censorship, mixed incidents and outage signals. They are not all verified censorship events.

10,024Total tracked incident records
685,918Evidence rows in the separate evidence corpus
121,939Incident-to-evidence links
Citable categories, evidence links and caveats
Source citable category
764
Category records with linked evidence
683
Category records with multiple sources
374

citable_censorship = censorship/mixed incidents excluding suspected/draft. citable_with_evidence = the subset with >=1 linked evidence permalink (the individually-verifiable count). citable_multi_source = the subset corroborated by >=2 independent sources. The remainder are single-source historical-backfill rows.

The source category, individual evidence links and multi-source corroboration are different properties. Open the incident before citing its evidence.

A country-by-country view.

The highest positive scores among valid measured rows, with each source-window sample count. Lower coverage can make a score less reliable.

Retrieved country scores — first ten positive measured scores
Order hereCountryScore / 100SamplesSource level
1RussiaRU3645,965medium
2ChinaCN30525medium
3MyanmarMM29810medium
4VenezuelaVE2317,151low
5IranIR166,665low
6TanzaniaTZ141,378low
7BelarusBY132,881low
8CambodiaKH11533low
9RwandaRW11636low
10JordanJO10421free
Score definition, measurement window and model note
Country rows retrieved
130
Source-window days / measurements
30 / 459,418

derived: sum of countries[].samples (OONI measurementCount) over the rolling 30-day live window. Not floored, not padded, not a constant.

Newest per-country ingestion stamp — the only field here that can go stale. `dateModified` and `generated_at_utc` are serve times, minted per request; do not read them as data freshness.

Cross-country LOCO MEAN F1 0.711, which /v1/classifier/info names as its headline_metric; the median 0.870 is dominated by small-sample countries and is not the honest single number. 0.63 on the 61 countries with n>=30. Forward-temporal holdout AUC 0.669 / F1 0.474 — generalizes across countries, degrades across time (retrained weekly). The retired v2 (0.998 F1) had country-tier leakage; not cited as live.

{
  "scoringVersion": "2026.08-eb-k10",
  "method": "ooni_anomaly_rate_30d_shrunk_empirical_bayes",
  "formula": "score = round(100 * anomalyRate * n / (n + 10))",
  "shrinkK": 10,
  "levelBasis": "level is derived from the unrounded shrunk rate (severe >= 0.7, high >= 0.5, medium >= 0.25, low >= 0.1, else free) — NOT from the rounded integer score. A country with samples: 0 is \"unmeasured\", never \"free\".",
  "levelValues": [
    "severe",
    "high",
    "medium",
    "low",
    "free",
    "unmeasured"
  ],
  "unmeasuredMeaning": "samples: 0 means OONI published NO measurements for this country in the 30-day window. That is the absence of evidence, not evidence of absence, so such rows are level \"unmeasured\" and are excluded from summary.freeCount. Before 2026-08-29 they were published as \"free\" — North Korea, Eritrea, the Bahamas and Nicaragua were all served as free countries on zero measurements.",
  "rankTieBreak": "shrunkRate desc, then samples desc, then code asc — a total order, identical in every distribution",
  "lowConfidenceBelowSamples": 30,
  "appliesTo": [
    "https://api.voidly.ai/data/censorship-index.json",
    "https://api.voidly.ai/data/censorship-index.csv"
  ],
  "changedAt": "2026-08-29",
  "changedFields": {
    "https://api.voidly.ai/data/censorship-index.json": {
      "unchanged": [
        "score",
        "samples",
        "country set"
      ],
      "changed": [
        "rank",
        "level"
      ],
      "detail": "score: 0 of 130 rows changed — byte-identical to what was served before. rank: 108 of 130 changed, 50 of them toward rank 1, entirely within groups whose score did not move (largest: SE 121 to 95, LT 86 to 61, SI 91 to 64, all at score 1-2; among rows scoring 10 or above only HN 9 to 8 and IR 8 to 9 swap). level: 4 of 130 changed, all of them zero-measurement rows moving from \"free\" to \"unmeasured\" — see unmeasuredMeaning."
    },
    "https://api.voidly.ai/data/censorship-index.csv": {
      "unchanged": [
        "samples",
        "country set",
        "columns 1-8 by name, order and meaning"
      ],
      "changed": [
        "rank",
        "score",
        "level",
        "4 columns appended"
      ],
      "detail": "score: 12 of 130 rows changed, every one DOWNWARD (largest TM 50 to 8). level: 3 changed downward (TM high to free, DZ and PK low to free) plus the 4 zero-measurement rows to \"unmeasured\". Any row taken from this file before 2026-08-29 should be re-fetched. Four columns were appended (raw_anomaly_rate, shrunk_rate, low_confidence, scoring_version); a reader that pins the column COUNT at 8 will reject the file, one that reads by position or header name will not."
    }
  },
  "changeNote": "Before 2026-08-29 the CSV distribution published the UNSHRUNK anomaly rate while the JSON published the shrunk one, and the two sorted differently. Turkmenistan was served as rank 1 / score 50 / high in the CSV on 2 measurements; its shrunk score is 8 / free. 12 scores, 3 levels and 124 ranks disagreed between the two files. Both are now computed once. NO SCORE OR LEVEL MOVED UPWARD IN EITHER FILE — verified against the full live 130-country corpus. BOTH distributions changed, not only the CSV: the CSV s scores and levels moved down, and the JSON s `rank` changed for 108 of 130 rows because ties on the rounded score used to be broken by upstream array order. See `changedFields` for the per-distribution breakdown. A consumer that stored `rank` from EITHER file should re-fetch."
}

The original report called this a composite of block rate, category breadth and consistency. The actual scoring definition above belongs to the retrieved index; its window and methods can differ from historical report text.

Where records accumulate.

Source-reported country counts describe the incident corpus. They are not a ranking of intent, severity or a country's actual censorship rate.

  1. VenezuelaVE308
  2. RussiaRU307
  3. IranIR297
  4. EgyptEG249
  5. PakistanPK243
  6. AzerbaijanAZ241
  7. MyanmarMM240
  8. BelarusBY170
  9. UAEAE169
  10. BangladeshBD168

Read the labels.

Severity, incident type and status describe different fields in the same source. The category “censorship” is not a blocking-method measurement.

By severity

critical
9,735 / 97.1%
warning
289 / 2.9%

By type

disruption
5,660 / 56.5%
censorship
3,996 / 39.9%
mixed
368 / 3.7%

By status

active
5,997 / 59.8%
suspected
3,600 / 35.9%
confirmed
427 / 4.3%

Follow each source.

OONI contributes network measurements; IODA observes outages through BGP, active probing and telescope traffic; CensoredPlanet measures remote DNS and HTTP/S behavior.

Evidence rows by source

Voidly
288,497 / 42.1%
ooni
255,356 / 37.2%
Voidly-Community
57,242 / 8.3%
censoredplanet
46,472 / 6.8%
ioda
38,351 / 5.6%

Cross-source comparison can help assess a record; it does not make every incident independently corroborated. Voidly probe measurements and community nodes have their own coverage and dates.

Added to the record.

The statistics handler counts incident creation and evidence retrieval time. These are ingestion figures, not counts of events that began during the period.

Last 24 hours62

Incident records created

7,242 evidence rows retrieved
Last 7 days436

Incident records created

79,109 evidence rows retrieved
Source event-date range2016-07-15

through 2026-10-03

The latest recorded event date is not automatically today.

Open a recent record.

This list is a separate source read. Its records are not used to fill missing corpus statistics.

  1. Bangladesh / 2026-10-03T11:05:00Z

    Internet connectivity disruption in Bangladesh

    d1c450bbe67c · disruption · active · critical

    ioda
  2. Afghanistan / 2026-10-03T10:25:00Z

    Internet connectivity disruption in Afghanistan

    a4a0822ab01c · disruption · active · critical

    ioda
  3. Kuwait / 2026-10-03T08:45:00Z

    Internet connectivity disruption in Kuwait

    f87c74202ad3 · disruption · active · critical

    ioda
  4. Belize / 2026-10-03T08:10:00Z

    Internet connectivity disruption in BZ

    4164892fc108 · disruption · active · critical

    ioda
  5. Uganda / 2026-10-03T06:55:00Z

    Internet connectivity disruption in Uganda

    212e91d5ec3b · disruption · active · critical

    ioda
  6. Nigeria / 2026-10-03T06:00:00Z

    Internet connectivity disruption in Nigeria

    a4ba231eeb86 · disruption · active · critical

    ioda
  7. Peru / 2026-10-03T06:00:00Z

    Internet connectivity disruption in Peru

    ca745a7a584a · disruption · active · critical

    ioda
  8. Bolivia / 2026-10-03T04:30:00Z

    Internet connectivity disruption in Bolivia

    b4d3c1424e5c · disruption · active · critical

    ioda

Keep the methods close.

Reference details from the original report remain below. Current source responses and historical evaluation figures have different scopes.

Original collection description and evaluation context

Collection documentation

  • The original page describes roughly 1,100 distinct domains per day from a 5,154-domain pool across 130 countries. Its node count was a build-time constant, not a verified active roster.
  • It describes OONI ingestion for eight test types across 130 countries every six hours; CensoredPlanet DNS/HTTP/S data across 50 countries; and continuous IODA ASN-level outage alerts.
  • These are documented source/configuration descriptions, not fresh coverage or delivery checks. Read the current probe roster and source dates before quoting them.

Classifier v3.3 reference

GradientBoosting: LOCO mean F1 0.71 across 127 countries; 0.63 on the 61 with n≥30. The 0.87 median is inflated by 46 small-sample countries at a perfect 1.0. Training used 4,237 labelled samples, including 1,116 positive samples across 131 countries.

Shutdown-risk reference

The original shutdown_risk_v9 evaluation reports forward country-ranking AUC 0.90 against Access Now KeepItOn shutdowns. It ranks which countries; within-country day timing AUC is 0.33, below chance. These are not the distinct Atlas honest_forecast_v1 event model's scores.

The original page describes cross-source correlation and an incident-generation schedule every 30 minutes. A documented schedule is not proof that each run succeeded, and correlation is not independent confirmation of every incident.

Use the evidence.

Keep the canonical report URL, source timestamps, record types and any unavailable or degraded state with a citation.

Voidly-original research output is CC BY 4.0. Upstream measurements retain their own terms; see source-specific licensing. No blanket license is assigned to every input.

Voidly Atlas · Voidly · Report source read checked 2026-10-03T15:58:26.294Z. This read is not a publication or data-update timestamp.