Rural population (% of total population)

Source: worldbank.org, 01.09.2025

Year: 2024

Flag Country Value Value change, % Rank
Aruba Aruba 55.5 -0.395% 54
Afghanistan Afghanistan 72.7 -0.454% 21
Angola Angola 30.7 -1.89% 122
Albania Albania 34.6 -2.2% 110
Andorra Andorra 12.3 +0.221% 175
United Arab Emirates United Arab Emirates 12 -1.87% 176
Argentina Argentina 7.42 -1.54% 192
Armenia Armenia 36.1 -0.524% 106
American Samoa American Samoa 12.7 -0.384% 174
Antigua & Barbuda Antigua & Barbuda 75.7 -0.00793% 15
Australia Australia 13.3 -0.994% 172
Austria Austria 40.2 -0.714% 94
Azerbaijan Azerbaijan 42 -0.99% 85
Burundi Burundi 84.8 -0.441% 3
Belgium Belgium 1.78 -1.93% 203
Benin Benin 49.3 -1.14% 68
Burkina Faso Burkina Faso 66.8 -0.957% 33
Bangladesh Bangladesh 58.8 -1.27% 46
Bulgaria Bulgaria 23 -1.44% 143
Bahrain Bahrain 10 -1.28% 186
Bahamas Bahamas 16.2 -0.849% 166
Bosnia & Herzegovina Bosnia & Herzegovina 49.3 -0.883% 69
Belarus Belarus 18.9 -2.04% 155
Belize Belize 53.2 -0.431% 59
Bermuda Bermuda 0 205
Bolivia Bolivia 28.5 -1.25% 129
Brazil Brazil 12 -1.87% 177
Barbados Barbados 68.5 -0.179% 29
Brunei Brunei 20.6 -1.39% 153
Bhutan Bhutan 55 -1.17% 56
Botswana Botswana 26.5 -2.3% 135
Central African Republic Central African Republic 55.9 -0.915% 53
Canada Canada 18 -0.651% 160
Switzerland Switzerland 25.7 -0.485% 136
Chile Chile 11.9 -0.868% 178
China China 34.5 -2.75% 111
Côte d’Ivoire Côte d’Ivoire 46.4 -1.06% 72
Cameroon Cameroon 40.1 -1.42% 97
Congo - Kinshasa Congo - Kinshasa 51.9 -1.16% 62
Congo - Brazzaville Congo - Brazzaville 30.4 -1.46% 124
Colombia Colombia 17.3 -1.69% 162
Comoros Comoros 69.6 -0.409% 26
Cape Verde Cape Verde 31.6 -1.34% 116
Costa Rica Costa Rica 16.8 -3.14% 164
Cuba Cuba 22.3 -0.596% 144
Curaçao Curaçao 11 -0.0911% 184
Cayman Islands Cayman Islands 0 205
Cyprus Cyprus 32.9 -0.288% 115
Czechia Czechia 25.3 -0.731% 137
Germany Germany 22.1 -0.585% 148
Djibouti Djibouti 21.3 -0.839% 149
Dominica Dominica 27.7 -1.09% 132
Denmark Denmark 11.4 -1.14% 181
Dominican Republic Dominican Republic 15 -3.63% 169
Algeria Algeria 24.3 -1.94% 140
Ecuador Ecuador 35 -0.673% 108
Egypt Egypt 56.7 -0.278% 50
Eritrea Eritrea 56.1 -1.14% 52
Spain Spain 18.2 -1.36% 157
Estonia Estonia 30 -0.692% 126
Ethiopia Ethiopia 76.3 -0.656% 14
Finland Finland 14.1 -0.696% 171
Fiji Fiji 40.8 -1.16% 91
France France 18 -1.47% 161
Faroe Islands Faroe Islands 56.8 -0.384% 49
Micronesia (Federated States of) Micronesia (Federated States of) 76.4 -0.23% 13
Gabon Gabon 8.69 -3.1% 187
United Kingdom United Kingdom 15.1 -1.58% 168
Georgia Georgia 38.8 -1.11% 102
Ghana Ghana 40.1 -1.51% 95
Gibraltar Gibraltar 0 205
Guinea Guinea 61.5 -0.698% 40
Gambia Gambia 34.9 -1.71% 109
Guinea-Bissau Guinea-Bissau 54.1 -0.783% 58
Equatorial Guinea Equatorial Guinea 25.1 -1.67% 138
Greece Greece 19 -1.61% 154
Grenada Grenada 62.7 -0.33% 36
Greenland Greenland 11.9 -1.73% 179
Guatemala Guatemala 46.5 -0.947% 70
Guam Guam 4.76 -1.53% 199
Guyana Guyana 72.7 -0.211% 22
Hong Kong SAR China Hong Kong SAR China 0 205
Honduras Honduras 39.2 -1.52% 101
Croatia Croatia 41.1 -0.893% 90
Haiti Haiti 39.5 -2.02% 100
Hungary Hungary 26.8 -1.16% 134
Indonesia Indonesia 40.8 -1.53% 92
Isle of Man Isle of Man 46.3 -0.486% 73
India India 63.1 -0.79% 35
Ireland Ireland 35.2 -0.827% 107
Iran Iran 22.3 -1.94% 145
Iraq Iraq 28.1 -0.894% 130
Iceland Iceland 5.91 -0.873% 196
Israel Israel 7.05 -1.29% 193
Italy Italy 27.7 -1.14% 131
Jamaica Jamaica 42.2 -0.901% 84
Jordan Jordan 7.79 -2.33% 190
Japan Japan 7.87 -1.14% 188
Kazakhstan Kazakhstan 41.6 -0.497% 87
Kenya Kenya 70 -0.751% 25
Kyrgyzstan Kyrgyzstan 61.8 -0.587% 38
Cambodia Cambodia 74 -0.625% 18
Kiribati Kiribati 41.6 -1.62% 88
St. Kitts & Nevis St. Kitts & Nevis 68.8 -0.181% 28
South Korea South Korea 18.5 -0.226% 156
Kuwait Kuwait 0 205
Laos Laos 61.1 -1.07% 41
Lebanon Lebanon 10.4 -1.62% 185
Liberia Liberia 45.9 -1.1% 74
Libya Libya 18.1 -1.64% 159
St. Lucia St. Lucia 80.7 -0.166% 8
Liechtenstein Liechtenstein 85.3 -0.105% 2
Sri Lanka Sri Lanka 80.6 -0.254% 9
Lesotho Lesotho 69.1 -0.693% 27
Lithuania Lithuania 31.1 -0.773% 120
Luxembourg Luxembourg 7.73 -2.37% 191
Latvia Latvia 31.2 -0.46% 118
Macao SAR China Macao SAR China 0 205
Morocco Morocco 34.4 -1.5% 112
Monaco Monaco 0 205
Moldova Moldova 56.4 -0.399% 51
Madagascar Madagascar 58.8 -1.14% 47
Maldives Maldives 57.6 -0.751% 48
Mexico Mexico 18.1 -1.52% 158
Marshall Islands Marshall Islands 20.8 -1.61% 152
North Macedonia North Macedonia 40.1 -0.96% 96
Mali Mali 53.1 -1.38% 61
Malta Malta 4.99 -1.28% 198
Myanmar (Burma) Myanmar (Burma) 67.5 -0.527% 30
Montenegro Montenegro 31.2 -1.07% 119
Mongolia Mongolia 30.7 -0.563% 121
Northern Mariana Islands Northern Mariana Islands 7.83 -1.2% 189
Mozambique Mozambique 60.7 -0.936% 42
Mauritania Mauritania 41.5 -1.79% 89
Mauritius Mauritius 59.1 -0.13% 45
Malawi Malawi 81.4 -0.389% 7
Malaysia Malaysia 20.8 -2.28% 151
Namibia Namibia 44.2 -2.01% 81
New Caledonia New Caledonia 26.9 -1.42% 133
Niger Niger 82.8 -0.215% 4
Nigeria Nigeria 45 -1.63% 80
Nicaragua Nicaragua 39.8 -0.762% 98
Netherlands Netherlands 6.55 -4.02% 194
Norway Norway 15.7 -2.02% 167
Nepal Nepal 77.6 -0.593% 11
Nauru Nauru 0 205
New Zealand New Zealand 12.9 -0.814% 173
Oman Oman 11 -5.16% 183
Pakistan Pakistan 61.6 -0.525% 39
Panama Panama 30.1 -1.23% 125
Peru Peru 20.9 -1.03% 150
Philippines Philippines 51.4 -0.632% 64
Palau Palau 17.2 -2.45% 163
Papua New Guinea Papua New Guinea 86.1 -0.182% 1
Poland Poland 39.7 -0.282% 99
Puerto Rico Puerto Rico 6.34 -0.471% 195
North Korea North Korea 36.5 -0.815% 105
Portugal Portugal 31.6 -1.61% 117
Paraguay Paraguay 36.5 -0.923% 104
Palestinian Territories Palestinian Territories 22.1 -1.32% 146
French Polynesia French Polynesia 37.6 -0.35% 103
Qatar Qatar 0.613 -5.11% 204
Romania Romania 45.1 -0.459% 79
Russia Russia 24.5 -0.88% 139
Rwanda Rwanda 81.9 -0.23% 6
Saudi Arabia Saudi Arabia 14.8 -1.47% 170
Sudan Sudan 63.2 -0.644% 34
Senegal Senegal 49.9 -0.994% 65
Singapore Singapore 0 205
Solomon Islands Solomon Islands 73.5 -0.61% 20
Sierra Leone Sierra Leone 55.2 -0.86% 55
El Salvador El Salvador 24 -2.45% 141
San Marino San Marino 2.07 -4.44% 202
Somalia Somalia 51.5 -1.15% 63
Serbia Serbia 42.6 -0.602% 83
South Sudan South Sudan 78.4 -0.463% 10
São Tomé & Príncipe São Tomé & Príncipe 23 -2.6% 142
Suriname Suriname 33.5 -0.363% 113
Slovakia Slovakia 45.8 -0.315% 75
Slovenia Slovenia 43.6 -0.797% 82
Sweden Sweden 11 -2.11% 182
Eswatini Eswatini 75 -0.297% 17
Sint Maarten Sint Maarten 0 205
Seychelles Seychelles 40.8 -1.02% 93
Syria Syria 42 -1.49% 86
Turks & Caicos Islands Turks & Caicos Islands 5.57 -3.23% 197
Chad Chad 75.3 -0.43% 16
Togo Togo 54.9 -1.03% 57
Thailand Thailand 45.7 -1.53% 76
Tajikistan Tajikistan 71.5 -0.403% 24
Turkmenistan Turkmenistan 45.5 -1.13% 77
Timor-Leste Timor-Leste 67.2 -0.571% 32
Tonga Tonga 76.8 -0.0651% 12
Trinidad & Tobago Trinidad & Tobago 46.4 -0.264% 71
Tunisia Tunisia 29.1 -1.14% 128
Turkey Turkey 22.1 -1.91% 147
Tuvalu Tuvalu 33.1 -2.04% 114
Tanzania Tanzania 61.9 -1.16% 37
Uganda Uganda 72.6 -0.844% 23
Ukraine Ukraine 29.7 -0.632% 127
Uruguay Uruguay 4.15 -1.92% 200
United States United States 16.5 -1.3% 165
Uzbekistan Uzbekistan 49.4 -0.19% 67
St. Vincent & Grenadines St. Vincent & Grenadines 45.3 -0.932% 78
Venezuela Venezuela 11.5 -0.579% 180
British Virgin Islands British Virgin Islands 49.8 -0.842% 66
U.S. Virgin Islands U.S. Virgin Islands 3.69 -2.31% 201
Vietnam Vietnam 59.8 -1.18% 43
Vanuatu Vanuatu 73.9 -0.231% 19
Samoa Samoa 82.6 +0.107% 5
Yemen Yemen 59.5 -1.07% 44
South Africa South Africa 30.7 -1.54% 123
Zambia Zambia 53.1 -1.08% 60
Zimbabwe Zimbabwe 67.3 -0.227% 31

