Mortality rate, infant (per 1,000 live births)

Source: worldbank.org, 01.09.2025

Year: 2023

Flag Country Value Value change, % Rank
Afghanistan Afghanistan 50.4 -3.08% 12
Angola Angola 38.3 -3.28% 30
Albania Albania 8.3 0% 109
Andorra Andorra 2.5 -3.85% 140
United Arab Emirates United Arab Emirates 4 -4.76% 128
Argentina Argentina 8.2 -1.2% 110
Armenia Armenia 8.9 -4.3% 107
Antigua & Barbuda Antigua & Barbuda 7.3 -2.67% 114
Australia Australia 3.1 -3.13% 134
Austria Austria 2.6 -3.7% 139
Azerbaijan Azerbaijan 13.3 -5.67% 87
Burundi Burundi 31.5 -2.78% 40
Belgium Belgium 3 -3.23% 135
Benin Benin 46.4 -2.73% 16
Burkina Faso Burkina Faso 44.8 -2.82% 18
Bangladesh Bangladesh 24.4 0% 54
Bulgaria Bulgaria 5 -1.96% 123
Bahrain Bahrain 7.2 +2.86% 115
Bahamas Bahamas 11.4 -1.72% 94
Bosnia & Herzegovina Bosnia & Herzegovina 5.3 -3.64% 121
Belarus Belarus 1.9 -5% 144
Belize Belize 10.8 -0.917% 98
Bolivia Bolivia 20 -3.38% 63
Brazil Brazil 12.5 -0.794% 91
Barbados Barbados 9.3 -3.12% 104
Brunei Brunei 8.2 -1.2% 110
Bhutan Bhutan 18.5 -3.14% 67
Botswana Botswana 38.2 -2.55% 31
Central African Republic Central African Republic 60.4 -68.1% 5
Canada Canada 4.4 -2.22% 127
Switzerland Switzerland 3.5 0% 131
Chile Chile 6.2 +5.08% 118
China China 4.5 -6.25% 126
Côte d’Ivoire Côte d’Ivoire 46.6 -2.71% 15
Cameroon Cameroon 41.2 -3.06% 24
Congo - Kinshasa Congo - Kinshasa 44.5 -2.84% 19
Congo - Brazzaville Congo - Brazzaville 27.6 -3.16% 50
Colombia Colombia 10.9 -3.54% 97
Comoros Comoros 35.7 -2.99% 33
Cape Verde Cape Verde 11 -4.35% 96
Costa Rica Costa Rica 9.2 +4.55% 105
Cuba Cuba 6.6 +4.76% 117
Cyprus Cyprus 2.9 +3.57% 136
Czechia Czechia 2.1 -4.55% 142
Germany Germany 3.1 0% 134
Djibouti Djibouti 44.4 -3.27% 20
Dominica Dominica 33.1 +1.22% 38
Denmark Denmark 3 -3.23% 135
Dominican Republic Dominican Republic 28.4 -2.41% 48
Algeria Algeria 19.7 -1.5% 64
Ecuador Ecuador 11.1 -0.893% 95
Egypt Egypt 16.1 -3.59% 75
Eritrea Eritrea 25.5 -3.41% 52
Spain Spain 2.6 0% 139
Estonia Estonia 1.6 -5.88% 147
Ethiopia Ethiopia 35.7 -3.51% 33
Finland Finland 1.8 0% 145
Fiji Fiji 23.8 +1.28% 55
France France 3.4 0% 132
Micronesia (Federated States of) Micronesia (Federated States of) 20.8 -3.26% 61
Gabon Gabon 26.5 -2.57% 51
United Kingdom United Kingdom 4 +2.56% 128
Georgia Georgia 8 -1.23% 111
Ghana Ghana 28.2 -3.42% 49
Guinea Guinea 61.5 -2.54% 4
Gambia Gambia 33.8 -3.15% 37
Guinea-Bissau Guinea-Bissau 43.1 -2.71% 23
Equatorial Guinea Equatorial Guinea 49.1 -3.54% 14
Greece Greece 3.2 -3.03% 133
Grenada Grenada 16.7 -1.18% 73
Guatemala Guatemala 17.9 -2.72% 69
Guyana Guyana 23.8 -3.25% 55
Honduras Honduras 13.3 -2.92% 87
Croatia Croatia 3.9 0% 129
Haiti Haiti 40.3 -2.89% 26
Hungary Hungary 3.2 0% 133
Indonesia Indonesia 17 -2.86% 72
India India 24.5 -4.3% 53
Ireland Ireland 3.4 +3.03% 132
Iran Iran 10.7 -2.73% 99
Iraq Iraq 20.8 -3.26% 61
Iceland Iceland 1.9 -5% 144
Israel Israel 2.7 0% 138
Italy Italy 2.3 -4.17% 141
Jamaica Jamaica 18.3 0% 68
Jordan Jordan 12.2 -3.17% 92
Japan Japan 1.8 0% 145
Kazakhstan Kazakhstan 7.6 -1.3% 113
Kenya Kenya 34.7 -3.07% 35
Kyrgyzstan Kyrgyzstan 14.9 -1.32% 81
Cambodia Cambodia 20.3 -3.79% 62
Kiribati Kiribati 39.7 -2.22% 27
St. Kitts & Nevis St. Kitts & Nevis 14.3 -2.72% 83
South Korea South Korea 2.3 -4.17% 141
Kuwait Kuwait 7.6 0% 113
Laos Laos 35.2 -3.3% 34
Lebanon Lebanon 16 +5.96% 76
Liberia Liberia 52.6 -2.41% 11
Libya Libya 15.9 +89.3% 77
St. Lucia St. Lucia 14.3 -0.694% 83
Sri Lanka Sri Lanka 5.3 -3.64% 121
Lesotho Lesotho 55.4 -3.82% 10
Lithuania Lithuania 2.8 -3.45% 137
Luxembourg Luxembourg 2 0% 143
Latvia Latvia 2.5 -7.41% 140
Morocco Morocco 15.5 -3.13% 78
Monaco Monaco 2.3 0% 141
Moldova Moldova 13.5 -0.735% 86
Madagascar Madagascar 44.2 -1.12% 21
Maldives Maldives 5 -5.66% 123
Mexico Mexico 10.8 -2.7% 98
Marshall Islands Marshall Islands 23.5 -3.29% 56
North Macedonia North Macedonia 2.8 -22.2% 137
Mali Mali 57.6 -2.37% 8
Malta Malta 4.8 -4% 125
Myanmar (Burma) Myanmar (Burma) 34.1 -3.13% 36
Montenegro Montenegro 2.1 -4.55% 142
Mongolia Mongolia 11.4 -1.72% 94
Mozambique Mozambique 45.4 -2.37% 17
Mauritania Mauritania 31 -3.13% 42
Mauritius Mauritius 13.5 -2.17% 86
Malawi Malawi 29.4 -3.61% 47
Malaysia Malaysia 6.8 +1.49% 116
Namibia Namibia 38.4 -3.27% 29
Niger Niger 67.4 -1.32% 3
Nigeria Nigeria 60.1 -2.44% 6
Nicaragua Nicaragua 10.3 -3.74% 101
Netherlands Netherlands 3.5 0% 131
Norway Norway 1.9 0% 144
Nepal Nepal 23.3 -3.72% 57
Nauru Nauru 8.3 -5.68% 109
New Zealand New Zealand 4 -2.44% 128
Oman Oman 8.4 -1.18% 108
Pakistan Pakistan 50.1 -3.28% 13
Panama Panama 10.6 -4.5% 100
Peru Peru 13.5 -2.17% 86
Philippines Philippines 22.1 -1.34% 59
Palau Palau 19.1 -2.05% 65
Papua New Guinea Papua New Guinea 32 -3.03% 39
Poland Poland 3.7 0% 130
North Korea North Korea 14.5 +1.4% 82
Portugal Portugal 2.6 0% 139
Paraguay Paraguay 15.1 -3.21% 80
Palestinian Territories Palestinian Territories 14.3 +16.3% 83
Qatar Qatar 4.9 -2% 124
Romania Romania 5.4 0% 120
Russia Russia 3.7 -5.13% 130
Rwanda Rwanda 30.5 -0.974% 44
Saudi Arabia Saudi Arabia 4.9 -3.92% 124
Sudan Sudan 39.2 -2.73% 28
Senegal Senegal 30.2 -3.82% 45
Singapore Singapore 1.7 -5.56% 146
Solomon Islands Solomon Islands 16.5 -2.94% 74
Sierra Leone Sierra Leone 56.2 -3.1% 9
El Salvador El Salvador 9.2 -3.16% 105
San Marino San Marino 1.4 0% 148
Somalia Somalia 67.8 -24.6% 2
Serbia Serbia 4.5 0% 126
South Sudan South Sudan 72.6 0% 1
São Tomé & Príncipe São Tomé & Príncipe 9.4 -4.08% 103
Suriname Suriname 15.2 -3.18% 79
Slovakia Slovakia 5.1 +2% 122
Slovenia Slovenia 1.8 -5.26% 145
Sweden Sweden 2 0% 143
Eswatini Eswatini 43.5 -2.47% 22
Seychelles Seychelles 13.1 -1.5% 88
Syria Syria 19 -2.56% 66
Turks & Caicos Islands Turks & Caicos Islands 4 -2.44% 128
Chad Chad 58.7 -2.65% 7
Togo Togo 35.9 -2.71% 32
Thailand Thailand 8 -3.61% 111
Tajikistan Tajikistan 22.9 -0.866% 58
Turkmenistan Turkmenistan 31.2 -2.5% 41
Timor-Leste Timor-Leste 35.9 -2.71% 32
Tonga Tonga 8 -2.44% 111
Trinidad & Tobago Trinidad & Tobago 17.2 -2.27% 70
Tunisia Tunisia 10.6 -7.83% 100
Turkey Turkey 9.1 +13.8% 106
Tuvalu Tuvalu 17.1 -3.39% 71
Tanzania Tanzania 29.9 -4.17% 46
Uganda Uganda 27.6 -3.83% 50
Ukraine Ukraine 7.8 -2.5% 112
Uruguay Uruguay 5.5 -1.79% 119
United States United States 5.5 0% 119
Uzbekistan Uzbekistan 12.7 -3.05% 90
St. Vincent & Grenadines St. Vincent & Grenadines 9.9 -3.88% 102
Venezuela Venezuela 21.5 0% 60
British Virgin Islands British Virgin Islands 11.6 -3.33% 93
Vietnam Vietnam 14 -2.1% 85
Vanuatu Vanuatu 14.2 -1.39% 84
Samoa Samoa 12.8 -2.29% 89
Kosovo Kosovo 8.3 -4.6% 109
Yemen Yemen 34.7 -2.8% 35
South Africa South Africa 24.4 -0.408% 54
Zambia Zambia 30.9 -4.04% 43
Zimbabwe Zimbabwe 40.6 -3.79% 25

