International tourism, expenditures for travel items (current US$)

Source: worldbank.org, 03.09.2025

Year: 2020

Flag Country Value Value change, % Rank
Aruba Aruba 306,000,000 -21.3% 85
Afghanistan Afghanistan 30,000,000 -76.7% 130
Angola Angola 615,000,000 +31.1% 66
Albania Albania 763,000,000 -56.9% 64
Argentina Argentina 2,346,000,000 -70.1% 40
Armenia Armenia 307,000,000 -79.4% 84
Antigua & Barbuda Antigua & Barbuda 27,000,000 -70.7% 131
Australia Australia 6,488,000,000 -82% 19
Austria Austria 4,903,000,000 -57.7% 27
Azerbaijan Azerbaijan 412,000,000 -75.8% 77
Belgium Belgium 13,035,000,000 -30.4% 7
Bangladesh Bangladesh 394,000,000 -57.2% 79
Bulgaria Bulgaria 1,048,000,000 -42.6% 52
Bahamas Bahamas 110,000,000 -67.2% 107
Bosnia & Herzegovina Bosnia & Herzegovina 112,000,000 -60.7% 106
Belarus Belarus 445,000,000 -60.4% 75
Belize Belize 20,549,999 -52.6% 133
Bermuda Bermuda 191,000,000 -27.7% 97
Bolivia Bolivia 274,000,000 -70.8% 89
Brazil Brazil 5,394,000,000 -69.3% 25
Brunei Brunei 97,000,000 -84.2% 111
Bhutan Bhutan 50,000,000 -25.4% 124
Botswana Botswana 89,000,000 -69.4% 115
Canada Canada 12,078,000,000 -66.2% 9
Switzerland Switzerland 9,546,000,000 -49.1% 11
Chile Chile 530,000,000 -78.2% 71
China China 130,504,000,000 -48.7% 1
Côte d’Ivoire Côte d’Ivoire 205,000,000 -56.8% 95
Cameroon Cameroon 553,000,000 -26.2% 69
Congo - Kinshasa Congo - Kinshasa 204,000,000 +113% 96
Colombia Colombia 1,396,000,000 -71.7% 47
Comoros Comoros 31,000,000 0% 128
Cape Verde Cape Verde 52,000,000 -38.8% 123
Costa Rica Costa Rica 300,000,000 -68.4% 87
Curaçao Curaçao 102,000,000 -70.1% 110
Cyprus Cyprus 880,000,000 -44.9% 58
Czechia Czechia 3,430,000,000 -41.8% 34
Germany Germany 38,752,000,000 -58.4% 2
Djibouti Djibouti 14,900,000 -40.4% 136
Dominica Dominica 6,000,000 -72.7% 140
Denmark Denmark 5,636,000,000 -43.8% 21
Dominican Republic Dominican Republic 214,000,000 -65.7% 94
Algeria Algeria 234,000,000 -63.3% 93
Ecuador Ecuador 408,000,000 -66.4% 78
Egypt Egypt 2,509,000,000 -28.7% 38
Spain Spain 8,742,000,000 -68.6% 13
Estonia Estonia 594,000,000 -61.6% 67
Ethiopia Ethiopia 322,000,000 -51.3% 83
Finland Finland 1,646,000,000 -71% 45
Fiji Fiji 75,000,000 -54.5% 118
France France 27,758,000,000 -45% 4
United Kingdom United Kingdom 21,698,000,000 -69.7% 5
Georgia Georgia 180,000,000 -72.6% 98
Ghana Ghana 105,000,000 -68% 108
Guinea Guinea 4,200,000 +44.8% 142
Gambia Gambia 5,000,000 -46.2% 141
Greece Greece 898,000,000 -70.7% 56
Grenada Grenada 5,000,000 -79.2% 141
Guatemala Guatemala 256,000,000 -68.6% 91
Guyana Guyana 47,000,000 0% 125
Hong Kong SAR China Hong Kong SAR China 5,520,000,000 -79.5% 23
Honduras Honduras 163,000,000 -67.3% 100
Croatia Croatia 775,687,195 -56% 63
Hungary Hungary 1,159,000,000 -57.7% 49
Indonesia Indonesia 1,653,000,000 -85.4% 44
India India 12,574,000,000 -45.1% 8
Ireland Ireland 2,334,000,000 -71.4% 41
Iraq Iraq 4,172,000,000 -61.8% 31
Iceland Iceland 519,000,000 -65.6% 72
Israel Israel 1,804,000,000 -77.9% 42
Italy Italy 10,858,000,000 -64.2% 10
Jamaica Jamaica 131,000,000 -53.9% 104
Jordan Jordan 381,000,000 -73.9% 80
Japan Japan 5,448,000,000 -74.4% 24
Kazakhstan Kazakhstan 826,000,000 -70.1% 61
Kyrgyzstan Kyrgyzstan 89,000,000 -77.2% 115
Cambodia Cambodia 169,000,000 -81.4% 99
Kiribati Kiribati 3,200,000 -77.6% 144
St. Kitts & Nevis St. Kitts & Nevis 13,000,000 -69% 137
South Korea South Korea 16,157,000,000 -50.6% 6
Kuwait Kuwait 6,696,000,000 -57.7% 18
Laos Laos 251,000,000 -75.2% 92
Lebanon Lebanon 1,671,000,000 -73.6% 43
St. Lucia St. Lucia 19,000,000 -68.9% 134
Sri Lanka Sri Lanka 449,000,000 -72.6% 74
Lesotho Lesotho 276,000,000 -13.5% 88
Lithuania Lithuania 438,000,000 -68.4% 76
Luxembourg Luxembourg 2,420,000,000 -25.4% 39
Latvia Latvia 301,000,000 -59.8% 86
Macao SAR China Macao SAR China 845,000,000 -56% 60
Morocco Morocco 1,113,000,000 -48.9% 51
Moldova Moldova 276,000,000 -28.5% 88
Madagascar Madagascar 79,000,000 -55.4% 117
Maldives Maldives 92,000,000 -73.6% 113
Mexico Mexico 3,475,000,000 -64.8% 33
North Macedonia North Macedonia 147,000,000 -47.9% 101
Malta Malta 127,000,000 -76% 105
Montenegro Montenegro 30,000,000 -48.3% 130
Mongolia Mongolia 550,000,000 -40.5% 70
Mozambique Mozambique 90,000,000 -5.26% 114
Mauritania Mauritania 18,000,000 -41.9% 135
Mauritius Mauritius 205,000,000 -64.5% 95
Malawi Malawi 83,000,000 -40.3% 116
Malaysia Malaysia 4,820,000,000 -61.1% 28
Namibia Namibia 72,000,000 -32.7% 119
Nigeria Nigeria 5,548,000,000 -58.9% 22
Nicaragua Nicaragua 63,000,000 -65.2% 120
Netherlands Netherlands 7,029,100,098 -65.7% 15
Norway Norway 3,860,000,000 -76.6% 32
Nepal Nepal 263,000,000 -62.5% 90
New Zealand New Zealand 1,466,000,000 -66.7% 46
Oman Oman 1,036,000,000 -60.7% 54
Pakistan Pakistan 848,000,000 -48.7% 59
Panama Panama 465,000,000 -67.1% 73
Peru Peru 733,000,000 -73.6% 65
Philippines Philippines 4,568,000,000 -62.1% 30
Poland Poland 5,202,000,000 -43.6% 26
Portugal Portugal 3,140,000,000 -45.2% 35
Paraguay Paraguay 96,000,000 -71.7% 112
Palestinian Territories Palestinian Territories 558,000,000 -37.3% 68
Qatar Qatar 6,742,000,000 -28.9% 17
Romania Romania 3,022,000,000 -49.6% 36
Russia Russia 9,140,000,000 -74.7% 12
Rwanda Rwanda 104,000,000 -69% 109
Saudi Arabia Saudi Arabia 8,533,000,000 -43.6% 14
Sudan Sudan 6,000,000 -45.5% 140
Singapore Singapore 6,828,000,000 -75% 16
Solomon Islands Solomon Islands 30,900,000 -50.5% 129
El Salvador El Salvador 142,000,000 -69.9% 102
Serbia Serbia 1,115,000,000 -38.3% 50
South Sudan South Sudan 1,000,000 -87.5% 146
São Tomé & Príncipe São Tomé & Príncipe 9,500,000 -47.8% 138
Suriname Suriname 60,000,000 -31% 121
Slovakia Slovakia 1,224,000,000 -52.7% 48
Slovenia Slovenia 817,900,024 -51.3% 62
Sweden Sweden 6,144,000,000 -57.2% 20
Eswatini Eswatini 36,000,000 +12.5% 126
Sint Maarten Sint Maarten 19,000,000 -71.6% 134
Seychelles Seychelles 26,000,000 -61.2% 132
Thailand Thailand 2,865,000,000 -76.8% 37
Tajikistan Tajikistan 3,500,000 -32.7% 143
Timor-Leste Timor-Leste 54,000,000 -41.3% 122
Tonga Tonga 33,000,000 -15.4% 127
Trinidad & Tobago Trinidad & Tobago 33,000,000 -61.6% 127
Tunisia Tunisia 369,000,000 -53.8% 81
Turkey Turkey 1,040,000,000 -74.7% 53
Uganda Uganda 110,000,000 -73.7% 107
Ukraine Ukraine 4,691,000,000 -44.9% 29
Uruguay Uruguay 341,000,000 -71.8% 82
United States United States 35,806,000,000 -73.1% 3
Uzbekistan Uzbekistan 888,000,000 -61.6% 57
St. Vincent & Grenadines St. Vincent & Grenadines 9,000,000 -64% 139
Vanuatu Vanuatu 18,000,000 -30.8% 135
Samoa Samoa 1,300,000 -61.8% 145
South Africa South Africa 928,000,000 -70.5% 55
Zambia Zambia 234,000,000 -21.5% 93
Zimbabwe Zimbabwe 135,000,000 -33.8% 103

