Agriculture, forestry, and fishing, value added (annual % growth)

Source: worldbank.org, 03.09.2025

Year: 2024

Flag Country Value Value change, % Rank
Angola Angola 6.68 +146% 20
Albania Albania -1.15 -37.1% 117
Andorra Andorra 0.434 -40.4% 103
Argentina Argentina 29.9 -230% 1
Armenia Armenia 1 -65.5% 97
Australia Australia 7.22 +56% 17
Austria Austria 2.44 -190% 76
Azerbaijan Azerbaijan 1.44 -52.2% 90
Burundi Burundi 4.25 +421% 43
Belgium Belgium 6.02 +186% 23
Benin Benin 5.91 +16.3% 25
Burkina Faso Burkina Faso 11 +872% 10
Bangladesh Bangladesh 3.3 -2% 62
Bulgaria Bulgaria -6.97 -54.5% 141
Bahamas Bahamas 21 -37.3% 3
Bosnia & Herzegovina Bosnia & Herzegovina -0.922 -49.3% 114
Belarus Belarus 2.15 -24,059% 80
Belize Belize -1.98 -67.9% 123
Brazil Brazil -3.21 -120% 131
Brunei Brunei 4.07 -135% 47
Botswana Botswana -0.251 -114% 109
Central African Republic Central African Republic 17 -265% 5
Canada Canada 2.17 -163% 79
Switzerland Switzerland -1.31 -30.7% 120
Chile Chile 5.83 -892% 28
China China 3.48 -14% 57
Côte d’Ivoire Côte d’Ivoire 3.46 -264% 58
Cameroon Cameroon 2.84 +30.3% 72
Congo - Kinshasa Congo - Kinshasa 2.15 -2.63% 81
Congo - Brazzaville Congo - Brazzaville 4.2 +50% 44
Colombia Colombia 8.14 +385% 14
Comoros Comoros 3.27 +55% 64
Cape Verde Cape Verde 7.36 -204% 16
Costa Rica Costa Rica 1.98 -42.6% 85
Cyprus Cyprus 1.14 +11.7% 94
Czechia Czechia -0.393 -61.8% 110
Germany Germany -0.051 -108% 107
Djibouti Djibouti 5.9 +70.6% 27
Dominica Dominica 3.19 -180% 65
Denmark Denmark 1.61 -126% 89
Dominican Republic Dominican Republic 4.92 +36.4% 36
Ecuador Ecuador 2.52 -5.51% 75
Egypt Egypt 3.78 -8.6% 51
Spain Spain 8.26 +28.1% 13
Estonia Estonia 22.2 -3,724% 2
Ethiopia Ethiopia 6.97 +11.5% 18
Finland Finland 5.08 -157% 33
Fiji Fiji 1.85 -60.4% 88
France France -11.9 -345% 151
Gabon Gabon 2.26 -212% 78
United Kingdom United Kingdom 1.13 +262% 95
Georgia Georgia 4.41 -229% 41
Ghana Ghana 2.82 -52% 73
Guinea Guinea 5.64 -1.05% 29
Guinea-Bissau Guinea-Bissau 4.3 -3.6% 42
Equatorial Guinea Equatorial Guinea 2.87 +19.1% 71
Greece Greece -1.9 -92.9% 122
Grenada Grenada -10.5 -42.1% 149
Guatemala Guatemala 0.075 -94.6% 105
Guyana Guyana 11 +60.2% 9
Hong Kong SAR China Hong Kong SAR China -9.28 -699% 147
Honduras Honduras -0.722 -118% 111
Croatia Croatia 0.449 -77% 102
Haiti Haiti -5.63 +0.8% 138
Hungary Hungary -10.2 -126% 148
Indonesia Indonesia 0.669 -48.8% 101
India India 4.59 +72.8% 40
Ireland Ireland -3.63 -124% 134
Iran Iran 3.44 +1,363% 59
Iraq Iraq 18.5 -5.23% 4
Iceland Iceland -4.03 -132% 136
Israel Israel -2.31 -1,226% 126
Italy Italy 1.95 -137% 86
Jamaica Jamaica -3.02 -47.3% 129
Jordan Jordan 6.87 +6.9% 19
Kazakhstan Kazakhstan 13.7 -285% 6
Kenya Kenya 5 -22.6% 35
Kyrgyzstan Kyrgyzstan 6.3 +876% 21
Cambodia Cambodia 0.955 -13% 98
St. Kitts & Nevis St. Kitts & Nevis -13.6 -161% 152
Kuwait Kuwait 3.63 -26.7% 53
Laos Laos 2.96 +24.4% 69
Liberia Liberia 3.53 +152% 56
Libya Libya -0.876 -113% 113
St. Lucia St. Lucia 3.58 -121% 54
Sri Lanka Sri Lanka 1.22 -23.8% 91
Lesotho Lesotho 1.17 -84.8% 93
Lithuania Lithuania 4.12 -252% 45
Luxembourg Luxembourg 0.918 -117% 100
Latvia Latvia 3.69 -142% 52
Morocco Morocco -4.53 -376% 137
Moldova Moldova -18.9 -171% 154
Madagascar Madagascar 4.78 -9.66% 37
Maldives Maldives -38 -1,297% 157
Mexico Mexico -2.3 +59.7% 125
North Macedonia North Macedonia -2.04 -33% 124
Mali Mali 7.92 +191% 15
Myanmar (Burma) Myanmar (Burma) -3.8 -292% 135
Montenegro Montenegro -0.00809 -97.2% 106
Mongolia Mongolia -28.7 +222% 156
Mozambique Mozambique 2.09 -45.1% 83
Mauritania Mauritania 4.72 -561% 38
Mauritius Mauritius 5.92 -57.4% 24
Malawi Malawi -0.158 -121% 108
Malaysia Malaysia 3.08 +323% 67
Namibia Namibia -2.67 -15.6% 127
Niger Niger 11.1 -454% 8
Nigeria Nigeria 1.19 +5.3% 92
Nicaragua Nicaragua 0.131 -104% 104
Netherlands Netherlands -1.22 -29.3% 118
Norway Norway -1.23 -78.4% 119
Nepal Nepal 3.35 +10.8% 61
Oman Oman 2.77 -53.4% 74
Pakistan Pakistan 6.18 +176% 22
Panama Panama 4.69 +936% 39
Peru Peru 5.9 -258% 26
Philippines Philippines -1.49 -224% 121
Papua New Guinea Papua New Guinea 3.56 +270% 55
Poland Poland -0.83 -106% 112
Portugal Portugal 3.42 -21.3% 60
Paraguay Paraguay 3.88 -76.3% 50
Palestinian Territories Palestinian Territories -21 +90.4% 155
Qatar Qatar 1.05 -80.4% 96
Romania Romania -5.88 -161% 139
Russia Russia -3.43 -4,597% 132
Rwanda Rwanda 5.3 +216% 31
Saudi Arabia Saudi Arabia 5.05 +10.6% 34
Sudan Sudan -7.63 -48.8% 143
Senegal Senegal -1.02 -117% 116
Singapore Singapore 3.04 +6.05% 68
Sierra Leone Sierra Leone 2.4 -0.923% 77
El Salvador El Salvador 0.953 -266% 99
Serbia Serbia -8.09 -209% 145
São Tomé & Príncipe São Tomé & Príncipe -6.22 -53.4% 140
Slovakia Slovakia 1.93 -93.2% 87
Slovenia Slovenia -3.49 -9.87% 133
Sweden Sweden -3.19 -69.6% 130
Seychelles Seychelles -2.78 -135% 128
Turks & Caicos Islands Turks & Caicos Islands 2.12 -193% 82
Chad Chad 5.13 +182% 32
Togo Togo 4.1 -1.32% 46
Thailand Thailand -1.02 -150% 115
Tunisia Tunisia 8.34 -152% 12
Turkey Turkey 3.92 +2,216% 49
Tanzania Tanzania 4.07 +31.2% 48
Uganda Uganda 5.4 +19.1% 30
Ukraine Ukraine -7.25 -165% 142
Uruguay Uruguay 11.5 +26.5% 7
United States United States 2.9 -6.33% 70
Uzbekistan Uzbekistan 3.11 -23.2% 66
St. Vincent & Grenadines St. Vincent & Grenadines -11.9 +139% 150
Vietnam Vietnam 3.27 -16.7% 63
Samoa Samoa 9.57 +1,061% 11
Kosovo Kosovo 2.07 -170% 84
South Africa South Africa -7.98 +66.8% 144
Zambia Zambia -9.23 -54.9% 146
Zimbabwe Zimbabwe -15 -338% 153