The infant mortality rate (IMR), indicated as the number of infant deaths per 1,000 live births, serves as a crucial marker of a nation's health and well-being. As a primary indicator of child health, it reflects the overall socioeconomic conditions, healthcare systems, and level of development within a country. The IMR provides insight not only into the immediate health of infants but also into the broader context of maternal health, nutrition, and access to medical care.

According to the latest data from 2022, the median global infant mortality rate stands at 12.8 per 1,000 live births. While this figure indicates progress from previous decades, it is crucial to recognize that the rates vary dramatically across different regions, illuminating stark disparities in health outcomes. For instance, countries such as Sierra Leone, Central African Republic, and Nigeria report rates exceeding 60 deaths per 1,000 live births, signifying a critical public health challenge. Sierra Leone holds the highest rate at 76.0, a tragedy reflecting the nation's ongoing struggles with poverty, inadequate healthcare infrastructure, and persistent socioeconomic challenges.

In contrast, nations like San Marino, Estonia, and Japan showcase exemplary health standards with rates below 2 per 1,000 live births. San Marino, with an impressive rate of 1.3, highlights the impact of robust healthcare systems, effective public health policies, and socio-economic stability in ensuring healthier outcomes for infants. The disparities between these top and bottom regions underscore the complexities surrounding infant mortality and the varied factors contributing to it.

