{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "name": "Voidly Global Censorship Index - Methodology",
  "url": "https://voidly.ai/methodology",
  "datePublished": "2024-01-01",
  "archiveObservationAsOf": null,
  "author": {
    "@type": "Organization",
    "name": "Voidly Research"
  },
  "methodology": {
    "overview": "Composite censorship score from Voidly Network correlated with OONI, IODA, and CensoredPlanet. Domain categorization from Citizen Lab test lists.",
    "dataSources": {
      "ooni": {
        "name": "OONI (Open Observatory of Network Interference)",
        "coverage": "130 countries",
        "tests": [
          "web_connectivity",
          "signal",
          "whatsapp",
          "telegram",
          "facebook_messenger",
          "tor",
          "http_invalid_request_line",
          "http_header_field_manipulation"
        ],
        "updateFrequency": "Varies by OONI test, country, and source availability"
      },
      "ioda": {
        "name": "IODA (Internet Outage Detection and Analysis)",
        "type": "BGP monitoring and outage detection",
        "updateFrequency": "Every 6 hours"
      },
      "censoredplanet": {
        "name": "CensoredPlanet (University of Michigan)",
        "type": "Remote DNS/HTTP blocking detection",
        "updateFrequency": "Every 6 hours"
      },
      "citizenlab": {
        "name": "Citizen Lab",
        "type": "Domain categorization — 5,154 distinct domains ingested (measured 2026-08-27; live at https://api.voidly.ai/v1/probe/domains distinct_total). No Voidly endpoint publishes a 14K figure; earlier copy that did was unverifiable.",
        "updateFrequency": "Weekly enrichment"
      },
      "voidlyProbes": {
        "name": "Voidly Network",
        "networkStatsSource": null,
        "aggregateProbeStatsSource": "https://api.voidly.ai/v1/probe/stats",
        "operatorDetails": "withheld from public listings",
        "domainStatsSource": "https://api.voidly.ai/v1/probe/domains",
        "interval": "Every 5 minutes"
      }
    },
    "model": {
      "classifier": {
        "type": "GradientBoosting (sklearn)",
        "f1": 0.7109,
        "f1Basis": "Leave-one-country-out mean; see the source's training-label composition and per-country caveats.",
        "evaluationSource": "https://api.voidly.ai/v1/classifier/info",
        "validationNote": "LOCO mean across 127 countries — 0.63 on the 61 countries with n≥30. The 0.87 median is inflated by 46 small-sample perfect scores. 794 of 1,116 positive training labels (71.1%) are country-days whose only incident is an IODA `disruption` row — network outages, not confirmed censorship. The same class was excluded from forecast labels in 2026-05 as ~94% noise. So this model is substantially trained to detect DISRUPTION, and its F1 should be read as such. Corpus is frozen at 2026-05-21; relabelling is a pending decision, not an oversight."
      },
      "forecast": {
        "type": "XGBoost",
        "accuracySource": "https://api.voidly.ai/v1/sentinel/accuracy",
        "validationNote": "Empirical forecast metrics are held until the accuracy response explicitly reports metrics_validated=true from a qualified evaluation. An unavailable response, legacy prod_rolling numbers, and training holdout scores do not establish deployment performance."
      },
      "featureImportanceSource": "https://api.voidly.ai/v1/classifier/feature-importance"
    },
    "scoring": {
      "scale": "0-100 (0 = free, 100 = total censorship)",
      "calculation": "block_rate * 100",
      "levels": [
        {
          "range": "0-10",
          "level": "free",
          "description": "Minimal or no censorship"
        },
        {
          "range": "11-25",
          "level": "low",
          "description": "Limited content restrictions"
        },
        {
          "range": "26-45",
          "level": "medium",
          "description": "Significant restrictions on some platforms"
        },
        {
          "range": "46-70",
          "level": "high",
          "description": "Widespread blocking of platforms and news"
        },
        {
          "range": "71-100",
          "level": "severe",
          "description": "Pervasive censorship / isolated internet"
        }
      ]
    },
    "limitations": [
      "Scores are national averages; regional variations not captured",
      "Sample sizes vary by country, affecting confidence levels",
      "Real-time events may take up to 24h to reflect in scores",
      "Content filtering and throttling harder to detect than blocking",
      "Self-censorship and legal restrictions not measured",
      "ML metrics based on internal evaluation; independent audit pending"
    ],
    "updatePipeline": {
      "ingestion": "Every 5 minutes (probes); OONI, IODA, and CensoredPlanet use separate source-dependent schedules",
      "classification": "Weekly model retraining",
      "scoreLatency": "Varies by source and country; consult source timestamps for aggregated data"
    }
  },
  "citation": {
    "apa": "Voidly Research. (2026). Global Censorship Index [Data set]. https://voidly.ai/censorship-index",
    "bibtex": "@misc{voidly2026censorship,\n  title={Global Censorship Index},\n  author={{Voidly Research}},\n  year={2026},\n  url={https://voidly.ai/censorship-index},\n  note={Bundled snapshot; archive observation date unavailable.}\n}"
  },
  "license": "CC BY 4.0",
  "contact": "research@voidly.ai"
}