In welfare economics and quantitative inequality measurement, the Dalton Inequality Index represents one of the earliest and most theoretically rigorous normative measures of disparity. Proposed by British economist Hugh Dalton, the index evaluates inequality by comparing the actual aggregate social utility of an observed income distribution against the maximum potential social utility achievable if total income were divided equally among all citizens. In modern Microsoft Excel, leveraging dynamic array formulas alongside LAMBDA, MAP, and VSTACK empowers financial and policy analysts to compute Dalton inequality models dynamically without macros.
Understanding the Dalton Inequality Index Formulation
Assuming an individual utility function (U(y)) exhibiting diminishing marginal utility of income (such as logarithmic utility (U(y) = ln(y)) or fractional power utility (U(y) = y^c)), the Dalton Index ((D)) is defined mathematically as:
D = 1 - ( SUM( U(y_i) ) / ( N * U(mean) ) )
- (D = 0) (Complete Equality): Every individual possesses the exact mean income ((mu)). The observed utility equals the maximum potential utility.
- (D > 0): As income concentrates among fewer hands, diminishing marginal returns diminish total aggregate utility, causing (D) to rise toward 1.
- Welfare Interpretation: The Dalton Index quantifies the proportion of potential social welfare lost purely due to maldistribution.
Building the Dynamic LAMBDA Dalton Calculation Engine
Assuming raw income or revenue observations reside in A2:A50 and adopting logarithmic utility ((U(y) = ln(y))), create a reusable formula using LET:
=LAMBDA(values,
LET(
clean_y, FILTER(values, ISNUMBER(values) * (values > 0)),
n, ROWS(clean_y),
mu, AVERAGE(clean_y),
actual_u, (1 / n) * SUM(LN(clean_y)),
max_u, LN(mu),
dalton_val, 1 - (actual_u / max_u),
dalton_val
)
)
Constructing the Executive Summary Dashboard with VSTACK
Assemble a comprehensive spilled reporting dashboard comparing logarithmic and square-root utility formulations using VSTACK and HSTACK:
=LET(
incomes, B2:B40,
clean_d, FILTER(incomes, ISNUMBER(incomes) * (incomes > 0)),
n_count, ROWS(clean_d),
mean_val, AVERAGE(clean_d),
u_log_actual, (1 / n_count) * SUM(LN(clean_d)),
u_log_max, LN(mean_val),
d_log, 1 - (u_log_actual / u_log_max),
u_sqrt_actual, (1 / n_count) * SUM(SQRT(clean_d)),
u_sqrt_max, SQRT(mean_val),
d_sqrt, 1 - (u_sqrt_actual / u_sqrt_max),
headers, HSTACK("Utility Model Specification", "Dalton Index (D)", "Welfare Interpretation"),
row1, HSTACK("Logarithmic Utility (U = ln y)", TEXT(d_log, "0.0000"), IF(d_log < 0.1, "Low Welfare Disparity", IF(d_log < 0.25, "Moderate Welfare Loss", "Severe Welfare Penalty"))),
row2, HSTACK("Square Root Utility (U = sqrt y)", TEXT(d_sqrt, "0.0000"), IF(d_sqrt < 0.05, "Low Welfare Disparity", "Noticeable Utility Loss")),
row3, HSTACK("Mean Income Benchmark", TEXT(mean_val, "$#,##0.00"), "Equally Distributed Potential"),
VSTACK(headers, row1, row2, row3)
)
Key Advantages of the Dynamic Implementation
- Instant Scenario Re-evaluation: Updating source income numbers immediately recalculates aggregate social utility and spills updated index scores across the entire table.
- Domain Error Protection: The
FILTERfunction eliminates zero and negative values, preventing natural logarithm calculation errors (#NUM!). - Enterprise Portability: Encapsulate the formula inside Excel’s Name Manager as
CALC_DALTON_INDEXfor seamless re-use across executive compensation, fiscal policy, and macroeconomic models.