International tourism, expenditures for passenger transport items (current US$)

Source: worldbank.org, 03.09.2025

Year: 2020

Flag Country Value Value change, % Rank
Aruba Aruba 4,000,000 -60% 95
Afghanistan Afghanistan 19,000,000 -51.3% 83
Angola Angola 76,000,000 -69.4% 59
Albania Albania 42,000,000 -48.8% 68
Argentina Argentina 400,000,000 -79.9% 26
Armenia Armenia 23,000,000 -57.4% 79
Antigua & Barbuda Antigua & Barbuda 8,000,000 -70.4% 90
Australia Australia 1,166,000,000 -78.3% 8
Austria Austria 648,000,000 -72.2% 18
Azerbaijan Azerbaijan 27,000,000 -80.3% 77
Belgium Belgium 893,000,000 -60.5% 12
Bangladesh Bangladesh 265,000,000 -43.5% 37
Bulgaria Bulgaria 215,000,000 -42% 40
Bahamas Bahamas 56,000,000 -68.7% 65
Bosnia & Herzegovina Bosnia & Herzegovina 51,000,000 -52.8% 66
Belarus Belarus 32,000,000 -68.6% 75
Belize Belize 1,490,000 -25.5% 99
Bermuda Bermuda 21,000,000 -73.1% 81
Bolivia Bolivia 51,000,000 -70.7% 66
Brazil Brazil 1,096,000,000 -69.4% 9
Botswana Botswana 2,800,000 -24.3% 97
Switzerland Switzerland 826,000,000 -64.7% 14
Chile Chile 190,000,000 -73.4% 43
Côte d’Ivoire Côte d’Ivoire 110,000,000 -51.8% 55
Cameroon Cameroon 144,000,000 -38.7% 49
Colombia Colombia 180,000,000 -75.1% 44
Comoros Comoros 12,000,000 -45.5% 88
Cape Verde Cape Verde 7,000,000 -68.2% 92
Costa Rica Costa Rica 397,000,000 +4.47% 27
Curaçao Curaçao 25,000,000 -64.3% 78
Czechia Czechia 65,000,000 -55.2% 63
Dominica Dominica 3,000,000 -66.7% 96
Dominican Republic Dominican Republic 230,000,000 -47.2% 39
Algeria Algeria 38,000,000 +18.8% 71
Ecuador Ecuador 125,000,000 -71.2% 53
Egypt Egypt 69,000,000 -65.5% 61
Estonia Estonia 82,000,000 -68.8% 58
Ethiopia Ethiopia 500,000 -28.6% 101
Finland Finland 294,000,000 -74.7% 36
Fiji Fiji 2,000,000 -77.8% 98
France France 3,435,000,000 -62.8% 3
Georgia Georgia 112,000,000 -76% 54
Ghana Ghana 841,000,000 -20.1% 13
Guinea Guinea 1,070,900,024 +157% 10
Gambia Gambia 200,000 -71.4% 103
Greece Greece 602,000,000 -47.2% 19
Grenada Grenada 7,000,000 -70.8% 92
Guatemala Guatemala 90,000,000 -71.3% 57
Honduras Honduras 67,000,000 -57.1% 62
Croatia Croatia 14,000,000 -70.2% 86
Hungary Hungary 175,000,000 -71.4% 45
Indonesia Indonesia 327,000,000 -89.6% 34
India India 3,203,000,000 -43.6% 4
Israel Israel 371,000,000 -83.4% 30
Italy Italy 2,107,000,000 -72.3% 5
Jamaica Jamaica 160,000,000 -28.6% 47
Jordan Jordan 27,000,000 -75% 77
Japan Japan 1,293,000,000 -83.6% 7
Kazakhstan Kazakhstan 35,000,000 -81.8% 74
Kyrgyzstan Kyrgyzstan 96,000,000 -25% 56
Cambodia Cambodia 44,000,000 -82.5% 67
St. Kitts & Nevis St. Kitts & Nevis 5,000,000 -72.2% 94
South Korea South Korea 548,000,000 -78.9% 21
Laos Laos 9,000,000 -50% 89
Lebanon Lebanon 28,000,000 -82.2% 76
St. Lucia St. Lucia 9,000,000 -71% 89
Sri Lanka Sri Lanka 354,000,000 -55.6% 32
Lesotho Lesotho 1,000,000 -75% 100
Luxembourg Luxembourg 38,000,000 -15.6% 71
Macao SAR China Macao SAR China 41,000,000 -63.4% 69
Morocco Morocco 396,000,000 -57.2% 28
Moldova Moldova 27,000,000 -71% 77
Madagascar Madagascar 18,000,000 -87.3% 84
Maldives Maldives 14,000,000 -82.9% 86
Mexico Mexico 811,000,000 -66.5% 16
North Macedonia North Macedonia 6,000,000 -70% 93
Montenegro Montenegro 8,000,000 -42.9% 90
Mongolia Mongolia 23,000,000 -79.3% 79
Mozambique Mozambique 5,000,000 +25% 94
Mauritania Mauritania 17,000,000 -32% 85
Mauritius Mauritius 19,000,000 -75.6% 83
Malawi Malawi 36,000,000 -35.7% 73
Malaysia Malaysia 386,000,000 -70.5% 29
Namibia Namibia 5,000,000 -54.5% 94
Nigeria Nigeria 1,065,000,000 -63.2% 11
Nicaragua Nicaragua 39,000,000 -70.2% 70
Netherlands Netherlands 406,600,006 -80.3% 25
Norway Norway 370,000,000 -68.4% 31
Nepal Nepal 4,000,000 -63.6% 95
Oman Oman 200,000,000 -74.1% 42
Pakistan Pakistan 397,000,000 -70.5% 27
Panama Panama 136,000,000 -35.5% 50
Peru Peru 205,000,000 -76% 41
Philippines Philippines 304,000,000 -65.8% 35
Poland Poland 345,000,000 -63.3% 33
Portugal Portugal 396,000,000 -63.8% 28
Paraguay Paraguay 130,000,000 -39% 52
Palestinian Territories Palestinian Territories 9,000,000 -62.5% 89
Qatar Qatar 4,762,000,000 +56.5% 2
Romania Romania 450,000,000 -61.7% 24
Russia Russia 1,660,000,000 -62.8% 6
Rwanda Rwanda 23,000,000 -50.9% 79
Saudi Arabia Saudi Arabia 536,000,000 -58% 22
Solomon Islands Solomon Islands 10,000 -90% 104
El Salvador El Salvador 20,000,000 -39.4% 82
Serbia Serbia 64,000,000 -67% 64
South Sudan South Sudan 468,000,000 +4.23% 23
Suriname Suriname 4,000,000 -42.9% 95
Slovakia Slovakia 67,000,000 -70.1% 62
Slovenia Slovenia 37,900,002 -59.5% 72
Eswatini Eswatini 400,000 -60% 102
Sint Maarten Sint Maarten 2,000,000 -80% 98
Seychelles Seychelles 13,000,000 -69% 87
Thailand Thailand 816,000,000 -68.8% 15
Tajikistan Tajikistan 7,300,000 -68.5% 91
Timor-Leste Timor-Leste 7,000,000 -61.1% 92
Tonga Tonga 5,000,000 0% 94
Trinidad & Tobago Trinidad & Tobago 9,000,000 -80.9% 89
Tunisia Tunisia 38,000,000 -58.2% 71
Turkey Turkey 599,000,000 -51.8% 20
Uganda Uganda 158,000,000 -11.2% 48
Ukraine Ukraine 132,000,000 -66.2% 51
Uruguay Uruguay 71,000,000 -66.8% 60
United States United States 13,031,000,000 -75.3% 1
Uzbekistan Uzbekistan 174,000,000 -60.5% 46
St. Vincent & Grenadines St. Vincent & Grenadines 4,000,000 -73.3% 95
Vanuatu Vanuatu 4,000,000 -33.3% 95
Samoa Samoa 500,000 -72.2% 101
South Africa South Africa 666,000,000 -75.6% 17
Zambia Zambia 240,000,000 +12.7% 38
Zimbabwe Zimbabwe 22,000,000 -58.5% 80

The indicator of international tourism expenditures for passenger transport items, measured in current US dollars, provides crucial insights into global travel trends and economic activity. This metric encompasses the financial transactions related to passenger transport, highlighting the importance of air travel, rail, and shipping within the broader context of tourism spending. The value of this indicator not only reflects the capacity and desire of individuals to travel internationally but also serves as a barometer for economic health in the tourism sector.

The significance of this indicator extends beyond mere numbers; it is a vital component in assessing the economic impact of tourism on various countries. For many nations, particularly those heavily reliant on tourism, international transport expenditures correlate with overall economic stability and growth. In 2020, the median value of international tourism expenditures was reported at 65 million US dollars, illustrating a broad disparity in tourism expenditure among different regions and countries.

When analyzing the top five areas in international tourism expenditures, the United States stands out with an impressive expenditure of 13.03 billion US dollars. This figure underscores the nation's status as a significant destination for international travelers, bolstered by its vast offerings in both business and leisure tourism. Qatar, with a notable 4.76 billion US dollars, reflects its growing recognition as a high-end travel destination. France and India, with expenditures of 3.44 billion and 3.20 billion US dollars respectively, reveal their enduring appeal as top tourist destinations, while Italy, reaching 2.11 billion US dollars, showcases its cultural and historical attractions. In contrast, the bottom five areas present a sobering picture of tourism expenditure: the Solomon Islands reported merely 10,000 US dollars, indicating minimal international travel infrastructure or appeal. Gambia, Eswatini, Ethiopia, and Samoa follow suit, each registering low spending on international passenger transport, highlighting both economic limitations and possible barriers to tourism development.