The indicator of international tourism expenditures for travel items represents the total amount of money spent by travelers from one country to another. In its essence, this indicator captures the financial footprint of international tourism, encompassing expenses such as accommodation, food, entertainment, and various travel-related services. The data for the latest year available, 2020, reveals the considerable impact of the global COVID-19 pandemic on travel industries around the world, with the median expenditure for travel items standing at approximately 394 billion US dollars.

Understanding and analyzing this indicator is vital for various stakeholders, including governments, businesses, and investors. For governments, it offers insights into the performance of their tourism sectors and potential avenues for economic growth. A thriving tourism industry tends to generate significant revenue, create jobs, and stimulate local economies. Businesses in the hospitality and travel sectors rely on these figures to gauge demand, set pricing strategies, and forecast profitability. Investors often look to tourism expenditures as a barometer for potential returns in sectors spanning from hospitality to retail.

When examined in relation to other economic indicators, international tourism expenditures often correlate with levels of economic stability and prosperity within nations. For example, higher tourism expenditures may coincide with gross domestic product (GDP) growth, lower unemployment rates, and improved living standards. Conversely, areas facing economic downturns might see dips in tourism expenditures, leading to a cyclical pattern that highlights the intricate interplay between tourism and overall economic health.

Numerous factors influence international tourism expenditures. Among these, favorable exchange rates and visa policies can attract or deter travelers. Countries with strong marketing campaigns and well-managed tourism infrastructure often see higher spending by international visitors. Additionally, global events, security concerns, and economic conditions can dynamically affect traveler behavior and, consequently, expenditures. In 2020, the global pandemic drastically altered these dynamics, with many travelers completely altering their habits or refraining from travel altogether.

