Spain, 1991–2025
How has immigration to Spain changed over three decades?
We read about immigration almost every day, nearly always as a single figure or a chart of a single year: how many foreigners there are today, how many arrived last year, which country most come from. Each one tells a piece, but none shows the whole story at a glance, or how it moved over time. Here we bring together more than thirty years of data from Spain's statistics office, the INE, on a single page, with animated charts linked to one another, to answer four questions as clearly as possible: how many people born abroad live in Spain and where they come from, when each country arrived, how much each grows or shrinks every year and who leads each stage. And a fifth that runs through them all: how many already hold Spanish nationality.
How it was madeThe data
Everything comes from the INE and from a single question: where was each person living in Spain born? For each year, on 1 January, we know how many people born in each country live here, and of them, how many already hold Spanish nationality and how many do not.
These are stock data, not flows. Each year is a snapshot of who lives here. It does not say how many people arrived or left, only the result. Subtracting each snapshot from the one before gives the net change: arrivals minus departures and deaths. That subtraction is what drives the race.
Born abroad is not the same as foreign. Some were born in Argentina to Spanish parents, others arrived from Morocco and became Spanish years later. In 1998, half of those born abroad were already Spanish. In 2008, after the great wave, only 17%. That is why every chart on the page separates the two parts with the same colour.
- Source
- INE. Continuous Municipal Register Statistics (1998–2022) and Annual Population Census (2023–2025). The 1991 Census, as a starting point.
- What is counted
- Residents on 1 January, by country of birth and with Spanish or foreign nationality.
- Period
- 1991, and 1998 to 2025. There is no comparable series between 1992 and 1997.
- Countries
- The 20 that at some point exceeded 150,000 people. The others are grouped into a “rest” for each continent.
- Change of source
- In 2023. It is marked with a dashed line, and that year's net change is computed with the Census at both ends.
- In figures
- 1.17 million people born abroad in 1998 and 9.46 million in 2025. The largest net change, +794,535 in 2008. The worst, −356,824 in 2014.
One question, one chart
No chart tells it all. Each one on this page answers one question and gives up others, and the icon next to its title explains what type of chart it is and how to read it.
- How many people, and from where, overall?The trunk. A stacked area rolled into rings: total and breakdown at once.
- When did each country arrive, and when did it peak?The timeline. A ridgeline plot: the shape of each country, comparable with the others.
- How much does each country grow or shrink, year by year, and from where?The race. Animated diverging bars and a spike map.
- Who leads each year?The ranking. A bump chart: the order, without the magnitude.
One colour for the whole page. In all four charts, colour says the same thing: how many hold Spanish nationality. It is a diverging scale, from ochre (almost all foreign) to indigo (almost all Spanish), with a paper tone at 50%. Diverging because that midpoint means something: on one side, most do not hold the nationality, and on the other, most already do. That is why nothing is coloured by continent, which would have meant a different legend for each chart.
The trunk
As in a cross-section of a tree trunk, each ring is a year, from 1991 at the centre to 2025 at the bark. Its thickness is how many people born abroad lived in Spain, and each grain is a country. The dotted ring marks the years without data, 1992 to 1997, and the pith is not to scale.
The timeline
Each ridge is measured against that country's peak, shown on the right. Within each continent, in order of arrival: the year each country reached half its peak. Click a ridge to zoom in.
The race
How many people born in each country are added each year to those already living in Spain. This is the net change: arrivals minus departures and deaths. Bars pointing left are years in which that group shrank. As in the trunk, colour is the share with Spanish nationality that year. On the map, each country is a spike that rises when its group grows and drops when it shrinks. To follow one country while everything moves, rest the pointer on it on the map: its bar, its spike and its thread in the ranking stay highlighted, and its details advance year by year.
Each year's ranking. Every country, ordered by its net change. At the top, those growing, and after the gap of the stepped line, on a grey background, those shrinking. Below each year, how many there are of each. A thread joins each country from one year to the next. Click a year to see it in the race.
Change from one year to the next, on 1 January. The 2023 change is computed with the Census in both years, so the change of source does not look like a real change. Countries with fewer than 150,000 people are counted under “Continents”. Gross arrivals by country of birth only exist from 2008, with a change of method in 2021, so they cannot follow the full series.
Chart type
Stacked area in polar coordinates
Also called a radial stacked area chart. With two unrolled variants: a 100% stacked area and a streamgraph.
How to read it
Each ring is a year, from the centre (1991) to the bark (2025). The thickness of the ring is the total of people born abroad, and each grain is a country: its width in the ring is its share that year. Colour is the share with Spanish nationality.
Why this chart
A stacked area shows the total and the breakdown at once. Rolling it into rings adds a metaphor that needs no legend: time as accumulated growth, just like a tree trunk. The buttons unroll it into two more classic charts: Share, a 100% stacked area where only each country's proportion counts, and Volume, a streamgraph where the total counts again.
Watch out for
In a circle, the outer rings are longer, so recent years take up more surface than their people. That is the price of the metaphor, and the reason for offering the unrolled versions, where every year is the same width. The 1991 pith is not to scale.
Chart type
Ridgeline plot
Also called a joyplot.
How to read it
One ridge per country, with time from left to right. Height is measured against that country's peak, shown on the right, so every ridge reaches the top in its best year. Colour changes along the ridge with the share that already holds Spanish nationality. Clicking a ridge zooms into a stacked area with its figures.
Why this chart
With twenty series, a line chart becomes a tangle. Ridges separate them into rows without losing the shared time axis, and they read like a landscape: who arrives early, who late, who is still rising and who has already fallen. Ordering them by year of arrival turns the landscape into a sequence of waves.
Watch out for
Each ridge has its own scale. Ridges compare shapes and timing, not sizes: a tall ridge for Honduras can be fewer people than a low one for Morocco. For the figures there is the zoom, with its axis of people.
Chart type
Animated diverging bars and spike map
A bar chart race with diverging bars, a spike map and, below, an area chart.
How to read it
Each bar is a country's net change in the year shown by the clock: to the right if its group grew, to the left if it shrank. Bars reorder as time advances. On the map, each country is a spike that rises or drops with that same net change. The line below is the net change of the total, and you can pick the year on it. Resting the pointer on a country on the map follows that country alone: the bars keep reordering, but its bar stays highlighted and its figure advances with the clock.
Why this chart
Net change has a sign, so it needs a shared zero and two directions: that is what diverging bars are. The animation tells the sequence as a story, year by year. The map adds what the bars do not say, which is where each wave comes from, and the line below gives the context the animation makes you forget.
Watch out for
Animation is good for telling and bad for comparing: it is hard to remember how everything stood ten years earlier, and when all the bars change place at once, the movement of one gets lost among the others. That is why there is the line of the total and the ranking below, and why you can pin a country from the map. And net change is not arrivals: it is arrivals minus departures and deaths. On the map, the spike rises from the centre of the country. It does not draw any route.
Chart type
Bump chart
Also called a ranking chart.
How to read it
Each column is a year with every country ordered by its net change, from largest to smallest. A thread joins each country from one year to the next. The stepped gap separates those growing from those shrinking, and below each year both are counted.
Why this chart
It complements the race: the race shows how much in one year, the ranking shows the order in all years at once. It reads like a table and the threads tell stories, like Romania's, which leads from 2005 to 2012 and then drops to the bottom.
Watch out for
The distance between rows is not proportional to anything: being first by one person or by a hundred thousand looks the same. A bump chart shows order and discards magnitude on purpose. For magnitude, see the race.
See the figures by country and year
All the figures on the page, on 1 January of each year. Each continent has its subtotal, with its countries and its “rest”. In 1991 the Census only distinguishes continents, and there are no data between 1992 and 1997.
Sources: INE. 1991 Population Census (pith, by continent only). Continuous Municipal Register Statistics, 1998–2022. Annual Population Census, 2023–2025, with the change of source marked on the ridges. Data on 1 January. “With Spanish nationality” includes naturalised people and children of Spaniards born abroad, and in 1991, dual nationality. Countries with fewer than 150,000 people in every year are grouped by continent. In the trunk, the outer rings are also longer, so recent years weigh visually somewhat more than their people.