Sources, method and how this site is made.
A site that asks to be judged on evidence should say where its own comes from.
Sources and licences
All statistics in the three labour-market analyses come from Eurostat, the statistical office of the European Union, retrieved on 14 November 2026 through its public dissemination API. Eurostat data may be reused, with acknowledgement of the source, under the European Commission’s reuse policy (Decision 2011/833/EU; CC BY 4.0).
| Dataset | Content and breakdown used | Period | Dataset updated |
|---|---|---|---|
une_rt_a | Unemployment rate, ages 15–74, % of labour force | 2010–2025 | 6 Nov 2026 |
jvs_a_rate_r2 | Job vacancy rate, NACE B–S, all sizes, annual average | 2010–2025 | 20 Mar 2026 |
lfst_lmbpcita | EU/EFTA citizens aged 20–64 residing in another EU/EFTA country, by citizenship | 2010–2024 | 26 Oct 2026 |
lfst_lmbercita | Employment rate of the same group | 2010–2024 | 26 Oct 2026 |
lfsa_pganws | Nationals aged 20–64 in private households, reporting country | 2010–2024 | 30 Oct 2026 |
lfsa_ergan | Employment rate of nationals aged 20–64 | 2010–2024 | 30 Oct 2026 |
lc_lci_lev | Hourly labour cost and wages, EUR, NACE B–S excluding O | 2008–2025 | 23 Apr 2026 |
The snapshots as retrieved, with Eurostat’s flags, are published under /data/raw/; the derived tables under /data/; and the scripts under /code/. A second, independent retrieval of two reference years for every table (446 values) was compared with the stored snapshot and matched in full. The script fetch_eurostat.py downloads the same tables again and reports any difference, so the figures can be re-verified, or updated, by anyone.
The conjoint piece uses simulated data only. The simulation, its random seed and the true parameters are in conjoint.py.
How it was built
The site is plain HTML, one stylesheet and a small charting script written for it, with no framework and no third-party requests. Pages are generated from templates by a short Python script. The charts are SVG, drawn in the browser from the JSON files that the analysis scripts write, and every chart has a table equivalent.
Design, code and analysis were produced with AI-assisted tooling, which is part of how I work professionally. I chose the questions, reviewed the data against Eurostat and am responsible for every figure and sentence. If you find an error, I would like to hear about it.
Typefaces. Piazzolla, by Juan Pablo del Peral (Huerta Tipográfica), for text and headings; Archivo, by Omnibus-Type, for labels, tables and charts. Both are open-source under the SIL Open Font Licence 1.1 and are served from this site.
Colour. Two data colours, a vermilion and a blue, chosen and tested to stay distinguishable under the common forms of colour-vision deficiency; neither carries meaning without a label, shape or position as well.
Privacy and accessibility
This site sets no cookies, runs no analytics and loads nothing from other domains. The web server keeps standard access logs for security and troubleshooting.
Pages are built to be usable by keyboard and screen reader: charts can be stepped through with the arrow keys, each has a data table, text contrast meets WCAG AA, and motion is limited to what the visitor triggers. If something does not work for you, please write.
Experience described on this site is summarised from my own records. Figures about employers are rounded and describe the scale of the work, not business results; client names appear only as clients of the consultancy where I worked.