The GDP Myth: Why it Doesn’t Always Translate to Better Lives!

The GDP Myth Why it Doesnt Always Translate to Better Lives

Gross Domestic Product (GDP) is a commonly used indicator to measure the economic performance of a country. It represents the total value of goods and services produced within a country’s borders in a given period. However, there is an ongoing debate on whether GDP is a sufficient measure of a country’s development and whether it leads to better human development. In this article, we will explore the relationship between GDP and human development based on the results of various statistical tests.

First, let’s look at the definition of GDP. GDP is the total value of goods and services produced within a country’s borders in a given time period. It is calculated by adding up consumption, investment, government spending, and net exports (exports minus imports). Therefore, any change in these components can affect the GDP.

However, the results of statistical tests on the data indicate that only government expenditure is the factor that affects GDP. The tests suggest that consumption, investment, exports, and imports are stationary, which means that changes in these variables do not have a significant impact on GDP. On the other hand, government expenditure is found to be non-stationary, which means that changes in government spending can have a significant impact on GDP.

Now, the question arises, why are policymakers still sticking to GDP as a measure of economic prosperity when it is clear that only government expenditure affects GDP? There are several reasons for this. Firstly, GDP is an easy and straightforward way to measure a country’s economic growth. It is a single number that can be compared across different countries and time periods. Secondly, GDP is an indicator of a country’s production capacity and provides information on the country’s overall economic health. Thirdly, GDP is often used as a benchmark to assess a government’s economic performance.

However, using GDP as the only measure of economic prosperity can be misleading. GDP does not take into account factors such as income inequality, social welfare, and environmental sustainability. A country may have a high GDP, but if the benefits of economic growth are not distributed evenly among the population, then it may not be a good measure of economic prosperity. Additionally, GDP growth may come at the cost of environmental degradation, which can have long-term negative effects on the economy.

While GDP is an important measure of a country’s economic performance, it is not the only factor that should be considered. Policymakers need to look beyond GDP and take into account other factors such as income inequality, social welfare, and environmental sustainability when assessing a country’s economic prosperity.

Downloaded data from World Bank for indicators:- NY.GDP.MKTP.CD-GDP~NE.CON.TOTL.CD-Consumption~NE.EXP.GNFS.CD-Exports~NE.IMP.GNFS.CD-Imports~NE.GDI.TOTL.CD-Investment~GC.XPN.TOTL.GD.ZS-Government spending
Downloaded data from World Bank for indicators:- NY.GDP.MKTP.CD-GDP~NE.CON.TOTL.CD-Consumption~NE.EXP.GNFS.CD-Exports~NE.IMP.GNFS.CD-Imports~NE.GDI.TOTL.CD-Investment~GC.XPN.TOTL.GD.ZS-Government spending

Now, we examine the statistical correlation between Gross Domestic Product (GDP) and human development by utilizing several statistical tests. The data was acquired from the World Bank for the period starting from 1970 to 2023, and the following Python code was utilized to obtain the data for our analysis.

import requests
import pandas as pd

# API endpoint for the World Bank's data
api_endpoint = "http://api.worldbank.org/v2/"

# List of indicators to download
indicators = [
    "NY.GDP.MKTP.CD",  # GDP
    "NE.CON.TOTL.CD",  # Consumption
    "NE.EXP.GNFS.CD",  # Exports
    "NE.IMP.GNFS.CD",  # Imports
    "NE.GDI.TOTL.CD",  # Investment
    "GC.XPN.TOTL.GD.ZS",  # Government spending
]

# Country code for India
country_code = "IN"

# Download the data
dataframes = []
for indicator in indicators:
    url = f"{api_endpoint}country/{country_code}/indicator/{indicator}?format=json&per_page=5000&date=1970:2023"
    response = requests.get(url)
    data = response.json()
    if data:
        data = data[1]
        df = pd.DataFrame(data)
        df = df[['date', 'value']]
        df.columns = ['Year', indicator]
        df.set_index('Year', inplace=True)
        df[indicator] = pd.to_numeric(df[indicator], errors='coerce')

        # Check for stationarity
        result = adfuller(df[indicator].dropna())
        print(f"{indicator} - ADF Statistic: {result[0]}")
        print(f"{indicator} - p-value: {result[1]}")
        print(f"{indicator} - Critical Values: {result[4]}")
        if result[1] > 0.05:
            print(f"{indicator} is likely non-stationary. Applying differencing...")
            df[indicator] = df[indicator].diff().dropna()
            result = adfuller(df[indicator].dropna())
            print(f"{indicator} - ADF Statistic after differencing: {result[0]}")
            print(f"{indicator} - p-value after differencing: {result[1]}")
            print(f"{indicator} - Critical Values after differencing: {result[4]}")
        else:
            print(f"{indicator} is likely stationary.")
        
        dataframes.append(df)


The results of the Augmented Dickey-Fuller (ADF) tests indicate that the variables NY.GDP.MKTP.CD, NE.CON.TOTL.CD, NE.EXP.GNFS.CD, NE.IMP.GNFS.CD, and NE.GDI.TOTL.CD are likely stationary. Stationarity refers to the property of a time series where the statistical properties remain constant over time. A stationary time series is considered easier to model and predict than a non-stationary time series.

On the other hand, the variable GC.XPN.TOTL.GD.ZS is likely non-stationary, as indicated by the ADF test. To deal with this, the differencing technique is applied to make the variable stationary. Differencing is a process that involves taking the difference between successive values of a time series. In this case, the differencing process is successful as the ADF test on the differenced series indicates that it is stationary.