Exploring the relationship between international tourism expenditures and other economic indicators can reveal important insights about travel behavior, global commerce, and socioeconomic trends. This indicator often works in conjunction with GDP, employment rates, and foreign exchange income from tourism, suggesting that as international transport expenditures rise, so too does the economic stability of the regions involved. Conversely, a decline in this indicator can serve as a warning sign of impending economic challenges, particularly for countries reliant on tourism as a substantial portion of their GDP.

Various factors influence international tourism expenditures for passenger transport. Economic conditions, such as income levels, foreign exchange rates, and travel prices, can significantly affect how much individuals are willing to spend on travel. External factors like geopolitical stability, health pandemics like COVID-19, and environmental concerns also play crucial roles in shaping travel behaviors. For instance, the impact of the COVID-19 pandemic on international tourism has been profound, as restrictions on travel led to a significant drop in expenditures in 2020, underscoring the sector's vulnerability to global crises.

To mitigate the impact of such factors and bolster international tourism expenditures, countries can adopt a range of strategies. Investing in infrastructure, such as airports, railways, and ports, can enhance accessibility and encourage international travel. Furthermore, marketing campaigns emphasizing safe travel experiences and unique local offerings can attract more tourists. Partnerships between government, private sectors, and international organizations can also bolster efforts to promote tourism, ensuring that nations can recover and thrive following global disruptions.

Nevertheless, there are flaws and challenges that come with relying heavily on tourism and passenger transport expenditures. Regions overly dependent on international tourism can experience economic instability during downturns, as seen during the pandemic. Additionally, environmental sustainability remains a critical concern, as increased travel can exacerbate issues such as carbon emissions and local resource strain. It is essential for nations to develop balanced approaches to tourism that emphasize sustainable practices while promoting economic growth.

In reviewing historical data, we see fluctuations in international tourism expenditures over the years. From 1995, when expenditures were approximately 88.71 billion US dollars, there was significant growth, peaking in 2019 at nearly 249.92 billion US dollars. This dramatic increase reflects a global trend towards greater mobility and accessibility in travel. However, the downturn in 2020 emphasizes the need for resilience in the tourism sector. Countries must adapt to changing global circumstances while ensuring that their tourism strategies align with sustainable development goals to secure the future of international tourism.

In conclusion, international tourism expenditures for passenger transport items serve as a key indicator for understanding global travel trends and economic health. Emphasizing the necessity of robust tourism policies, countries can work towards fostering a resilient tourism economy that balances growth with sustainability, thus ensuring the sector can weather future challenges.

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