Cartablanca Labs · Economic Studies Division

Flows Observatory
Methodology

A technical note on data sources, aggregation methods, limitations, and editorial principles for the Flows Multilateral Financial Flows Observatory.

Study
Flows — v07
Publisher
Cartablanca Labs · ESD
Data accessed
June 2026
Coverage
2011–2024
Entities
48 UN organisations
Total tracked
$777 billion

1. Editorial Principle

This observatory reports what is published. It measures published data against declared methodology. It flags mandated-but-missing disclosures. It does not infer intent.

All figures in the Flows Observatory are derived exclusively from primary public sources — official statistical publications of United Nations bodies, the International Civil Service Commission, and the World Bank. No data has been estimated, imputed, or obtained from internal or confidential sources. Where source data contains gaps, those gaps are documented and reported as gaps, not filled.

This methodology document is intended to allow any researcher, journalist, or data analyst to independently replicate every figure in the observatory from the primary sources cited. If any figure cannot be replicated from the cited primary source, please contact Cartablanca Labs.

2. Primary Data Sources

SourcePublisherCoverageUsed forURL
CEB Financial Statistics UN System Chief Executives Board 2011–2024 · 48 entities Revenue by type, expenditure by country/function/SDG, agency profiles unsceb.org/data-download
CEB Revenue by Government Donor UN System Chief Executives Board 2013–2024 · 222 donors Donor concentration, HHI calculation, US dependency scenario unsceb.org/fs-revenue-government-donor
UNGM Annual Statistical Report UN Global Marketplace 2019–2024 · $24.9B (2023) Procurement by organisation, UNSPSC sector, supplier country ungm.org/public/asr
CEB HR Statistics UN System Chief Executives Board 2017–2024 · 20+ entities Staff headcount, gender, nationality, duty stations, grade composition unsceb.org/hr-statistics
ICSC Salary Scale (Professional) International Civil Service Commission Effective January 2025 Net base salary by grade (P-1 to USG) icsc.un.org/home/salaryscales
ICSC Post Adjustment Circular International Civil Service Commission CIRC/PAC/617 · May 2026 Post-adjustment multipliers by duty station (25 cities) icsc.un.org
ICSC Booklet — Salaries, Allowances and Benefits International Civil Service Commission February 2025 Education grant, hardship allowance, mobility allowance, pension icsc.un.org (PDF)
World Bank Open Data World Bank Group 2023 estimates · 190+ countries GDP per capita, population, poverty headcount ratio data.worldbank.org
World Bank Poverty & Inequality Platform World Bank Group Most recent survey year per country Poverty rates at $2.15/day and $5.50/day thresholds pip.worldbank.org
Publish What You Fund ATI Publish What You Fund 2024 Index · 50 organisations Aid transparency scoring context (6 UN entities assessed) publishwhatyoufund.org

3. Key Calculations

3.1 Earmarking ratio

Computed as Earmarked revenue ÷ Total revenue per year, per entity. Earmarked revenue is the CEB sub-type "Earmarked voluntary contributions" (rev_type = EAVC). Total revenue includes all CEB-classified revenue types. Values are in USD millions as reported; no currency conversion has been applied to non-USD-denominated entries (the CEB converts to USD at the time of publication).

3.2 Herfindahl-Hirschman Index (HHI)

Computed annually as Σ(sᵢ²) where sᵢ is each government donor's share of total government contributions in percentage points. A value above 1,000 indicates elevated concentration; above 2,500 indicates high concentration (standard US DOJ thresholds). The index here applies to government voluntary contributions only, not assessed contributions.

3.3 UN spend per person in poverty

Computed as CEB expenditure in country (2024) ÷ (population × poverty headcount ratio). Poverty headcount at the $2.15/day threshold (2017 PPP) from World Bank PIP, most recent survey year. Where survey data is unavailable, the country is excluded from this calculation. This is a spending intensity metric, not an efficiency metric — it measures where money flows, not what it achieves.

3.4 Procurement return ratio

Computed as UNGM procurement contracts awarded to suppliers of country X ÷ CEB government contributions from country X. Both figures are for 2023. Procurement data is by supplier country of registration; contribution data is by government donor. This ratio illustrates the relationship between donor status and supplier status; it does not imply that procurement decisions are influenced by contribution levels.

3.5 Salary architecture (illustrative modelling)

Net base salaries are taken directly from the ICSC Professional salary scale, effective 1 January 2025. Post-adjustment multipliers are taken from ICSC CIRC/PAC/617 (May 2026). Total remuneration is computed as net base salary × (1 + post-adjustment multiplier). Hardship allowances are applied per the ICSC Booklet Table 1 (category B through E).

⚠ Limitation — Salary figures are illustrative, not payroll data

The salary calculations apply published ICSC scales to published CEB HR headcount data. This produces a structural floor estimate. Actual organisational payroll costs are higher due to: step increments (most staff are not at step I), dependant allowances, pension contributions (15.8% employer share of pensionable remuneration), health insurance, rental subsidies, and individual assignment grants. No payroll data was obtained or used. These figures are intended to illustrate structural cost patterns, not to audit any organisation's actual expenditure.

3.6 Global poverty line comparison

All poverty-line comparisons use annual figures. The World Bank $5.50/day threshold converts to $5.50 × 365 = $2,007.50 per year. The $2.15/day extreme poverty threshold converts to $2.15 × 365 = $784.75 per year. All salary and benefit figures cited in the observatory are annual (per year) to ensure consistent comparison. Where a "per day" figure appears, it is explicitly labelled as such and derived by dividing an annual figure by 365.

4. Known Limitations and Gaps

GapScopeImpact
Functional classification gap 2011–2017 expenditure ($290.6B) Cannot classify as humanitarian/development/peace. Excluded from function-based analysis.
Non-government donor granularity 6,132 records vs 101,193 government records Private sector and foundation contributions are less granular. Analysis focuses on government donors.
Palestine fragmentation Three naming conventions in source data "Palestine", "Occupied Palestinian Territory", "State of Palestine" appear as separate entries. $12.7B cumulative spend is fragmented across these. Aggregated manually; may contain minor double-counting.
Vendor-level procurement UNGM data is by supplier country, not by vendor Cannot identify individual companies or track specific contracts. Country-level aggregation only.
Grade-level staff distribution CEB HR provides headcount by organisation and duty station, not by grade and duty station simultaneously Salary modelling applies a P-3 equivalent as a central estimate. Actual cost distribution by grade is not publicly available.
Transparency assessment coverage PWYF ATI 2024 covers only 6 of 48 UN entities Majority of UN organisations have not been independently assessed for transparency compliance.

5. What This Observatory Does Not Claim

What it does claim: that the patterns described are arithmetically observable in primary public data, that those patterns have structural consequences for the system's ability to serve its mandate, and that making them publicly readable is a contribution to the system's own accountability mechanisms — not an attack on them.

6. Reproducibility

All source data is publicly downloadable from the URLs listed in Section 2. The aggregation logic is documented in this methodology note. Cartablanca Labs welcomes independent verification and will respond to queries about specific calculations.

The observatory was built using Python (data processing), Chart.js 4.4.1 (visualisation), and standard HTML/CSS. No proprietary software or restricted APIs were used.