Methods
How the panel is assembled
We build a pipeline that reads published figures from structured feeds and from published tables, keeps each source's own data value, and records where every figure came from (i.e., the data source). Our pipeline does not estimate, interpolate or reconcile away differences between sources.
Our project follows the effect of the reorganisation of United States global health assistance on HIV services in LMICs. Measuring that effect requires data that represent two things: (1) what donors report spending, and (2) what the services themselves report doing. Neither alone is enough, because funding data are timely but say nothing about delivery, while programme data describe delivery but its trackability is not real-time and is unevenly distributed geographically.
Principles
We follow four rules that govern what enters the panel (/what data are collected).
- Structured sources only. Figures come from machine-readable feeds and from published tables that can be read deterministically. Prose is never parsed for numbers. Scanned documents are out of scope, because reading them reliably would require optical character recognition and manual checking that the project cannot guarantee at scale.
- No language models anywhere in the pipeline. Every figure is traceable to a field in a file or a cell in a published table. An honest record that a country does not publish in a usable form is more useful than a plausible number without a traceable origin. Language models are not used for data extraction to minimise data contamination and to maximise the validity and reliability of our project.
- Data origin on every row. Each observation carries its source, the URL it was read from, the source's own indicator code and the date of retrieval.
- Uncertainty is kept. Modelled estimates carry lower and upper bounds and those bounds are stored and drawn. The point estimates for the 95-95-95 targets in particular carry intervals wide enough that a single number misrepresents them.
What is read, and from where
We designed the pipeline to build the panel with two layers. The aggregator layer is near-global and gives the panel its skeleton. Data in this layer are sourced primarily from UNAIDS AIDSinfo, the WHO Global Health Observatory, the World Bank, the OECD Creditor Reporting System, and United States self-reported disbursements from ForeignAssistance.gov and programme results from PEPFAR Panorama. The country layer is the national programme record, read directly where a country publishes it in a usable form.
| Source | What it provides | Type | Rows | Years |
|---|---|---|---|---|
| UNAIDS AIDSinfo aidsinfo.unaids.org |
Epidemic estimates, treatment cascade, key-population indicators and country-reported HIV expenditure. | Modelled estimate | 1,595 | 2000–2024 |
| WHO Global Health Observatory ghoapi.azureedge.net |
Epidemic and cascade indicators from the WHO indicator catalogue. | Modelled estimate | 896 | 2000–2024 |
| OECD Creditor Reporting System sdmx.oecd.org |
Donor disbursements under purpose code 13040, by donor, including the Global Fund. | Expenditure account | 542 | 2002–2024 |
| World Bank Open Data api.worldbank.org |
Population denominators and UNAIDS-derived prevalence. | Modelled estimate | 459 | 2000–2025 |
| ForeignAssistance.gov foreignassistance.gov |
United States self-reported HIV disbursements, by fiscal year. | Expenditure account | 160 | 2001–2026 |
| PEPFAR Panorama Spotlight data.pepfar.gov |
Results from PEPFAR-supported sites. A programme footprint, not a national total. | Programme record | 90 | 2018–2025 |
| Philippines DOH Epidemiology Bureau ship.ph |
The 95-95-95 cascade by region, from the quarterly surveillance report. | Programme record | 76 | 2025 |
| Cambodia NCHADS nchads.gov.kh |
Key-population outreach, testing and ART enrolment from the quarterly Boosted CoPCT report. | Programme record | 60 | 2022–2026 |
| CLM Asia data.clm-asia.org |
Community-led monitoring of service access at sentinel facilities in Indonesia. | Community-led monitoring | 30 | 2023–2026 |
| Thailand HIV Info Hub hivhub.ddc.moph.go.th |
The National AIDS Programme cascade, summed across 77 provinces. | Programme record | 23 | 2021–2025 |
| Demographic and Health Surveys api.dhsprogram.com |
Population-based survey estimates. | Survey | 6 | 2005 |
Going to source, country by country
The question we encountered at the pilot stage was whether national programme data can realistically be read at source, country by country. The answer varies notably, and the variation is itself a finding. All nine Southeast Asian countries run a national HIV programme database. Data exist in every country, but some do not allow foreign or non-institutional access.
- An open structured feed, as in Thailand, where the national programme's data mart answers queries directly.
- An open born-digital report whose tables can be read without interpretation, as in Cambodia and the Philippines.
- A closed database that releases only scanned documents or its submission to the international aggregators. For these countries the realistic route is an institutional data-sharing agreement, not public collection.
We decided whether a national report is worth reading at all by one factor. A report only adds something if it carries data the aggregators do not already receive, such as sub-national detail, more recent periods, key-population breakdowns, or programme flows. The Philippine quarterly surveillance report, for example, qualifies. It is regional, quarterly, and richer than the annual report the Philippines submits to UNAIDS. Malaysia's national report does not, because that report is itself the country's annual submission to UNAIDS, so reading it would return figures already in the panel through UNAIDS.
| Country | National source | Access | Position |
|---|---|---|---|
| Thailand | HIV Info Hub data mart, run by the Department of Disease Control | Open and structured. Answers queries directly. | Read at source |
| Cambodia | NCHADS quarterly Boosted CoPCT report | Open. Published tables, readable without interpretation. | Read at source |
| Philippines | DOH Epidemiology Bureau quarterly surveillance report | Open. Regional cascade annex from 2025 onward. | Read at source |
| Indonesia | SIHA national reporting system; CLM Asia sentinel monitoring | SIHA does not respond. The community monitoring feed is open. | Community monitoring |
| Vietnam | VAAC portal; HIV INFO 4.0 case surveillance | Portal unreachable. Surveillance restricted to programme staff. | Aggregators only |
| Malaysia | data.gov.my; Ministry of Health country progress report | Open, but the report is the UNAIDS submission already in the panel. | Aggregators only |
| Laos | CHAS; HIVCAM national cascade database | Closed. Published output is aggregated. | Access to be sought |
| Myanmar | National AIDS Programme monitoring and evaluation | Closed, and disrupted since 2021. | Access to be sought |
| Timor-Leste | DHIS2 case-based surveillance, introduced 2023 | Has an interface; expected to require credentials. | Access to be sought |
In the pilot stage (i.e., exclusively extracting data from the Southeast Asia region), three national cascades and one community layer are now read at source, by three different routes. These are a live programme interface in Thailand, published report tables in Cambodia and the Philippines, and a community-led monitoring interface covering Indonesia.
Reporting periods
Funding and programme data are filed in periods, and a period that is still open for data collection is likely subject to a figure drop when the data collected are only provisional but not full. For example, United States disbursements for fiscal year 2026 are still being reported, and PEPFAR results for 2025 cover one of four quarters. Points from an incomplete period are drawn with an open red marker and named in the note under every figure. They are never compared with complete years.
Comparing sources
Where two sources report the same country, indicator and year, both values are kept and the pair is compared. The comparison is classified before it is read, because agreement between two sources that publish the same underlying estimate is arithmetic, not corroboration. The classification method, the thresholds and every verdict with its evidence are set out on the reconciliation page.
What the panel does not support
The figures describe reported funding and reported service activity. They do not, on their own, establish that a change in one caused a change in the other. Reporting lags differ by source and by country, so a decline that appears in one series and not another may be a difference in filing but not in delivery. Programme footprints are not national totals. Here, PEPFAR reports what PEPFAR-supported sites did, which is a part of a country's response, not the entirety of it. Community-led monitoring covers a small number of facilities and is a sentinel signal, not a representative sample.
Reproducing the panel
We design the pipeline as a Python package with one connector per source and a single assembly step. The pipeline writes the panel to CSV, Parquet and SQLite, runs the reconciliation, and then we build this site from those files alone. The panel on this site was last assembled on 29 July 2026.