Next, we perform Toda-Yamamoto GC tests to investigate whether GDP leads to better human development. The results show that the p-values for NE.CON.TOTL.CD, NE.EXP.GNFS.CD, NE.IMP.GNFS.CD, NE.GDI.TOTL.CD, and GC.XPN.TOTL.GD.ZS are 0.2136, 0.1498, 0.0744, 0.2612, and 0.0308, respectively. These p-values indicate the probability of rejecting the null hypothesis that GDP does not Granger-cause human development. Granger causality tests are used to determine whether one time series is useful in forecasting another time series.

Based on the results of the Toda-Yamamoto GC tests, we can conclude that GDP does not necessarily lead to better human development. The p-values for NE.CON.TOTL.CD, NE.EXP.GNFS.CD, and NE.GDI.TOTL.CD are all greater than 0.05, indicating that there is no evidence to suggest that GDP Granger-causes these variables. On the other hand, the p-value for GC.XPN.TOTL.GD.ZS is less than 0.05, suggesting that GDP Granger-causes this variable.

GC.XPN.TOTL.GD.ZS represents government consumption expenditure as a percentage of GDP. The Granger causality test results suggest that higher government spending as a percentage of GDP is associated with better human development. This finding is consistent with the idea that governments have a significant role to play in ensuring better human development outcomes through investments in education, healthcare, and other social services.

In conclusion, GDP alone is not a sufficient measure of a country’s development, and it does not necessarily lead to better human development outcomes. The Toda-Yamamoto GC test results suggest that government spending as a percentage of GDP is a more important factor in promoting human development. Policymakers should consider this when making decisions about government spending priorities. Furthermore, this study highlights the importance of considering multiple indicators when assessing a country’s development, rather than relying solely on GDP as a measure of progress.

Test Results

NY.GDP.MKTP.CD – ADF Statistic: -3.34849815516227
NY.GDP.MKTP.CD – p-value: 0.012844980754882131
NY.GDP.MKTP.CD – Critical Values: {‘1%’: -3.596635636000432, ‘5%’: -2.933297331821618, ‘10%’: -2.6049909750566895}

NY.GDP.MKTP.CD is likely stationary.
NE.CON.TOTL.CD – ADF Statistic: -3.250095665677756
NE.CON.TOTL.CD – p-value: 0.01726200013906711
NE.CON.TOTL.CD – Critical Values: {‘1%’: -3.596635636000432, ‘5%’: -2.933297331821618, ‘10%’: -2.6049909750566895}

NE.CON.TOTL.CD is likely stationary.
NE.EXP.GNFS.CD – ADF Statistic: -10.418864579309115
NE.EXP.GNFS.CD – p-value: 1.7255734509114948e-18
NE.EXP.GNFS.CD – Critical Values: {‘1%’: -3.60098336718852, ‘5%’: -2.9351348158036012, ‘10%’: -2.6059629803688282}

NE.EXP.GNFS.CD is likely stationary.
NE.IMP.GNFS.CD – ADF Statistic: -3.6644867391967235
NE.IMP.GNFS.CD – p-value: 0.004641334467363929
NE.IMP.GNFS.CD – Critical Values: {‘1%’: -3.6055648906249997, ‘5%’: -2.937069375, ‘10%’: -2.606985625}
NE.IMP.GNFS.CD is likely stationary.
NE.GDI.TOTL.CD – ADF Statistic: -8.289115181886633
NE.GDI.TOTL.CD – p-value: 4.309546514782489e-13
NE.GDI.TOTL.CD – Critical Values: {‘1%’: -3.6055648906249997, ‘5%’: -2.937069375, ‘10%’: -2.606985625}
NE.GDI.TOTL.CD is likely stationary.

GC.XPN.TOTL.GD.ZS – ADF Statistic: 0.32418353664482286
GC.XPN.TOTL.GD.ZS – p-value: 0.9784272097562796
GC.XPN.TOTL.GD.ZS – Critical Values: {‘1%’: -3.5885733964124715, ‘5%’: -2.929885661157025, ‘10%’: -2.6031845661157025}

GC.XPN.TOTL.GD.ZS is likely non-stationary. Applying differencing…
GC.XPN.TOTL.GD.ZS – ADF Statistic after differencing: -6.416766663876873
GC.XPN.TOTL.GD.ZS – p-value after differencing: 1.8330799705178215e-08
GC.XPN.TOTL.GD.ZS – Critical Values after differencing: {‘1%’: -3.5925042342183704, ‘5%’: -2.931549768951162, ‘10%’: -2.60406594375338}

Toda-Yamamoto GC test for each indicator against GDP

Testing NE.CON.TOTL.CD against NY.GDP.MKTP.CD
Granger causality test for NE.CON.TOTL.CD against NY.GDP.MKTP.CD: p-value = 0.21362942557850276

Testing NE.EXP.GNFS.CD against NY.GDP.MKTP.CD
Granger causality test for NE.EXP.GNFS.CD against NY.GDP.MKTP.CD: p-value = 0.14976395673262774

Testing NE.IMP.GNFS.CD against NY.GDP.MKTP.CD
Granger causality test for NE.IMP.GNFS.CD against NY.GDP.MKTP.CD: p-value = 0.07436804639292026

Testing NE.GDI.TOTL.CD against NY.GDP.MKTP.CD
Granger causality test for NE.GDI.TOTL.CD against NY.GDP.MKTP.CD: p-value = 0.2611955842613077

Testing GC.XPN.TOTL.GD.ZS against NY.GDP.MKTP.CD
Granger causality test for GC.XPN.TOTL.GD.ZS against NY.GDP.MKTP.CD: p-value = 0.03080631562257047

%d bloggers like this: