International tourism, expenditures (current US$)

Source: worldbank.org, 03.09.2025

Year: 2020

Flag Country Value Value change, % Rank
Aruba Aruba 310,000,000 -22.3% 83
Afghanistan Afghanistan 49,000,000 -70.8% 115
Angola Angola 691,000,000 -3.63% 63
Albania Albania 805,000,000 -56.5% 58
United Arab Emirates United Arab Emirates 15,085,000,000 -17.9% 5
Argentina Argentina 2,746,000,000 -72.1% 31
Armenia Armenia 330,000,000 -78.6% 79
Antigua & Barbuda Antigua & Barbuda 35,000,000 -70.6% 121
Australia Australia 7,654,000,000 -81.5% 12
Austria Austria 5,551,000,000 -60.1% 18
Azerbaijan Azerbaijan 439,000,000 -76.1% 74
Belgium Belgium 13,928,000,000 -33.7% 6
Bangladesh Bangladesh 659,000,000 -52.6% 65
Bulgaria Bulgaria 1,263,000,000 -42.5% 46
Bahamas Bahamas 166,000,000 -67.7% 98
Bosnia & Herzegovina Bosnia & Herzegovina 163,000,000 -58.5% 99
Belarus Belarus 477,000,000 -61% 70
Belize Belize 22,040,001 -51.5% 124
Bermuda Bermuda 212,000,000 -38% 96
Bolivia Bolivia 325,000,000 -70.7% 80
Brazil Brazil 6,490,000,000 -69.4% 17
Bhutan Bhutan 50,000,000 -25.4% 114
Botswana Botswana 91,800,003 -68.8% 109
Switzerland Switzerland 10,372,000,000 -50.8% 10
Chile Chile 720,000,000 -77.1% 61
Côte d’Ivoire Côte d’Ivoire 315,000,000 -55.1% 82
Cameroon Cameroon 697,000,000 -29.2% 62
Colombia Colombia 1,576,000,000 -72.1% 41
Comoros Comoros 43,000,000 -18.9% 116
Cape Verde Cape Verde 59,000,000 -44.9% 113
Costa Rica Costa Rica 697,000,000 -47.6% 62
Curaçao Curaçao 127,000,000 -69.1% 103
Cyprus Cyprus 880,000,000 -44.9% 55
Czechia Czechia 3,495,000,000 -42.1% 29
Dominica Dominica 9,000,000 -71% 131
Dominican Republic Dominican Republic 444,000,000 -58.1% 73
Algeria Algeria 272,000,000 -59.4% 88
Ecuador Ecuador 533,000,000 -67.7% 69
Egypt Egypt 2,578,000,000 -30.7% 32
Estonia Estonia 676,000,000 -62.6% 64
Ethiopia Ethiopia 322,500,000 -51.2% 81
Finland Finland 1,940,000,000 -71.6% 37
Fiji Fiji 77,000,000 -55.7% 110
France France 31,193,000,000 -47.8% 2
Georgia Georgia 292,000,000 -74% 85
Ghana Ghana 946,000,000 -31.4% 52
Guinea Guinea 1,075,099,976 +156% 50
Gambia Gambia 5,200,000 -48% 132
Greece Greece 1,500,000,000 -64.4% 43
Grenada Grenada 12,000,000 -75% 129
Guatemala Guatemala 346,000,000 -69.3% 78
Honduras Honduras 230,000,000 -64.9% 92
Croatia Croatia 789,687,195 -56.4% 60
Hungary Hungary 1,334,000,000 -60.2% 44
Indonesia Indonesia 1,980,000,000 -86.3% 36
India India 15,777,000,000 -44.8% 4
Ireland Ireland 2,334,000,000 -71.4% 34
Iraq Iraq 4,172,000,000 -61.8% 26
Israel Israel 2,175,000,000 -79.1% 35
Italy Italy 12,965,000,000 -65.8% 7
Jamaica Jamaica 291,000,000 -42.7% 86
Jordan Jordan 408,000,000 -74% 76
Japan Japan 6,741,000,000 -76.9% 14
Kazakhstan Kazakhstan 861,000,000 -70.9% 56
Kyrgyzstan Kyrgyzstan 185,000,000 -64.4% 97
Cambodia Cambodia 213,000,000 -81.7% 95
St. Kitts & Nevis St. Kitts & Nevis 18,000,000 -70% 127
South Korea South Korea 16,705,000,000 -52.7% 3
Kuwait Kuwait 6,696,000,000 -57.7% 15
Laos Laos 260,000,000 -74.7% 91
Lebanon Lebanon 1,699,000,000 -73.8% 38
St. Lucia St. Lucia 28,000,000 -69.6% 123
Sri Lanka Sri Lanka 803,000,000 -67% 59
Lesotho Lesotho 277,000,000 -14.2% 87
Luxembourg Luxembourg 2,458,000,000 -25.2% 33
Macao SAR China Macao SAR China 886,000,000 -56.4% 54
Morocco Morocco 1,509,000,000 -51.4% 42
Moldova Moldova 303,000,000 -36.7% 84
Madagascar Madagascar 97,000,000 -69.6% 107
Maldives Maldives 106,000,000 -75.4% 105
Mexico Mexico 4,286,000,000 -65.2% 24
North Macedonia North Macedonia 153,000,000 -49.3% 102
Montenegro Montenegro 38,000,000 -47.2% 119
Mongolia Mongolia 573,000,000 -44.7% 67
Mozambique Mozambique 95,000,000 -4.04% 108
Mauritania Mauritania 35,000,000 -37.5% 121
Mauritius Mauritius 224,000,000 -65.9% 94
Malawi Malawi 119,000,000 -39% 104
Malaysia Malaysia 5,206,000,000 -62% 20
Namibia Namibia 77,000,000 -34.7% 110
Nigeria Nigeria 6,613,000,000 -59.7% 16
Nicaragua Nicaragua 102,000,000 -67.3% 106
Netherlands Netherlands 7,435,700,195 -67% 13
Norway Norway 4,230,000,000 -76.1% 25
Nepal Nepal 267,000,000 -62.6% 90
Oman Oman 1,236,000,000 -63.7% 48
Pakistan Pakistan 1,245,000,000 -58.5% 47
Panama Panama 601,000,000 -63% 66
Peru Peru 938,000,000 -74.1% 53
Philippines Philippines 4,872,000,000 -62.3% 21
Poland Poland 5,547,000,000 -45.4% 19
Portugal Portugal 3,536,000,000 -48.2% 28
Paraguay Paraguay 226,000,000 -59.1% 93
Palestinian Territories Palestinian Territories 567,000,000 -38% 68
Qatar Qatar 11,504,000,000 -8.17% 8
Romania Romania 3,472,000,000 -51.6% 30
Russia Russia 10,800,000,000 -73.4% 9
Rwanda Rwanda 127,000,000 -66.8% 103
Saudi Arabia Saudi Arabia 9,069,000,000 -44.8% 11
Solomon Islands Solomon Islands 30,910,000 -50.5% 122
El Salvador El Salvador 162,000,000 -67.9% 100
Serbia Serbia 1,179,000,000 -41.1% 49
South Sudan South Sudan 469,000,000 -8.58% 72
Suriname Suriname 64,000,000 -31.9% 111
Slovakia Slovakia 1,291,000,000 -54.1% 45
Slovenia Slovenia 855,799,988 -51.7% 57
Eswatini Eswatini 36,400,002 +10.3% 120
Sint Maarten Sint Maarten 21,000,000 -72.7% 126
Seychelles Seychelles 39,000,000 -64.2% 118
Thailand Thailand 3,681,000,000 -75.4% 27
Tajikistan Tajikistan 10,800,000 -62% 130
Timor-Leste Timor-Leste 61,000,000 -44.5% 112
Tonga Tonga 38,000,000 -13.6% 119
Trinidad & Tobago Trinidad & Tobago 42,000,000 -68.4% 117
Tunisia Tunisia 407,000,000 -54.2% 77
Turkey Turkey 1,639,000,000 -69.4% 39
Uganda Uganda 268,000,000 -55% 89
Ukraine Ukraine 4,823,000,000 -45.9% 22
Uruguay Uruguay 412,000,000 -71.1% 75
United States United States 48,837,000,000 -73.8% 1
Uzbekistan Uzbekistan 1,062,000,000 -61.4% 51
St. Vincent & Grenadines St. Vincent & Grenadines 13,000,000 -67.5% 128
Vietnam Vietnam 4,360,000,000 -32.5% 23
Vanuatu Vanuatu 22,000,000 -31.3% 125
Samoa Samoa 1,800,000 -65.4% 133
South Africa South Africa 1,594,000,000 -72.8% 40
Zambia Zambia 474,000,000 -7.24% 71
Zimbabwe Zimbabwe 157,000,000 -38.9% 101