The rural population percentage of total population is a significant demographic indicator that reveals both the distribution and dynamics of people living in rural areas as opposed to urban settings. As of 2023, the world median stands at 35.53%, which underscores a global trend towards urbanization, highlighting that more than one-third of the world’s population resides in rural zones. Understanding this indicator requires a multifaceted exploration of its implications, importance, relationships with other factors, contributing elements, strategic solutions, and potential flaws.

Rural population percentage is crucial not just for demographers but for policymakers, developmental organizations, and economists as well. This statistic aids in comprehending the social and economic fabric of regions. A higher rural population percentage often reflects agricultural economies, traditional lifestyles, and possibly lower access to modern services such as healthcare and education. Conversely, areas with very low percentages, like Bermuda and the Cayman Islands (both at 0.0%), indicate developed economies with urban-centric infrastructures that often prioritize financial and technological industries over agriculture or rural development.

The connection between rural population percentage and other indicators is deeply intertwined. For instance, regions with a high rural population typically show different rates of literacy, healthcare access, and income levels compared to urban areas. Thus, a higher rural population may correlate with lower overall economic performance, given the focus on agriculture rather than industrial or service-oriented economic drivers. Furthermore, as rural percentages decrease, we can observe shifts in employment patterns, migration trends, and resource allocation, which are crucial for planning sustainable regional development.

