UK EU Ranked: open data downloads ================================= Website: https://ukeuranked.com/data/ (sources, licences and attribution are listed there) Data vintage: snapshot of 2026-11-06 (snapshot generated 2026-11-06T07:35:15+00:00) Countries: the UK and the 27 EU member states (28 countries, national level), ranked on 21 metrics. Observations: 23831 actual values and 936 IMF projections (projections are never ranked). FILES ----- observations.csv Every actual (non-projection) observation used in the snapshot. projections.csv IMF projections, same columns; is_projection is true. Shown dashed on the site, never ranked. metrics/.csv The observations of one metric, same columns as observations.csv. 30 files: employment_rate, exports_real, fdi_inflows, gdp_pc_ppp, gdp_pc_real, gdp_real, gfcf_real, gni_pc_ppp, government_effectiveness, govt_debt, hdi, healthy_life_expectancy, homicide_rate, house_price_to_income, household_consumption_pc_ppp, household_income_per_head, imports_real, income_inequality_gini, inflation_cpi, investment_gfcf, life_expectancy, life_satisfaction, pisa_mean, pm25, productivity_gdp_hour, real_gdp_growth, rnd_spending, trade_openness, trust_in_institutions, unemployment. scores.csv One row per ranked country: overall score and rank, and for each pillar its score, rank, n_available and n_metrics (the completeness badge: "n_available of n_metrics metrics"). zscores.csv One row per ranked country and ranked metric: the value and year used, whether the value was carried forward, the z-score and the metric rank. Enough to reproduce every score. sources.csv One row per source: name, short licence ID, full licence text, URL and attribution text (with the fetch date and vintage filled in from the snapshot). snapshot.json The snapshot the files were built from (vintage, generated_at, observations, metrics). README.txt This file. Empty cells mean no value. Missing values are never filled with zero. COLUMNS ------- observations.csv, projections.csv and metrics/.csv: iso3, country ISO 3166 alpha-3 code and country name. The EU27 aggregate appears as EU27 where a source has it. metric_id, metric_name, pillar, unit Metric identifier, name, pillar (economy or qol) and unit of the value. year, value Year and value as published by the source. source_id, source_code Source (for example worldbank, oecd, imf) and that source's own series code. The full source details are in sources.csv. licence Short licence ID for the source (for example CC BY 4.0, CC BY-SA 4.0, IMF terms). The full licence text, URL and attribution are in sources.csv, one row per source_id. vintage The release the source gave for the value (for example an edition or a data-release date). fetched_at When the pipeline fetched the value (UTC). flag A reviewed note on an unusual value (an event, a revision or a known quirk), or blank. is_projection false in observations.csv and metrics/; true in projections.csv. scores.csv: overall_score, overall_rank Overall score (mean of the pillar scores) and rank, 1 = best, ties share a rank. Blank when a pillar has below 70% of its metrics (the UK can be unranked on this). _score, _rank, _n_available, _n_metrics Pillar score, rank, and the number of its metrics with a value (out of the total). Pillars in this file: economy, qol. zscores.csv: metric_id, metric_name, pillar The ranked metric. higher_is_better true or false. A false value means lower values rank higher; the z-score is already sign-flipped. value, year The value used for the score and its year. carried_forward is true when the country had no value in the metric's latest common year and its value from up to 2 years earlier is used instead; year then shows that earlier year. carried_forward true or false (blank when there is no value). z The z-score, rounded to 4 decimal places (see the rules below). Blank when there is no value. rank The rank of the value itself among the countries with a value, 1 = best, ties share a rank. It uses the raw value and the metric's direction, not the capped z-score. SCORING RULES ------------- 1. Ranked metrics (21), with their ids: employment_rate Employment rate, ages 15+ (higher is better) fdi_inflows FDI inflows, % of GDP (higher is better) gni_pc_ppp GNI per head, PPP (higher is better) government_effectiveness Government effectiveness (higher is better) govt_debt Government debt, % of GDP (lower is better) hdi Human Development Index (higher is better) healthy_life_expectancy Healthy life expectancy (higher is better) homicide_rate Homicide rate (lower is better) household_consumption_pc_ppp Household consumption per head, PPP (higher is better) income_inequality_gini Income inequality, Gini (lower is better) inflation_cpi Inflation, consumer prices (lower is better) investment_gfcf Investment, % of GDP (higher is better) life_expectancy Life expectancy at birth (higher is better) life_satisfaction Life satisfaction (0–10) (higher is better) pisa_mean PISA mean score (higher is better) pm25 Air pollution, PM2.5 (lower is better) productivity_gdp_hour GDP per hour worked (higher is better) real_gdp_growth Real GDP growth (higher is better) rnd_spending R&D spending, % of GDP (higher is better) trade_openness Trade openness, % of GDP (higher is better) unemployment Unemployment rate (lower is better) Context metrics are published in the site's metric files but are not scored. 2. Latest common year: for each metric, the most recent year in which at least 25 of the 28 countries have an actual value. A country with no value that year uses its most recent value from up to 2 years earlier (carried_forward = true). Older values count as missing. 3. z-score: for each metric, across the countries that have a value, z = (value - mean) / standard deviation, using the population standard deviation (divide by n, not n - 1). If the metric is lower-is-better, the sign is flipped. The result is capped at +3 and -3, then rounded to 4 decimal places. 4. Pillar score: the mean of the z-scores of the pillar's metrics that have a value, rounded to 4 decimal places. A country gets a pillar score and rank only if it has at least 70% of the pillar's ranked metrics. Otherwise the pillar score and rank are blank. 5. Overall score: the mean of the pillar scores, rounded to 4 decimal places. Blank if any pillar score is blank. 6. Ranks: competition ranking (1, 2, 2, 4), 1 = best, computed on the 4 decimal place scores. 7. Equal weights: every metric counts the same within its pillar, and the pillars count the same in the overall score. 8. A standing limit: these figures measure economic and quality-of-life outcomes only. Sovereignty, regulatory autonomy, migration policy and other non-economic factors are not measured here. REPRODUCE A RANK IN A SPREADSHEET --------------------------------- Example: the UK's z-score for gni_pc_ppp. a. In zscores.csv, filter metric_id = gni_pc_ppp. Column value holds the 28 values (blanks excluded). b. Mean = AVERAGE(value). c. Population standard deviation = STDEVP(value) (Excel and LibreOffice), or STDEV.P. d. z = (UK value - mean) / standard deviation. Keep the sign if higher_is_better is true; multiply by -1 if false. e. Cap at +3 or -3, then round to 4 decimal places. Compare with the z column for GBR. Pillar: AVERAGE of the z column over the pillar's metrics for that country (blank z excluded), rounded to 4 dp. Overall: AVERAGE of the two pillar scores, rounded to 4 dp. Rank: 1 + COUNTIF(scores column, ">" & score) for that country's score, within scores.csv (competition ranking). Use RANK.EQ(score, column, 0) for the same result. Using the rules above, scores.csv reproduces exactly from zscores.csv. SOURCES AND LICENCES -------------------- Each row names its source_id and carries that source's short licence ID in the licence column. sources.csv gives, for each source, the full licence text, the URL and the attribution text. The same details are on https://ukeuranked.com/data/. Some sources are share-alike or non-commercial. Rows from a share-alike source keep their licence when you reuse them, so a derived table must be shared under the same licence. This site is non-commercial. Check the licence column before reusing a row outside that scope. Raw survey microdata (European Social Survey) is not redistributed; only the country-level figures derived from it appear here. Questions or corrections: see https://ukeuranked.com/about/ (corrections log and contact).