Unemployment, total (% of total labor force)

Source: worldbank.org, 07.12.2025

Year: 2023

Flag Country Value Value change, % Rank
Albania Albania 10.7 -1.08% 10
United Arab Emirates United Arab Emirates 2.15 -25.1% 88
Argentina Argentina 6.14 -9.79% 33
Australia Australia 3.67 -1.61% 60
Austria Austria 5.26 +5.45% 47
Belgium Belgium 5.53 -0.754% 43
Burkina Faso Burkina Faso 5.35 +178% 45
Bulgaria Bulgaria 4.32 +1.19% 52
Bahamas Bahamas 8.64 -7.42% 16
Bosnia & Herzegovina Bosnia & Herzegovina 10.7 -15.7% 11
Belarus Belarus 3.46 -3.16% 67
Bolivia Bolivia 3.02 -14.9% 77
Brazil Brazil 7.95 -13.9% 20
Brunei Brunei 5.3 +2.02% 46
Bhutan Bhutan 3.13 -47.4% 72
Botswana Botswana 23.4 -0.991% 2
Canada Canada 5.42 +2.56% 44
Switzerland Switzerland 4.04 -1.92% 56
Chile Chile 9.01 +9.26% 15
Colombia Colombia 9.6 -8.95% 12
Costa Rica Costa Rica 8.33 -26.5% 18
Cyprus Cyprus 5.84 -14.3% 38
Czechia Czechia 2.58 +16% 86
Germany Germany 3.07 -1.67% 76
Denmark Denmark 5.09 +14.9% 50
Dominican Republic Dominican Republic 5.56 +0.927% 42
Ecuador Ecuador 3.51 -5.47% 66
Egypt Egypt 6.75 -8.05% 26
Spain Spain 12.2 -5.71% 7
Estonia Estonia 6.38 +14.5% 31
Finland Finland 7.15 +6.43% 24
France France 7.34 +0.438% 23
United Kingdom United Kingdom 4.03 +6.82% 57
Gambia Gambia 6.48 +57% 29
Greece Greece 11 -11.3% 9
Grenada Grenada 6.34 -51.4% 32
Guatemala Guatemala 2.34 -23.2% 87
Hong Kong SAR China Hong Kong SAR China 2.95 -31.7% 80
Honduras Honduras 6.07 -30.8% 35
Croatia Croatia 6.09 -12.6% 34
Hungary Hungary 4.11 +13.8% 55
Indonesia Indonesia 3.31 -4.45% 71
India India 4.17 -13.5% 54
Ireland Ireland 4.29 -4.73% 53
Iceland Iceland 3.52 -7.15% 65
Israel Israel 3.37 -8.77% 69
Italy Italy 7.63 -5.48% 21
Jamaica Jamaica 3.02 -26% 78
Jordan Jordan 16.6 -8.67% 3
Japan Japan 2.6 -0.574% 85
South Korea South Korea 2.68 -6.37% 84
St. Lucia St. Lucia 12.1 -24.1% 8
Lithuania Lithuania 6.84 +14.9% 25
Luxembourg Luxembourg 5.18 +13% 48
Latvia Latvia 6.47 -5.14% 30
Moldova Moldova 1.57 +72.7% 90
Mexico Mexico 2.77 -15.1% 82
North Macedonia North Macedonia 13.2 -9% 5
Malta Malta 3.11 +6.18% 73
Mongolia Mongolia 5.18 -13% 49
Mauritius Mauritius 5.57 -11.9% 41
Nigeria Nigeria 3.07 -19.7% 75
Netherlands Netherlands 3.54 +0.312% 64
Norway Norway 3.57 +10.6% 63
New Zealand New Zealand 3.73 +13.2% 59
Panama Panama 6.68 -19.4% 27
Peru Peru 4.9 +14.2% 51
Poland Poland 2.74 -2.42% 83
Portugal Portugal 6.51 +8.28% 28
Paraguay Paraguay 5.79 -14.2% 39
Romania Romania 5.59 -0.392% 40
Russia Russia 3.08 -20.5% 74
Rwanda Rwanda 12.4 -18.1% 6
Saudi Arabia Saudi Arabia 4.01 -28.3% 58
Singapore Singapore 3.44 -4.09% 68
El Salvador El Salvador 2.99 -0.233% 79
Serbia Serbia 8.27 -2.03% 19
Slovakia Slovakia 5.84 -4.88% 37
Slovenia Slovenia 3.65 -8.95% 61
Sweden Sweden 7.61 +2.96% 22
Seychelles Seychelles 2.93 -31.9% 81
Thailand Thailand 0.733 -22% 91
Trinidad & Tobago Trinidad & Tobago 3.36 -23.3% 70
Tunisia Tunisia 15.1 -1.27% 4
Turkey Turkey 9.39 -10.3% 13
Uruguay Uruguay 8.36 +6.07% 17
United States United States 3.64 -0.329% 62
Vietnam Vietnam 1.65 +8.01% 89
South Africa South Africa 32.1 -3.52% 1
Zambia Zambia 5.86 -2.2% 36
Zimbabwe Zimbabwe 9.35 -7.33% 14