Several factors influence the rural population percentage, including economic opportunities, educational facilities, healthcare access, and government policies. Economic opportunities in urban areas generally attract individuals from rural regions seeking better livelihoods. Young people often migrate to cities for education or employment, which can further exacerbate rural depopulation. In many cases, government policies failing to invest in rural infrastructure or promote agrarian development contribute to this decline, leading to a vicious cycle of abandonment in rural areas.

To combat issues related to high rural populations, many countries have implemented strategies that aim to enhance the living conditions in these regions. Initiatives to improve rural education and healthcare, incentivizing agribusiness, and integrating digital technologies into farming practices are vital solutions. Countries with substantial rural populations like Papua New Guinea (86.28%) and Burundi (85.22%) can find multiple intersections in policy that enhance both agricultural productivity and quality of life. Decentralization policies, promoting local governance, can also empower rural areas to create tailored solutions that address their unique challenges and maintain a balanced demographic landscape.

While policies are essential, they often come with flaws. Historically, rural development initiatives can sometimes neglect the unique cultural and social aspects of rural communities, resulting in solutions that do not meet the needs of their residents. In addition, a one-size-fits-all approach may undermine local traditions or practices that have stood for generations, focusing instead on homogenized development that privileges economic interests over cultural preservation.

Analyzing the historical trends reveals that the world rural population has been steadily declining since 1960, when it represented 66.35% of the total population. This pattern reflects not just globalization but also the impact of industrialization and technological advancement, increasingly pushing people toward urban environments. In stark contrast to rural heavyweights, the world has seen many regions, particularly in developed nations, experience much lower rural population percentages, driving substantial urban-centered development.

