Sources and method
VEIL draws a life from real statistics. This page says what the numbers are, where they come from and where the game guesses.
What is measured and what is modelled
- The lottery is measured. Country is drawn by the number of births per year (population × birth rate, World Bank), not by population. Urban or rural follows the country's urbanisation rate. Sex follows the country's sex ratio at birth. The income decile is a model: income is spread log-normally from the country's GDP per person and Gini, and poor deciles are weighted up where fertility is high (a rough estimate after DHS surveys).
- Mortality is modelled, calibrated to measurement. The yearly risk follows a Gompertz curve with infant mortality and external causes, adjusted per country and sex so that it reproduces the country's real life expectancy. Causes of death follow WHO's Global Health Estimates 2023 (the same underlying work as IHME's GBD): the share of deaths per cause in four age bands, blended between low- and high-income countries by the country's GDP, with HIV, tuberculosis, malaria and violence adjusted per country. It is not a forecast for you.
- Income is modelled. Daily living standard is income times about 0.56 (household consumption as a share of GDP; about 0.35 in poor countries and lower in the large middle-income countries, a rough estimate) and is classed by the World Bank's June 2025 poverty lines: $3.00, $4.20 and $8.30 per person per day in 2021 PPP. The game's GDP data is current PPP (2023), built on the same 2021 ICP round. Mobility between generations follows research on how much of parents' position carries over, and is an estimate per region.
- Events are a mix. Child labour, child marriage, schooling, unemployment, malaria, homicide and maternal mortality use the country's real figures. Many moments and choices have probabilities that are authored estimates. A number in the text with a source is taken from that source; odds shown in the game are often rough. The stories are invented.
- A life is one outcome of many. The same birth can end a thousand ways. The game shows this by living your life again under other conditions. It is an illustration, not a prediction.
The indicators
Country data lives in js/data.js, built by tools/build_data.py. The base data (population, GDP, Gini, life expectancy, literacy, urbanisation, corruption, infant mortality, freedom) comes from an older dataset in the project, data/raw.json, fetched 2026-10-31 with values that mostly correspond to 2023. The exact origin per field is not documented there. Where I could not trace it, the table says "unknown". Thirteen indicators were fetched directly from the World Bank API (updated by the World Bank 2026-10-08, fetched 2026-10-31).
| Indicator | Source | Year | Licence and terms |
|---|---|---|---|
| Births per 1,000 (SP.DYN.CBRT.IN) | World Bank (WDI) | latest per country | CC BY 4.0 |
| Boys per girl at birth (SP.POP.BRTH.MF) | World Bank (WDI), UN data | latest per country | CC BY 4.0 |
| Fertility rate (SP.DYN.TFRT.IN) | World Bank (WDI), UN data | latest per country | CC BY 4.0 |
| Children out of primary school (SE.PRM.UNER.ZS) | World Bank, UNESCO UIS | latest per country | CC BY 4.0 |
| Secondary enrolment, net (SE.SEC.NENR) | World Bank, UNESCO UIS | latest per country | CC BY 4.0 |
| Tertiary enrolment, gross (SE.TER.ENRR) | World Bank, UNESCO UIS | latest per country | CC BY 4.0 |
| Child labour, ages 7–14 (SL.TLF.0714.ZS) | World Bank, ILO and UNICEF | latest per country | CC BY 4.0 (World Bank terms); underlying ILO/UNICEF terms not verified |
| Married before 18, women 20–24 (SP.M18.2024.FE.ZS) | World Bank, UNICEF/DHS | latest per country | CC BY 4.0 (World Bank terms); underlying UNICEF terms not verified |
| Unemployment (SL.UEM.TOTL.ZS) | World Bank, ILO modelled estimate | latest per country | CC BY 4.0 (World Bank terms) |
| Malaria per 1,000 at risk (SH.MLR.INCD.P3) | World Bank, WHO | latest per country | CC BY 4.0 (World Bank terms) |
| Homicide per 100,000 (VC.IHR.PSRC.P5) | World Bank, UNODC | latest per country | CC BY 4.0 (World Bank terms) |
| Maternal mortality per 100,000 births (SH.STA.MMRT) | World Bank, WHO/UN estimation group | latest per country | CC BY 4.0 (World Bank terms) |
| Population aged 65+ (SP.POP.65UP.TO.ZS) | World Bank, UN (WPP) | latest per country | CC BY 4.0 (World Bank terms) |
| Population | UN population prospects or World Bank (unknown which) | 2023 (inferred) | UN: CC BY 3.0 IGO for UN DESA population data; World Bank: CC BY 4.0 |
| GDP per person, PPP (current international dollars, 2021 ICP) | World Bank (probably NY.GDP.PCAP.PP.CD) | 2023 (inferred) | CC BY 4.0 |
| Gini | World Bank (probably) | latest per country, year varies | CC BY 4.0 |
| Life expectancy, men and women | UN or World Bank (unknown which) | unknown | terms not verified |
| Literacy, urbanisation | World Bank/UNESCO (probably) | unknown | CC BY 4.0 (World Bank) |
| Infant mortality | UN IGME or UNICEF/World Bank (unknown which) | unknown | terms not verified |
| Corruption index | Transparency International, Corruption Perceptions Index | 2023 (inferred from values) | TI states that CPI data is CC BY 4.0; credit the source and mark changes |
| Freedom index | Freedom House, Freedom in the World | 2023 (inferred from values) | Non-commercial use with attribution; commercial use needs permission. Exact data licence not verified |
| Regime type (full democracy, flawed, hybrid, authoritarian) | Categories after the Economist Intelligence Unit's Democracy Index (inferred from the labels) | unknown | terms not verified |
| Access to health care (index 0–100) | unknown | unknown | terms not verified |
| Largest religion | unknown (probably Pew Research) | unknown | terms not verified |
| Taiwan (missing at the World Bank) | Taiwan's Ministry of the Interior | 2024 | terms not verified |
| Name lists | Older dataset in the project | unknown | origin unknown |
| Causes of death by age and income level | WHO Global Health Estimates 2023 (deaths by cause, age and World Bank income group; close to IHME's Global Burden of Disease) | CC BY-NC-SA 3.0 IGO (WHO open data) | The game copies no tables, only rounded shares per age band. The check against four countries is in tools/test_causes.js |
| Cancer risk | GLOBOCAN (IARC/WHO), rough figure | unknown | terms not verified |
| Pension coverage | ILO (SDG 1.3.1), rough figure per income group | unknown | ILOSTAT is reported to be CC BY 4.0 (per a secondary source); not verified at the ILO |
| Figures in individual texts (HIV, refugees, water, electricity, dementia and others) | WHO, UNAIDS, UNHCR, UNESCO, ITU, GSMA and others | mostly 2021–2023 | Quoted as single facts with a source. WHO publications carry CC BY-NC-SA 3.0 IGO; terms for the others not verified |
World Bank: CC BY 4.0, with the added term that the World Bank must not appear to endorse the game. It does not. The game recomputes and rounds the figures. The terms above were checked by web search on 2026-11-01; where it says "not verified" I found no clear licence text.
Images, music and sound
All images are AI-generated (Seedream, via ElevenLabs). The music and sound effects are AI-generated with ElevenLabs. The people in the images do not exist. The images set a mood; they do not show real places or people.
Privacy
No accounts, no cookies, no tracking. The game saves only in your browser (localStorage): sound on/off, the life atlas and the badges. None of it leaves your device.
One thing does leave the device: the typefaces (Big Shoulders Display, Instrument Sans, JetBrains Mono) are loaded from Google Fonts, so Google sees your IP address when the page loads. The game fetches nothing else from other servers.
If the game stirs something
The game is about death, poverty and loss. If it brings up something heavy for real:
- Sweden: Mind Suicide Line 90101 (phone, every day) and chat at mind.se. In an emergency call 112. You can also call 1177 for health advice.
- Elsewhere: findahelpline.com lists helplines by country.
See something wrong?
The figures were gathered with care but are not flawless. Where a source has been updated since the game was built, the values may have moved. The game states its assumptions in the text where it can, and prefers rough and honest to exact and invented.