Since 2026

Genocide at the Security Council

Between 1946 and 2024 the UN Security Council heard 167,642 speeches. Someone said the word genocide, or a form such as genocidal, in 4,136 of them, 2.47% of the corpus, 7,787 times in all. The material is The UNSC Meetings and Speeches corpus (Sakamoto & Matsuoka, v5.0, CC0): 9,464 meetings, 86.8 million words, public domain. Genocide at the Security Council asks who said it, about what, and what the word was doing there.

Eight views

  • Overview: the headline counts, and the annual series read two ways at once, as raw occurrences and as a share of speeches
  • Chronology: the word and its neighbours over time, year by year or month by month, plotted against 59 reference dates traced to primary sources
  • Words in context: what the word travels with, by speaker and by period
  • Actors: who said it, as a share of their own speeches, with Council membership resolved year by year
  • Concordance: every match with its sentence and the meeting symbol to cite, each expandable to the full speech
  • Usage: which case or concept each mention concerns, and whether the speaker asserts, rejects or reports the claim
  • Semantic map: speeches placed by similarity of wording and subject
  • Methods: how every number was made, sourced and bounded

Every view says whether it is computed from the record or produced by a language model. Every chart says what it answers, how to read its marks and what it does not show, and names the script that produced the file behind it. Take any figure away as CSV with its provenance, or as SVG or PNG with the filters drawn into the image.

Reading with a language model

The Usage and Semantic map views are experimental. An open-weight model, Qwen3.8 27B, run on project-controlled hardware, has classified 7,694 of the 7,787 mentions, and a second model, Gemma 4 31B, offers a second opinion. The human-coded sample that will test them has not yet been coded, so the dashboard presents these labels as a way into the passages, not as findings. The word counts elsewhere do not depend on them.

How it is built

Python does the counting, from the raw Dataverse download through to the finished tables. The dashboard is a static SvelteKit site with ECharts figures and a MapLibre map. The choices that need human judgement, among them the genocide lexicon and the reference dates, sit in versioned config files where anyone can inspect them and argue with them.

The code is MIT, the derived tables and figures CC BY 4.0, the source corpus CC0.

Fig. 1 — The dashboard

The overview, with the headline counts and the two figures that set up the rest. Follow the navigation for the chronology, the words in context, the per-speaker rates, the full concordance and the experimental model views.