The top areas reflecting the remarkable rural populations—such as Papua New Guinea, Liechtenstein, and Burundi—bear witness to differing governance structures, resource management, and socio-economic conditions affecting rural livelihoods. Meanwhile, the lowest entries—like Bermuda and Hong Kong—exemplify urban densification driven by economic focus, leading to challenges related to sustainability and quality of life.

In conclusion, understanding the rural population percentage is vital for recognizing how communities evolve, interact, and develop. By exploring the connectivity to other social and economic indicators while noting the underpinnings that affect them, stakeholders can better navigate the intricacies involved in shaping sustainable policies that retain rural cultural identities while fostering necessary growth. The relationship between rural population dynamics and overall socio-economic development underscores a profound narrative of modern civilization that requires continuous analysis and a thoughtful approach.

                    
# Install missing packages
import sys
import subprocess

def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])

# Required packages
for package in ['wbdata', 'country_converter']:
try:
__import__(package)
except ImportError:
install(package)

# Import libraries
import wbdata
import country_converter as coco
from datetime import datetime

# Define World Bank indicator code
dataset_code = 'SP.RUR.TOTL.ZS'

# Download data from World Bank API
data = wbdata.get_dataframe({dataset_code: 'value'},
date=(datetime(1960, 1, 1), datetime.today()),
parse_dates=True,
keep_levels=True).reset_index()

# Extract year
data['year'] = data['date'].dt.year

# Convert country names to ISO codes using country_converter
cc = coco.CountryConverter()
data['iso2c'] = cc.convert(names=data['country'], to='ISO2', not_found=None)
data['iso3c'] = cc.convert(names=data['country'], to='ISO3', not_found=None)

