Pulse Atlas
Method v1.2.0 · data snapshot 2026-06-23
Every number here should be checkable.

How the atlas is built: what it measures, how a value becomes a score, what happens when data is missing, and what it cannot tell you. If a claim in the atlas can’t be verified from this page, that’s a defect. Write to hello@grove-lab.org.
Why absolute scores
#Every indicator is scored from 1 to 5 on an absolute scale. Each indicator has a fixed lower and upper reference value, its goalposts, and a region’s score is where its value falls between them. Regions are scored against the goalposts only, so one region’s score never depends on another’s.
The whole atlas depends on that. An unchanged value means an unchanged score: if a region’s unemployment rate is the same next year, so is its unemployment score, whatever happened elsewhere in Europe.
Rank and percentile scoring behaves differently. A region can improve on every measure and still fall, because others improved faster. Where a region stands is still worth knowing, so the atlas shows its position within its country and within the EU. That position is reported on its own and never folded into the score.
Goalposts are the 2nd and 98th percentiles of a multi-year, EU-wide baseline, so one outlier can’t set the scale. A value is placed linearly between them and clipped at the ends, and indicators where higher is worse, like unemployment, are flipped. That gives a score from 1 to 5, cut into the map’s five equal bands. Goalposts are frozen and versioned, so changing one bumps the method version (see sources).
Beside every score the atlas shows the raw value and its reference year, so you can check the score against the source.
What a year means here
#Every year of the panel is scored on the same frozen goalposts, so a region's 2016 score and its 2024 score sit on one ruler. An unchanged value keeps an unchanged score. That is what makes a band crossing an event in that region's life rather than a move in a ranking.
The series holds every year the raw Eurostat vintages carry, 2014 to 2025. Each indicator has its own span, because each Eurostat table publishes on its own schedule, and the reference year sits beside every value.
The composite runs 2015 to 2024. It cannot start earlier. The inclusion series opens that year, and a composite built from a changing set of dimensions is not comparable with itself across years.
Nothing is interpolated between years. Two series cross their bands back and forth often enough that a tween would draw noise as motion, so those are shown year by year: road deaths and risk of poverty or social exclusion. Nothing is carried forward into a year that has no value.
Nominal values and the price level
#2 of the panel's indicators are published in that year's prices: household net disposable income and GDP per inhabitant, both in purchasing power standards. Part of their climb over a decade is the price level rather than a change in what a household can buy.
So the atlas shows them at a year and never compares them across years on this page. Every finding below is measured on the 10 indicators that do compare as they stand, which are rates, shares and counts.
Deflating them would change their scores, so it is a method change rather than a presentation one. Until a deflator is adopted the rule above holds, and those two indicators keep their place on the map at a year.
What the atlas measures
#The atlas measures 12 Eurostat indicators for 244 European regions and publishes a composite for the 241 that clear the coverage gate (see missing data). Regions are NUTS-2, the EU’s standard statistical regions, the level between country and province: Andalucía, Île-de-France, Lombardia.
Most of the panel is scored, across 5 dimensions of well-being:
- Income: household net disposable income per inhabitant (nama_10r_2hhinc).
- Employment: employment rate, ages 20–64 (lfst_r_lfe2emprt); unemployment rate, ages 15–74 (lfst_r_lfu3rt).
- Education: tertiary attainment, ages 25–64 (edat_lfse_04); young people not in employment, education, or training, ages 15–24 (edat_lfse_22).
- Health: life expectancy at birth (demo_r_mlifexp); road deaths per million inhabitants (tran_r_acci).
- Inclusion: people at risk of poverty or social exclusion (ilc_peps11n).
The rest are context lenses: scored and shown, but kept out of the composite. GDP per inhabitant (nama_10r_2gdp), because regional output is not the same as residents’ living standards. Households with internet access (isoc_r_iacc_h), because several countries report the underlying survey only above the regional level.
Adult participation in learning (trng_lfse_04), because it counts only the four weeks before the survey. The at-risk-of-poverty rate (ilc_li41), because it measures a region against its own country’s median income rather than a single European line.
Every indicator’s table code, filters, unit, direction and reference year are recorded in the published data files. The atlas shows the table code and the reference year beside every value.
How scores combine
#Aggregation happens in two steps, and the two steps use different math on purpose.
Within a dimension, indicator scores are averaged arithmetically. The indicators inside a dimension are close substitutes, and a plain average reads the way you'd expect.
Across dimensions, the composite is the geometric mean of the dimension scores. That limits substitution: a strong score in one dimension cannot fully compensate for a weak one in another. For a well-being measure that is the point. A serious shortfall should stay visible in the composite rather than be offset by strength elsewhere.
The dimensions carry equal weight. That is a choice we made, and it is not neutral: the atlas takes no stance on whether health matters more than income, or education more than employment. If you would weight them differently, you can. Every raw value and every per-dimension score is published.
The composite is deliberately a secondary lens. The atlas leads with the multi-dimensional profile, and no surface reduces a region to one number.
Missing data
#The atlas never imputes a missing value. It does not model a plausible number from neighbors, carry an old value forward, or fill from a national average. An imputed value can’t be checked against a source, so the gap stays visible.
One case looks like an exception. Cyprus, Estonia, Latvia, Luxembourg and Malta are each a single region, so where a regional value is missing the national series is used instead. It describes the identical territory rather than a model of it, and the value carries its sourcing basis and a lowered confidence flag. The internet-access context lens, which never enters the composite, may likewise carry a labeled value from a region’s parent statistical area where the survey stops above the regional level (see gaps).
Missing data is handled by withholding. A region’s composite is published only when it has data in every scored dimension and for at least 60% of the scored panel. The 60% line is an editorial convention, since no statistical authority blesses a particular threshold, so it is declared here and held constant across method versions.
On the map, a region without data gets a neutral hatched fill and its own legend entry, so it can’t be mistaken for a low score. In lists and charts it is marked unavailable instead of quietly dropped. Where a composite is withheld, the atlas says so and shows the coverage that fell short.
One gap remains. Within a dimension, the score averages only the indicators present, so a dimension missing one is itself a partial measure. The every-dimension requirement and the visible coverage count are the guardrails.
Known gaps
#These are the panel's known weaknesses.
- Housing is omitted. There is no usable region-level series: Eurostat’s overcrowding and cost-overburden tables are country-level only. An income-based proxy would double-count income, so the atlas leaves housing out until a real regional series exists.
- Internet access has a survey ceiling. Several countries, Germany and Greece among them, report the underlying survey only at national or macro-regional level. For those regions the atlas shows the parent area’s value, labeled as such. That approximation is one reason internet access is a context lens rather than a scored dimension.
- Inclusion is thin. One scored indicator carries the dimension: people at risk of poverty or social exclusion. The at-risk-of-poverty rate sits beside it as a context lens, but the composite still rests on that single umbrella measure, and the atlas flags the dimension as thin rather than padding it with overlapping series.
- Vintages are mixed. Each value uses its region’s latest populated year, so reference years differ across indicators, and between regions on the same indicator. They currently run from 2016 to 2025. The year sits beside every value, so a mismatched comparison is always visible.
The two witnesses
#Two figures recorded by a different mechanism than the score sit beside it. Neither feeds a score, neither is scored, and neither recolors the map. They ride it as a layer, so two records that point opposite ways can be seen on one picture.
- People. demo_r_gind3, published by Eurostat under CC BY 4.0. Counts are summed from NUTS-3 to NUTS-2, and a region's rate is net migration divided by population on 1 January, per thousand residents, averaged over 2014 to 2025. Under six years of both counts the rate is withheld. 241 of 244 regions matched.
- Money. tc55-7ysv, from European Commission, Cohesion Open Data Platform, Public domain. Payments paid 2014 to 2020, summed per region and divided by its mean population over that window. The file is keyed on the 2013 regions, so 52 of this edition's codes are reached through a recode and 9 have no row at all. 235 of 244 matched.
A region missing from a record is unmatched, and the map draws that as an absence. Drawing it as zero would be stating a measurement nobody made.
Where a sentence below says “inside a country”, both figures have had that country's own mean subtracted. Pooled across Europe the two records agree, because a wealthy country tends to be wealthy throughout. Subtracting each country's mean leaves only what varies within it, which is what the sentence is about.
When a finding earns a verb
#The atlas states four findings. Each one had to pass all four of these before it was allowed a sentence:
- It reproduces. One command in the repository recomputes every figure below from the published snapshot, and the build fails when a figure drifts from the sentence carrying it.
- It survives a null and a leave-one-out. The pairing is shuffled 200 times to see what chance alone produces, and the whole reading is recomputed with each country's regions dropped in turn. A reading that rests on one member state is not a reading about Europe.
- An outside source agrees in direction. The source is named in the statement, and what the atlas takes from it is the direction alone.
- Its verb is the claim word’s. A measured finding shows, a derived finding finds. Neither proves anything, and neither says what caused it.
Each statement names its claim word and lists these four checks. A reading that fails one is drawn on the map and left unstated. The money below is that case.
What the atlas finds
#Four readings. Every figure here is recomputed from the published snapshot on every build, so a number in a sentence is never typed by hand.
The tide
Between 2014 and 2025 every country’s regions rose on this scale, and the countries that stood lowest rose fastest.
All 27 countries rose. Across the 19 with four or more regions, a country’s 2014 standing and its climb rank at −0.76, against a shuffled −0.53, and between −0.87 and −0.72 with any one country dropped.
It is measured on the employment and education dimensions, reported as their mean. Greece stood lowest and gained 1.63 points of the five. Sweden stood highest and gained 0.38.
- Reproduces from the published snapshot.
- Survives the shuffled null and every leave-one-out.
- The 9th Cohesion Report reports the same convergence between countries over a longer window.
- Stated as “finds”, the verb its claim word allows.
The gaps
The gaps between countries closed on 9 of 10 indicators. The gaps inside countries did not.
The between-country share of the spread fell on 9 indicators, and still fell on at least 9 of them with any one country dropped. Inside countries the spread held, at a median ratio of 0.88 across the decade.
That second sentence is a median, and the per-indicator ratios run 0.27 to 1.51. Inside countries 6 of the 10 closed and 4 widened. household internet access closed hardest, at 0.27, and adult learning widened most, at 1.51.
- Reproduces from the published snapshot.
- Survives the shuffled null and every leave-one-out.
- Doran and Jordan 2013 measured the same shift toward inequality inside countries on income, over 1980 to 2009.
- Stated as “finds”, the verb its claim word allows.
The people
Inside a country, people arrive in its high-scoring regions.
Net migration and the composite rank at 0.55 within countries, across 238 regions, against a shuffled 0.14, and between 0.50 and 0.59 leaving any one country out. Pooled across Europe it reads 0.63, which is the tide above.
It is a link between levels. Change against change reads 0.02, so the sentence says where people arrive and says nothing about what followed. It is also uneven: across the 17 countries with four or more regions it runs from 0.91 in Belgium to −0.59 in Austria.
- Reproduces from the published snapshot.
- Survives the shuffled null and every leave-one-out.
- Eurostat's own regional migration statistics report the same direction at regional level.
- Stated as “shows”, the verb its claim word allows.
The money
EU payments per head sit on the low-scoring regions.
Payments per head and the composite rank at −0.65 across 233 regions, −0.52 within countries, and between −0.68 and −0.61 leaving any one country out.
A second reading is drawn and left unstated. Payments per head against a region’s climb reads −0.06 within countries, inside its own shuffled null of 0.13. By dimension it cancels: employment 0.25 one way and income −0.26 the other.
So the map shows where the money went, and the atlas makes no claim about what it moved. That picture is there to be read, and it has no sentence.
- Reproduces from the published snapshot.
- Survives the shuffled null and every leave-one-out.
- The Commission's own cohesion allocation rules set the money by regional income, which is the direction the first sentence reports.
- Stated as “shows”, the verb its claim word allows.
Sources and licenses
#All statistics come from Eurostat's regional database, published under Creative Commons Attribution 4.0 (CC BY 4.0). Every indicator names its exact Eurostat table code (listed above). The exact filters are recorded in the published data files, so any number can be re-fetched from the source and checked.
The atlas’s own derived data (scores, bands, coverage flags, the manifest) is published under the same license, CC BY 4.0. Reuse it, with attribution.
The scoring follows the OECD–JRC Handbook on Constructing Composite Indicators (2008). Part of the indicator selection is aligned with an open JRC regional dashboard (publication JRC141991, CC BY 4.0). From it we took only the vetted Eurostat series listed in its annex.
The map boundaries are the exception. They come from Eurostat’s GISCO service and are © EuroGeographics: free to reuse non-commercially, but commercial reuse of the boundary files needs a EuroGeographics license. That covers the map geometry only. The statistics, the scores and everything else on this page are CC BY 4.0.
The method is versioned. Changing the goalposts, the indicator panel or the aggregation bumps the version. Scores are then recomputed for the whole back-series, and scores from different versions are never mixed in one time series. A published version’s scores never change under that version. Current: method v1.2.0, data snapshot 2026-06-23.
Pulse Atlas replaced an earlier municipal atlas of Belgium built by the same lab. That atlas is retired, and its municipal-level scores, computed by a different method, are no longer published.
How to cite
#Cite the atlas with its method version and snapshot date. Together they pin exactly what you saw:
Grove Lab. EU Pulse Atlas, method v1.2.0, data snapshot 2026-06-23. https://grove-lab.org/en/atlas (accessed 2026-10-19).
For a specific claim, link the view itself: explore URLs (/atlas/explore?…) carry the selected region and indicator, so the link you share opens on the numbers you cited.
The version pin keeps a citation reproducible: the same method version and snapshot always give the same scores. If the method changes, its version changes with it, so the scores you cited stay fixed under the version you cited.
What this atlas cannot tell you
#Where it stops:
- What matters most. Equal weighting across dimensions is a choice we made, and a different, equally defensible weighting would rank regions differently.
- Why. The atlas describes measured outcomes without explaining them. A low score says nothing about its cause, whether history, geography or policy.
- Like-for-like years. Reference years differ across indicators, and between regions on the same indicator. The year sits beside every value. Check it before building an argument on a two-region comparison.
- What happens inside a region. A NUTS-2 region can span millions of people, a metropolis and its rural hinterland. The average hides that variation: a prosperous region can still contain struggling towns.
- Small differences. Several indicators come from sample surveys with sampling error, so a narrow gap between two regions may be noise. Treat near-ties as ties.
- Anything Eurostat does not measure regionally. Housing is absent for lack of regional data. Safety, the environment and much of daily life are not in the panel, either because no comparable regional series exists or because the thing is hard to measure.
Pulse Atlas is published by Grove Lab.