International tourism expenditures, expressed in current US dollars, represent the total spending by international visitors in a country or region. This indicator is a crucial metric in assessing the economic impact of tourism and reflects the overall health of the tourism industry. In 2020, the international tourism expenditures were notably affected by the outbreak of the COVID-19 pandemic, marking a significant downturn in global travel trends.

The importance of tracking international tourism expenditures lies in its ability to provide insights into consumer behavior, economic stability, and the attractiveness of different destinations. High expenditure levels indicate a flourishing tourism sector that contributes to job creation, infrastructure development, and increased revenue for local businesses. Furthermore, this indicator is closely linked to a nation’s gross domestic product (GDP), trade balances, and employment rates in sectors reliant on tourism.

In the year 2020, the median international tourism expenditure reached $55 billion, signaling both a substantial presence in global tourism and stark contrasts between various regions. The top five areas leading in expenditures were the United States, France, South Korea, India, and the United Arab Emirates, reflecting their status as prominent tourist destinations. The United States topped the list with expenditures of approximately $48.84 billion, substantially higher than other countries, indicating its significant draw as an international travel destination. France followed with $31.19 billion, showcasing its enduring appeal rooted in rich culture and iconic landmarks. South Korea, India, and the United Arab Emirates rounded out the top five, each contributing over $15 billion to international tourism.