The indicator of "Agriculture, forestry, and fishing, value added (annual % growth)" is a vital metric that reflects the economic performance of the agriculture sector within a selected time frame. It represents the annual percentage growth in the value added by these industries, which encompass the contributions of agriculture, forestry, and fishing to the overall economy. This indicator is instrumental in assessing the productivity and health of agricultural practices, resource management, and sustainability of these sectors, offering insights into food security and economic resilience, especially in developing regions.

Understanding and analyzing this indicator is important for policymakers, economists, and stakeholders. It provides a clear indication of whether a nation’s agricultural output is expanding or contracting, which can significantly influence employment levels, rural incomes, and overall national economic performance. Agriculture is often a linchpin in economies, particularly in developing countries, where a significant portion of the population relies on subsistence farming and related activities. Consequently, a positive growth percentage indicates improved conditions for farmers, rural communities, and potentially lower food prices, while negative growth can suggest looming crises linked to unemployment, food shortages, and increased poverty rates.

This growth indicator is closely related to various key metrics, including GDP growth, employment rates in agriculture, rural development initiatives, and international trade statistics. For instance, an increase in agricultural output typically correlates with a rise in overall GDP, signaling a robust economy. Similarly, it can lead to job creation in both rural and urban areas, as increased agricultural activity not only benefits farmers but also stimulates demand for related services and industries, such as transportation, processing, and retail. International trade data can also be impacted; countries experiencing growth in agricultural value added often export more agricultural products, thereby enhancing their trade balance.