The importance of monitoring infant mortality rates cannot be overstated, as they offer vital insights into a country’s healthcare practices, maternal health, and economic conditions. Countries with high infant mortality rates often also face challenges such as limited maternal healthcare access, high rates of poverty, inadequate nutrition, and insufficient immunization coverage. This correlation reinforces the importance of addressing maternal health to improve infant survival rates.

Several key factors influence the infant mortality rate, most notably maternal health, education, income level, and access to healthcare services. Mothers who lack access to education or healthcare are more likely to give birth to infants with health complications, contributing to higher mortality rates. Socioeconomic factors play a significant role as well; families in poverty-stricken regions may face malnutrition, limited medical access, and unsafe living conditions, all of which adversely affect infant health.

Besides these socio-economic determinants, environmental factors are also crucial. Clean water and sanitation are fundamental for reducing infections and diseases that could lead to infant mortality. In many high-rate regions, inadequate sanitation, polluted water sources, and poor healthcare infrastructure exacerbate the IMR challenges. Strategies to improve these conditions could include enhancing healthcare accessibility, providing education on maternal health, and ensuring clean water supply.

Successful strategies to reduce infant mortality rates often incorporate a multifaceted approach that includes health interventions, educational programs, and international support. For instance, implementing widespread vaccination programs can dramatically decrease the incidence of diseases that contribute to infant mortality. Similarly, investing in maternal health care, including prenatal and postnatal care, can ensure that mothers and infants receive adequate health support during critical times.

International organizations such as the World Health Organization (WHO) and UNICEF play an essential role in tracking and developing strategies to combat high infant mortality rates. Their efforts in establishing health policies and providing resources to underprivileged countries have led to remarkable improvements in child health in several areas. Moreover, collaborations between governments, NGOs, and local communities are crucial for creating sustainable health systems capable of reducing the IMR.

Despite these promising strategies, several flaws must be acknowledged in the efforts to combat high infant mortality rates. One significant issue is the lack of consistent data and tracking mechanisms in lower-income countries, which complicates the understanding of true infant mortality statistics. Additionally, political instability and conflicts can disrupt healthcare services, further aggravating the situation. Ensuring that health policies are inclusive and equitable remains a significant hurdle in effectively addressing the underlying challenges that contribute to high infant mortality.

From a global perspective, the world has made significant strides in reducing the infant mortality rate, with a noticeable drop from 63.7 deaths per 1,000 live births in 1990 to 27.9 in 2022. However, the journey is far from over, as evidenced by the current disparities. Continued efforts are critical for countries with the highest rates, as addressing these challenges will require sustained commitment to improving healthcare infrastructure, women's access to education and health services, and strong community engagement to create a healthier future for children worldwide.

                    
# 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.DYN.IMRT.IN'

# 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.DYN.IMRT.IN'

# 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))