The Foster-Greer-Thorbecke (FGT) metric family represents the international gold standard for multidimensional poverty measurement, widely adopted by the World Bank, the United Nations, and governmental statistical agencies. By adjusting a single sensitivity parameter ($alpha$), the FGT formulation unifies the headcount poverty ratio ($FGT_0$), the poverty gap index ($FGT_1$), and the poverty severity index ($FGT_2$) into a single continuous mathematical framework. Modern Microsoft Excel dynamic array functions—specifically VSTACK, LAMBDA, and LET—allow economic analysts to build dynamic FGT poverty models cleanly without legacy VBA macros.
Mathematical Foundations of the FGT Metric Family
Given an observed income distribution vector $y_1, y_2, dots, y_n$ and an established poverty threshold $z$, the discrete Foster-Greer-Thorbecke index $P_alpha$ is defined as:
P_alpha = (1 / n) * SUM( ((z - y_i) / z)^alpha ) for all y_i < z
Where:
ndenotes the total population count (including both non-poor and poor individuals).zrepresents the poverty line threshold.alpha = 0yields the Headcount Ratio ($P_0$): the proportion of the population living below the poverty line.alpha = 1yields the Poverty Gap Index ($P_1$): the average shortfall of the poor relative to the poverty line, measuring poverty depth.alpha = 2yields the Poverty Severity Index ($P_2$): squaring the normalised shortfalls to place greater weight on the poorest individuals, satisfying Sen’s transfer axiom.
Implementing the Dynamic Array Formula in Excel
Using the LET function, we can structure the calculation into readable intermediate steps that handle uncurated columns dynamically:
=LET(
raw_data, A2:A101,
poverty_line, 1500,
alpha_val, 2,
clean_data, FILTER(raw_data, ISNUMBER(raw_data) * (raw_data > 0)),
n, COUNT(clean_data),
poor_data, FILTER(clean_data, clean_data < poverty_line),
q, COUNT(poor_data),
IF(q = 0, 0,
LET(
shortfalls, (poverty_line - poor_data) / poverty_line,
fgt_index, (1 / n) * SUM(shortfalls^alpha_val),
fgt_index
)
)
)
This dynamic formula automatically filters observations below the poverty line, computes normalised shortfalls, raises them to power $alpha$, and derives the composite FGT index instantly.
Encapsulating the Formula into a Reusable Custom LAMBDA
To deploy this metric across multiple economic workbooks, define a reusable custom function named FGT.INDEX in the Excel Name Manager:
- Navigate to the Formulas tab and click Name Manager.
- Click New, enter
FGT.INDEXin the Name field, and set Scope toWorkbook. - In the Refers to box, input the following formula:
=LAMBDA(values, poverty_line, alpha_param, LET( clean, FILTER(values, ISNUMBER(values) * (values > 0)), n, COUNT(clean), poor, FILTER(clean, clean < poverty_line), q, COUNT(poor), IF(q = 0, 0, (1 / n) * SUM(((poverty_line - poor) / poverty_line)^alpha_param) ) ) ) - Click OK and close the dialogue.
Building Comparative Multi-Tier Dashboards with VSTACK
With the custom function established, we can compute all three FGT tiers across regional cohorts simultaneously using VSTACK:
=LET(
cohort, B2:B100,
line, 1500,
header, HSTACK("Poverty Metric", "Parameter Alpha", "Index Value", "Interpretation"),
row_0, HSTACK("Headcount Ratio (P0)", 0, FGT.INDEX(cohort, line, 0), "Poverty Incidence"),
row_1, HSTACK("Poverty Gap (P1)", 1, FGT.INDEX(cohort, line, 1), "Poverty Depth"),
row_2, HSTACK("Poverty Severity (P2)", 2, FGT.INDEX(cohort, line, 2), "Poverty Severity"),
VSTACK(header, row_0, row_1, row_2)
)
This dynamic array structure automatically updates whenever underlying survey data changes, delivering instantaneous insight into poverty incidence, depth, and severity across different socioeconomic cohorts.