Several factors influence the growth of value added in agriculture, forestry, and fishing. These include technological advancements, changing consumer preferences, and government policies. Technological improvements, such as precision farming and genetically modified crops, enhance productivity and yield, driving growth. Additionally, shifts in consumer tastes towards organic products or sustainably sourced seafood may prompt farmers and fishers to adapt their practices, affecting overall growth rates. Furthermore, supportive government policies—such as subsidies for farmers or investment in rural infrastructure—can significantly bolster this growth by providing the necessary resources for innovation and expansion.

Despite its importance, the growth in the agriculture sector faces multiple challenges, which can lead to fluctuations in value-added percentages. Climate change, for instance, presents a significant risk, as erratic weather patterns can devastate crops and affect fishing livelihoods. Additionally, socio-economic issues like land tenure disputes or political instability can hinder investment and innovation in these sectors, dampening growth prospects. Post-pandemic recovery efforts are also relevant, as supply chain disruptions during the COVID-19 pandemic affected agricultural operations globally, leading to decreased productivity and investment.

To bolster sustainable growth in this sector, various strategies and solutions can be implemented. Promoting research and development into climate-resilient agricultural techniques can mitigate the effects of adverse weather conditions and ensure food security. Investment in rural infrastructure, such as roads and storage facilities, can help farmers access markets more easily and reduce post-harvest losses. Additionally, educational programs designed to enhance farmers' skills and business acumen can lead to better management practices in agriculture and related industries.

Turning to the specific data of 2023, we observe that the global agriculture, forestry, and fishing value added growth rate stands at 2.51 percent. This figure reflects a slight recovery from previous years, typifying resilience and adaptation amidst ongoing global challenges. The median value across nations is reported at 1.64 percent, indicating a mixed health status across various economies.

Examining the top five areas for growth highlights remarkable successes: Hungary at 68.67 percent, Moldova at 29.23 percent, Iraq at 28.86 percent, St. Kitts and Nevis at 27.97 percent, and the Bahamas at 26.93 percent. Each of these countries exemplifies unique strategies that have driven exceptional growth. Hungary, for instance, could benefit from advanced agricultural techniques and EU funding, while Moldova may leverage its agricultural sector’s integration into international markets.

On the other hand, the bottom performers—Greece at -26.83 percent, Argentina at -22.94 percent, Zambia at -20.45 percent, St. Lucia at -17.0 percent, and Sudan at -16.35 percent—illustrate the challenges faced in the sector. Greece's decline may stem from economic adjustments and agricultural policy shifts, while Argentina's struggles could be tied to broader economic difficulties impacting its farming sector.

In summary, the indicator "Agriculture, forestry, and fishing, value added (annual % growth)" serves as a crucial metric for understanding the economic landscape within these sectors. Recognizing the importance of growth rates, their relationship with other economic indicators, and the multifaceted challenges and opportunities involved is fundamental for achieving sustainable growth and development. By leveraging innovative strategies and addressing the underlying barriers, countries can aim to enhance their agricultural productivity and ensure long-term food security and economic stability.

                    
# 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 = 'NV.AGR.TOTL.KD.ZG'

# 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 <- 'NV.AGR.TOTL.KD.ZG'

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