The unemployment rate, defined as the percentage of the total labor force that is unemployed but actively seeking employment, serves as a crucial economic indicator. This measure not only reflects the economic health of a nation but also represents the social stability and quality of life of its citizens. Understanding unemployment rates can provide insights into trends related to economic growth, inflation, and consumer spending habits.

In 2023, the global unemployment rate stands at a median value of 5.3%. This number suggests that while the world economy has made strides toward recovery post-pandemic, challenges still linger. The unemployment figures vary significantly across different countries and regions, indicating the disparate impacts of economic policies and external factors, such as global economic conditions and technological advancements.

The countries with the highest unemployment rates depict stark contrasts in their economic situations. South Africa leads at 32.1%, a reflection of longstanding systemic issues, including socio-economic inequalities, a shortage of jobs in critical sectors, and the impact of historical policies such as apartheid. Following South Africa, Botswana at 23.38%, Jordan at 16.62%, Tunisia at 15.11%, and North Macedonia at 13.17% illustrate similar challenges, with each experiencing high unemployment due to various internal and external pressures, including political instability, inadequate job creation, and in some cases, a reliance on sectors like mining and agriculture that are susceptible to global price fluctuations.

Conversely, nations such as Thailand, Moldova, and Vietnam showcase remarkably low unemployment rates—ranging from 0.73% for Thailand to 2.34% for Guatemala. Such figures indicate either robust job markets, effective labor policies, or, in some cases, the potential underreporting of unemployment or labor participation rates. For instance, Thailand’s economy benefits from tourism and agriculture, while Vietnam has harnessed its manufacturing capabilities effectively. These nations exemplify how targeted economic policies and strategic investments can result in lower unemployment levels.

The historical trends of unemployment rates globally show fluctuations influenced by various factors. For example, data from the 1990s and early 2000s reveal a steady rise in unemployment, peaking during the global financial crisis of 2008-2009, where rates reached about 6.34%. Consequently, measures taken post-crisis, including fiscal stimulus and support programs, led to some recovery in employment rates. However, the COVID-19 pandemic saw another spike in unemployment to 6.71% in 2020, until gradually falling again as economies reopened.

The relationships between unemployment and other economic indicators are significant. For instance, a rise in unemployment typically correlates with a decline in consumer confidence and spending, ultimately impacting economic growth. Additionally, unemployment rates can influence inflation trends; high unemployment generally leads to lower inflation as demand for goods and services decreases. Other factors affecting unemployment rates include market structures, labor laws, and demographic variables such as age and education levels. In economies with rigid labor laws, transition into new employment opportunities can be hindered, inducing higher unemployment rates.

To address high unemployment, governments and policymakers can adopt several strategies. Programs aimed at job creation in emerging industries, investments in education and training for the workforce, and incentives for businesses to hire can significantly help. Additionally, fostering an environment conducive to entrepreneurship can also stimulate job growth. For example, providing microfinance opportunities and training programs can empower small businesses, driving local job creation in communities.

Despite the best efforts, certain flaws may challenge the effectiveness of unemployment strategies. For one, the shadow economy, which includes unregistered activities, can distort official unemployment statistics. Individuals engaged in informal work might not be counted in unemployment rates, skewing the perception of a nation’s job market. Furthermore, the mismatch between available jobs and workers’ skillsets can create long-term unemployment, a challenge that requires ongoing adjustments in education systems and workforce training programs.

In conclusion, the unemployment rate stands as a pivotal indicator reflecting the economic health and social wellbeing of nations. The disparities witnessed in unemployment rates across regions underline the complexities involved in addressing this issue. Policymakers must remain vigilant and proactive in adapting their approaches to ensure sustainable economic growth and improved employment conditions. The multifaceted nature of unemployment demands integrated strategies that consider not only economic policies but also social and educational frameworks, thereby ensuring that growth translates into meaningful job opportunities for all.

                    
# 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 = 'SL.UEM.TOTL.NE.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 <- 'SL.UEM.TOTL.NE.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))