The data for 2020 indisputably demonstrates this downward shift in tourism expenditures. Notably, China leads the pack with staggering expenditures, amounting to approximately 130.5 billion US dollars. This vast sum underscores China's pivotal role as both a source and destination of international travel. Other large contributors include Germany (approximately 38.8 billion US dollars), the United States (about 35.8 billion US dollars), France (around 27.8 billion US dollars), and the United Kingdom (approximately 21.7 billion US dollars). These top five nations illustrate that established economies with robust travel infrastructure and marketing strategies maintain significant contributions to global tourism spending.

In contrast, the bottom five areas reveal the stark inequalities present within the realm of international tourism. South Sudan, with just 1 million US dollars spent on international travel items, epitomizes the struggles of nations facing political instability and limited infrastructure. Similarly, Samoa, Kiribati, Tajikistan, and Guinea show expenditures only in the couple of million dollars range. Such figures reflect the challenges these nations face in attracting tourists and encourage ongoing discussions about sustainable development and capacity building within the tourism sector.

Examinations of historical data since 1995 show a steep upward trend in international tourism expenditures, peaking prior to the pandemic in 2019 at over 1.4 trillion US dollars. This trajectory suggests a growing global appetite for travel and experiences, underlining the importance of addressing factors that can halt or reverse this progress. Year-on-year increases provide a promising outlook for the industry, yet the sharp decline observed in 2020 illustrates how vulnerable the sector is to unexpected shocks, such as the pandemic.

Despite the challenges posed by recent global events, several strategies can facilitate a recovery in international tourism expenditures. Governments can implement policies to stimulate domestic travel, offer flexible cancellation policies, and support affected businesses through financial aid. Additionally, investments in health and safety protocols may restore confidence in travel, appealing to tourists eager to explore again. Furthermore, promoting sustainable and responsible travel practices will allow the industry to rebound more resiliently while addressing the environmental and social impacts of tourism.

However, there are indeed flaws that need addressing. The overreliance on tourism as a key economic driver can lead to vulnerabilities, as shown in 2020. A more diversified economic strategy is necessary to mitigate these risks, balancing tourism with other sectors to create a more robust economy. This diversification can also lead to more equitable distribution of resources and economic opportunities, which is crucial for nations with lower international tourism expenditures.

In conclusion, understanding international tourism expenditures provides valuable insights into the implications of travel on the global economy, the disparities between nations, and the factors influencing spending behaviors. Although the pandemic has disrupted the growth trajectory of international tourism, collaborative strategies focusing on recovery, sustainability, and diversification offer pathways to ensure that this vital sector can thrive once more in a post-pandemic world.

                    
# 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 = 'ST.INT.TVLX.CD'

# 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 <- 'ST.INT.TVLX.CD'

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