# Filter out rows where ISO codes could not be matched — likely not real countries
data = data[data['iso2c'].notna() & data['iso3c'].notna()]

# Sort for calculation
data = data.sort_values(['iso3c', 'year'])

# Calculate YoY absolute and percent change
data['value_change'] = data.groupby('iso3c')['value'].diff()
data['value_change_percent'] = data.groupby('iso3c')['value'].pct_change() * 100

# Calculate ranks (higher GDP per capita = better rank)
data['rank'] = data.groupby('year')['value'].rank(ascending=False, method='dense')

# Calculate rank change from previous year
data['rank_change'] = data.groupby('iso3c')['rank'].diff()

# Select desired columns
final_df = data[['country', 'iso2c', 'iso3c', 'year', 'value',
'value_change', 'value_change_percent', 'rank', 'rank_change']].copy()

# Optional: Add labels as metadata (could be useful for export or UI)
column_labels = {
'country': 'Country name',
'iso2c': 'ISO 2-letter country code',
'iso3c': 'ISO 3-letter country code',
'year': 'Year',
'value': 'GDP per capita (current US$)',
'value_change': 'Year-over-Year change in value',
'value_change_percent': 'Year-over-Year percent change in value',
'rank': 'Country rank by GDP per capita (higher = richer)',
'rank_change': 'Change in rank from previous year'
}

# Display first few rows
print(final_df.head(10))

# Optional: Save to CSV
#final_df.to_csv("gdp_per_capita_cleaned.csv", index=False)
                    
                
                    
# Check and install required packages
required_packages <- c("WDI", "countrycode", "dplyr")

for (pkg in required_packages) {
  if (!requireNamespace(pkg, quietly = TRUE)) {
    install.packages(pkg)
  }
}

# Load the necessary libraries
library(WDI)
library(dplyr)
library(countrycode)

# Define the dataset code (World Bank indicator code)
dataset_code <- 'SP.RUR.TOTL.ZS'

# Download data using WDI package
dat <- WDI(indicator = dataset_code)

# Filter only countries using 'is_country' from countrycode
# This uses iso2c to identify whether the entry is a recognized country
dat <- dat %>%
  filter(countrycode(iso2c, origin = 'iso2c', destination = 'country.name', warn = FALSE) %in%
           countrycode::codelist$country.name.en)

# Ensure dataset is ordered by country and year
dat <- dat %>%
  arrange(iso3c, year)

# Rename the dataset_code column to "value" for easier manipulation
dat <- dat %>%
  rename(value = !!dataset_code)

# Calculate year-over-year (YoY) change and percentage change
dat <- dat %>%
  group_by(iso3c) %>%
  mutate(
    value_change = value - lag(value),                              # Absolute change from previous year
    value_change_percent = 100 * (value - lag(value)) / lag(value) # Percent change from previous year
  ) %>%
  ungroup()

# Calculate rank by year (higher value => higher rank)
dat <- dat %>%
  group_by(year) %>%
  mutate(rank = dense_rank(desc(value))) %>% # Rank countries by descending value
  ungroup()

# Calculate rank change (positive = moved up, negative = moved down)
dat <- dat %>%
  group_by(iso3c) %>%
  mutate(rank_change = rank - lag(rank)) %>% # Change in rank compared to previous year
  ungroup()

# Select and reorder final columns
final_data <- dat %>%
  select(
    country,
    iso2c,
    iso3c,
    year,
    value,
    value_change,
    value_change_percent,
    rank,
    rank_change
  )

# Add labels (variable descriptions)
attr(final_data$country, "label") <- "Country name"
attr(final_data$iso2c, "label") <- "ISO 2-letter country code"
attr(final_data$iso3c, "label") <- "ISO 3-letter country code"
attr(final_data$year, "label") <- "Year"
attr(final_data$value, "label") <- "GDP per capita (current US$)"
attr(final_data$value_change, "label") <- "Year-over-Year change in value"
attr(final_data$value_change_percent, "label") <- "Year-over-Year percent change in value"
attr(final_data$rank, "label") <- "Country rank by GDP per capita (higher = richer)"
attr(final_data$rank_change, "label") <- "Change in rank from previous year"

# Print the first few rows of the final dataset
print(head(final_data, 10))