CopaData
Checks what fans say about the World Cup against decades of match data, with the verdict rule set before looking.
2026 · Personal project

- World Cupsmen's editions, 1986 to 2026
- 11
- matchesevery match of those editions
- 708
- claims testedin two closed batches
- 23
- claims on the site4 myths and 3 true
- 7
Every World Cup brings back the same claims: 2-0 is the most dangerous lead, the favorite struggles in the knockout, playing at home helps. This project checks them against every men’s World Cup since 1986.
What I built
- A Python pipeline that pulls two public match datasets (Fjelstul for 1986-2022, OpenFootball for 2026), computes time and decision metrics plus team strength by Elo, and exports versioned tables.
- A closed list of claims, each with one measure and a verdict rule written before running it. Claims that came out inconclusive or ambiguous stayed off the site.
- A bilingual Astro site with one page per claim and per thing that was new in 2026, plus an explorer and a method page.
- Charts drawn as SVG at build time, with no script in the browser. Every number on a page is read from the exported data, so a missing one breaks the build.
Data from the Fjelstul World Cup Database (CC-BY-SA 4.0), OpenFootball (CC0) and international results since 1872 (CC0).
Stack
- Python
- pandas
- Astro
- Observable Plot
- pytest
- Cloudflare Workers