Population of Spain

Population - April 2025 47,433,361 #33 worldwide Bandera of Spain
Annual Growth -57,032 #227 worldwide
Median Age 45.8 years #14 worldwide
Life Expectancy 84.3 years #11 worldwide
Density 94.4 p/km² #125 worldwide

As of April 2025, the population of Spain is 47.4 million. The number of inhabitants has decreased by 57 thousand in the last year, representing a decline of 0.11%. The median age of the population has increased in recent years, rising from 41.5 years in 2015 to 45.8 years in 2025. Currently, life expectancy at birth is 84.3 years and population density is 94.4 inhabitants per square kilometer.

Population Growth

The population growth rate of Spain peaked in 2007, reaching around 1.95% annually, but has since declined to approximately -0.12% in 2025. The annual increase in the number of people has also decreased from a peak of around 880.16 thousand in 2007 to nearly -57.03 thousand in 2025.

Life Expectancy

In Spain, life expectancy at birth has been increasing, with the indicator rising from 80.3 years in 2005 to 84.3 years in 2025, representing an increase de 4 years over the past 2 decades.

Most populous cities in Spain

Spain has several cities considered medium-sized by their number of inhabitants, but there are also some large ones. The most populous city is Madrid, con una diferencia significativa sobre las demás, alcanzando approximately 3.3 million inhabitants. It is followed by Barcelona, Catalonia with 1.6 million and Valencia with 792.5 thousand.

These are the 20 most populous cities in Spain:

# City Population
1 Madrid 3,255,944
2 Barcelona, Catalonia 1,620,343
3 Valencia 792,492
4 Sevilla, Andalusia 684,234
5 Zaragoza, Aragon 675,301
6 Málaga, Andalusia 578,460
7 Murcia 460,349
8 Palma, Balearic Islands 409,661
9 Las Palmas de Gran Canaria, Canary Islands 378,517
10 Bilbao, Basque Country 345,821
# City Population
11 Alicante, Valencia 334,757
12 Córdoba, Andalusia 325,708
13 Valladolid, Castille and León 299,265
14 Vigo, Galicia 297,332
15 Gijón, Asturias 277,554
16 Eixample, Catalonia 266,477
17 L'Hospitalet de Llobregat, Catalonia 257,038
18 Latina, Madrid 256,644
19 Carabanchel, Madrid 253,678
20 Gasteiz / Vitoria, Basque Country 249,176