Data

GDP per capita

In constant international-$ – Penn World Table
See all data and research on:

What you should know about this indicator

  • Gross domestic product (GDP) is a measure of the total value added from the production of goods and services in a country or region each year. GDP per capita is GDP divided by population.
  • This indicator provides information on economic growth and income levels in the medium run. Some country estimates are available as far back as 1950.
  • This data is adjusted for inflation and differences in living costs between countries.
  • This data is expressed in at 2021 prices, using a multiple benchmark approach that incorporates PPP estimates from all available benchmark years.
  • For GDP per capita estimates in the very long run, see the Maddison Project Database's indicator.
  • For more regularly updated estimates of GDP per capita since 1990, see the World Bank's indicator.
Learn more in the FAQs
GDP per capita
In constant international-$ – Penn World Table
Average economic output per person in a country or region per year. This data is adjusted for inflation and differences in living costs between countries.
Source
Feenstra et al. - Penn World Table (2025)with major processing by Our World in Data
Last updated
October 9, 2025
Next expected update
April 2027
Date range
1950–2023
Unit
international-$ in 2021 prices

What are international-$ and why are they used to measure incomes?

Much of the economic data we use to understand the world, such as the incomes people receive or the goods and services firms produce and people buy, is recorded in the local currencies of each country. That means the numbers start out in rupees, US dollars, yuan, and many others, and without adjusting for inflation over time. This is known as being in “current prices” or “nominal” terms.

Before these figures can be meaningfully compared, they need to be converted into common units. International dollars (int.-$) are a hypothetical currency that is used for this.

The idea is simple: one international dollar should buy the same quantity and quality of goods and services, no matter where or when it is spent. To achieve this, international dollars adjust for two things. First, they account for inflation within each country, so that values from different years can be compared (showing “constant” prices). Second, they account for differences in living costs across countries. This second adjustment uses purchasing power parity (PPP) rates, which reflect how much local currency is needed to buy what one US dollar would buy in the United States.

The United States is the benchmark, so that one 2021 int.-$ is defined as the value of goods and services that one US dollar would buy in the US in 2021. One 2011 int.-$ is defined in the same way, but for prices in 2011.

You can read more in our article, What are international dollars?

Sources and processing

Feenstra et al. – Penn World Table

PWT version 11.0 is a database with information on relative levels of income, output, input and productivity, covering 185 countries between 1950 and 2023.

Retrieved on
October 9, 2025
Citation
This is the citation of the original data obtained from the source, prior to any processing or adaptation by Our World in Data. To cite data downloaded from this page, please use the suggested citation given in Reuse This Work below.
Feenstra, Robert C., Robert Inklaar and Marcel P. Timmer (2015), "The Next Generation of the Penn World Table" American Economic Review, 105(10), 3150-3182, available for download at www.ggdc.net/pwt

PWT version 11.0 is a database with information on relative levels of income, output, input and productivity, covering 185 countries between 1950 and 2023.

Retrieved on
October 9, 2025
Citation
This is the citation of the original data obtained from the source, prior to any processing or adaptation by Our World in Data. To cite data downloaded from this page, please use the suggested citation given in Reuse This Work below.
Feenstra, Robert C., Robert Inklaar and Marcel P. Timmer (2015), "The Next Generation of the Penn World Table" American Economic Review, 105(10), 3150-3182, available for download at www.ggdc.net/pwt

All data and visualizations on Our World in Data rely on data sourced from one or several original data providers. Preparing this original data involves several processing steps. Depending on the data, this can include standardizing country names and world region definitions, converting units, calculating derived indicators such as per capita measures, as well as adding or adapting metadata such as the name or the description given to an indicator.

At the link below you can find a detailed description of the structure of our data pipeline, including links to all the code used to prepare data across Our World in Data.

Read about our data pipeline
Notes on our processing step for this indicator

We estimated this indicator as the corresponding value of GDP divided by the population of each country, available in the original dataset.

We excluded values considered outliers in the original dataset (i_outlier = "Outlier"), due to implausible relative prices (PPPs divided by exchange rates).

We replaced GDP values for Bermuda with different estimates (output side, single price benchmark) due to the unusual changes on prices in this country.

How to cite this page

To cite this page overall, including any descriptions, FAQs or explanations of the data authored by Our World in Data, please use the following citation:

“Data Page: GDP per capita”, part of the following publication: Max Roser, Bertha Rohenkohl, Pablo Arriagada, Joe Hasell, Hannah Ritchie, and Esteban Ortiz-Ospina (2023) - “Economic Growth”. Data adapted from Feenstra et al.. Retrieved from https://archive.ourworldindata.org/20260304-094028/grapher/gdp-per-capita-penn-world-table.html [online resource] (archived on March 4, 2026).

How to cite this data

In-line citationIf you have limited space (e.g. in data visualizations), you can use this abbreviated in-line citation:

Feenstra et al. - Penn World Table (2025) – with major processing by Our World in Data

Full citation

Feenstra et al. - Penn World Table (2025) – with major processing by Our World in Data. “GDP per capita – Penn World Table – In constant international-$” [dataset]. Feenstra et al., “Penn World Table 11.0” [original data]. Retrieved April 1, 2026 from https://archive.ourworldindata.org/20260304-094028/grapher/gdp-per-capita-penn-world-table.html (archived on March 4, 2026).

Quick download

Download the data shown in this chart as a ZIP file containing a CSV file, metadata in JSON format, and a README. The CSV file can be opened in Excel, Google Sheets, and other data analysis tools.

Data API

Use these URLs to programmatically access this chart's data and configure your requests with the options below. Our documentation provides more information on how to use the API, and you can find a few code examples below.

Data URL (CSV format)
https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.csv?v=1&csvType=full&useColumnShortNames=false
Metadata URL (JSON format)
https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.metadata.json?v=1&csvType=full&useColumnShortNames=false

Code examples

Examples of how to load this data into different data analysis tools.

Excel / Google Sheets
=IMPORTDATA("https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.csv?v=1&csvType=full&useColumnShortNames=false")
Python with Pandas
import pandas as pd
import requests

# Fetch the data.
df = pd.read_csv("https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.csv?v=1&csvType=full&useColumnShortNames=false", storage_options = {'User-Agent': 'Our World In Data data fetch/1.0'})

# Fetch the metadata
metadata = requests.get("https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.metadata.json?v=1&csvType=full&useColumnShortNames=false").json()
R
library(jsonlite)

# Fetch the data
df <- read.csv("https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.csv?v=1&csvType=full&useColumnShortNames=false")

# Fetch the metadata
metadata <- fromJSON("https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.metadata.json?v=1&csvType=full&useColumnShortNames=false")
Stata
import delimited "https://ourworldindata.org/grapher/gdp-per-capita-penn-world-table.csv?v=1&csvType=full&useColumnShortNames=false", encoding("utf-8") clear