Conversely, the bottom five areas for international tourism expenditures revealed startling disparities in tourism activity. Samoa, with just about $1.8 million, saw minimal international spending, emphasizing challenges faced by smaller nations, including limited marketing budgets and lesser-known attractions. Similarly, Gambia, Dominica, Tajikistan, and Grenada reflected low expenditure figures, which could be attributed to various factors such as inadequate infrastructure, marketing reach, or geopolitical issues that affect travel safety and accessibility.

Analyzing historical data, we observe fluctuations in international tourism expenditures from 1995 to 2019. The numbers generally show an upward trend, increasing from approximately $501 billion in 1995 to about $1.439 trillion in 2019, illustrating the growing importance of international tourism to the global economy. However, this growth was abruptly halted by the pandemic, demonstrating the volatility of tourism as an economic driver. Factors such as political stability, economic conditions, cultural attractions, and natural beauty have consistently been significant influences on tourism spending. Additionally, the global economy plays a pivotal role; as economic conditions improve, disposable incomes often rise, leading to increased travel expenditures.

Strategies to enhance international tourism spending often focus on marketing and investment in tourism infrastructure. Countries leading in international expenditures generally invest heavily in branding their destinations and improving transport and accommodation facilities. Effective digital marketing campaigns that harness social media platforms create awareness and entice potential travelers. Moreover, developing specialized tourism segments, such as eco-tourism or adventure travel, can broaden appeal and cater to diverse traveler preferences, boosting expenditures.

However, the tourism industry is not without flaws. Reliance on international tourism can create economic vulnerabilities, especially evident during a global crisis like the COVID-19 pandemic. Areas heavily dependent on tourism often face sudden economic shocks, necessitating diversified economic strategies that include investments in other sectors to mitigate risks. Additionally, overtourism in popular destinations can strain local resources, leading to environmental degradation and diminished visitor experiences. Therefore, an emphasis on sustainable tourism practices is critical.

In summary, international tourism expenditures are a vital measure of a country’s tourism sector and its economic implications. As we analyze trends and data, it is evident that while some regions thrive, others struggle under economic pressures or geographic disadvantages. Addressing challenges through strategic investment, sustainable practices, and diversified economies will be essential for countries aiming to enhance their international tourism spending in the future. As the global travel industry gradually recovers post-pandemic, understanding these factors will be key to fostering a resilient and lucrative tourism environment.

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