1 · Scope & sources
Model scope and source classification
The simulator projects annual outcomes for 2026–2100. That horizon is chosen to match the 2026 Trustees Report's 75-year long-range valuation period.
Direct source valueA number directly copied from a Social Security Administration report or another reputable source.
Derived calibrationA number calculated from published source values to create or calibrate a model input.
Model choiceA simplifying assumption, policy-design default, or tuning parameter selected for this simulator rather than reported by an official source.
Notation. Calendar years are indexed by \(t\), with \(t_0=2026\). Ages are indexed by \(a\), income groups by \(g\), and demographic scenarios by \(s\). Dollar variables are real 2026 dollars unless otherwise noted.
2 · Demographic engine
Population, working-age population, and retirement-age population
All demographic scenarios begin from the same 2026 baseline population from the United Nations World Population Prospects 2024. The United Nations data is used because it provides a detailed population distribution by single year of age, which is a key input required by the simulator and is not available in a comparable form from sources such as the Social Security Administration's Trustees Reports. Using a common starting population also holds the initial age structure constant across scenarios, so differences after 2026 reflect alternative assumptions about fertility, life expectancy, and immigration rather than differences in the initial population estimates.
Population paths after 2026 are constructed in two ways. The United Nations scenarios use the corresponding World Population Prospects 2024 year-by-year population-by-age projections directly. The SSA, CBO, and Census scenarios are reconstructed in Spectrum/DemProj using the same UN WPP 2024 population baseline for 2026 together with the demographic assumptions published by each institution.
Demographic scenario sources
The selected retirement age is used as the dividing point between the working-side population and the retirement-side population.
Population split at the retirement-age boundary
- \(P^{(s)}_{a,t}\)
- Population of age \(a\) in year \(t\) under demographic scenario \(s\).
- \(R_t\)
- Retirement age used by the model in year \(t\).
- \(k_t=\lfloor R_t\rfloor\)
- Integer component of the retirement age.
- \(\phi_t=R_t-k_t\)
- Fractional component of the retirement age, with \(0\leq\phi_t<1\).
- \(W^{pop}_t\)
- Population on the working side of the age boundary.
- \(N^{ret}_t\)
- Population on the retirement side of the age boundary.
\[
W^{pop}_t=\sum_{a=20}^{k_t-1}P^{(s)}_{a,t}+\phi_tP^{(s)}_{k_t,t}
\]
(1)
\[
N^{ret}_t=(1-\phi_t)P^{(s)}_{k_t,t}+\sum_{a=k_t+1}^{100}P^{(s)}_{a,t}
\]
(2)
3 · Workers & beneficiaries
Calibration from population counts to program counts
Raw age counts are not treated as covered workers or beneficiaries one-for-one. For each selected demographic scenario, the simulator recalibrates conversion factors in 2026 so the model exactly matches the Trustees Report's 2026 covered-worker and beneficiary counts.
Calibration is necessary because demographic age groups do not map perfectly onto Social Security program participation. Not everyone claims retirement benefits at the full retirement age; some beneficiaries claim earlier, while others claim later. Likewise, not every working-age adult is a covered Social Security worker. Some occupations are outside Social Security coverage, and some adults may be outside the labor force, including students or others who are not currently employed. These differences are important when translating population counts into modeled worker and beneficiary counts.
Covered workers and OASI beneficiaries
- \(C_{2026}^{SSA}\)
- 2026 covered workers reported by SSA: 184.803 million.
- \(B_{2026}^{O,SSA}\)
- 2026 OASI beneficiaries reported by SSA: 63.232 million.
- \(W^{pop}_{2026}\)
- Scenario-specific working-side population from equation (1).
- \(N^{ret}_{2026}\)
- Scenario-specific retirement-side population from equation (2).
- \(\alpha_C\)
- Scenario-specific conversion factor from working-side population to covered workers.
- \(\alpha_O\)
- Scenario-specific conversion factor from retirement-side population to OASI beneficiaries.
- \(C_t\)
- Modeled covered workers in year \(t\).
- \(B_t^O\)
- Modeled OASI beneficiaries in year \(t\).
\[
\alpha_C=\frac{C_{2026}^{SSA}}{W^{pop}_{2026}},\qquad
\alpha_O=\frac{B_{2026}^{O,SSA}}{N^{ret}_{2026}}
\]
(3)
\[
C_t=\alpha_C W^{pop}_t,\qquad B_t^O=\alpha_O N^{ret}_t
\]
(4)
DI beneficiary approximation
- \(B_{2026}^{D,SSA}\)
- 2026 DI beneficiaries reported by SSA: 8.102 million.
- \(A_t\)
- Adult population in the simplified engine, \(A_t=W^{pop}_t+N^{ret}_t\).
- \(\alpha_{DR}\)
- 2026 DI beneficiaries divided by the retirement-side population.
- \(\alpha_{DA}\)
- 2026 DI beneficiaries divided by total adult population.
- \(B_t^D\)
- Modeled DI beneficiaries.
\[
\alpha_{DR}=\frac{B_{2026}^{D,SSA}}{N^{ret}_{2026}},\qquad
\alpha_{DA}=\frac{B_{2026}^{D,SSA}}{A_{2026}}
\]
(5)
\[
B_t^D=\frac{1}{2}\alpha_{DR}N^{ret}_t+\frac{1}{2}\alpha_{DA}A_t
\]
(6)
Model choice The 50/50 blend is a parsimonious approximation that makes DI respond partly to the retirement-side population and partly to the broader adult population.
4 · Retirement age
Scheduled increases and longevity indexing
The model's base retirement age is set at 67 since that is the full retirement age under current law. A user-specified increase can be phased in and, optionally, the resulting age can continue to move one-for-one with the selected life-expectancy series.
Manual retirement-age phase-in
- \(R_0\)
- Baseline retirement age, fixed at 67 in the simulator.
- \(\Delta R\)
- User-selected increase in years.
- \(t_R\)
- Start year of the retirement-age reform.
- \(H_R\)
- Phase-in length in years.
- \(\lambda_t^R\)
- Share of the scheduled retirement-age increase implemented by year \(t\), bounded between 0 and 1.
- \(R_t^{M}\)
- Manual retirement-age path before longevity indexing or stabilizer adjustments.
\[
\lambda_t^R=
\min\left\{1,\,
\max\left\{0,\frac{t-t_R+1}{H_R}\right\}
\right\}
\]
(7a)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
\lambda_{2039}^R=
\min\left\{1,\max\left\{0,\frac{2039-2030+1}{20}\right\}\right\}
=0.50
\]
Policy settings used in this example: raise the retirement age by 2 years, begin the change in 2030, and phase it in over 20 years. By 2039, 50% of the scheduled increase has been implemented.
\[
R_t^{M}=R_0+\Delta R\,\lambda_t^R
\]
(7b)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
R_{2039}^{M}=67+2(0.50)=68.0
\]
Policy settings used in this example: baseline retirement age = 67; scheduled increase = 2 years; implementation share in 2039 = 50%. The resulting retirement age is 68.
Longevity-indexed retirement age
- \(LE_t^{(s)}\)
- Period life-expectancy index for the selected demographic scenario.
- \(t_I\)
- Year in which longevity indexing begins after any manual phase-in.
- \(R_t^{L}\)
- Retirement age after longevity indexing.
\[
R_t^{L}=R_t^{M}+\left(LE_t^{(s)}-LE_{t_I}^{(s)}\right),\qquad t\ge t_I
\]
(8)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
R_{2050}^{L}=69.0+(79.8-79.5)=69.3
\]
Policy settings used in this example: manual retirement-age target = 69; longevity indexing is enabled; the selected life-expectancy index rises from 79.5 to 79.8 years. The 0.3-year increase is added to the retirement age, producing 69.3.
The SSA life-expectancy index is constructed from the period life-expectancy projections in
Table V.A4. Life expectancies for other scenarios are taken from their respective sources. Longevity indexing is disabled for the United Nations Constant Mortality scenario.
5 · Economic assumptions
Real payroll, inflation, and interest rates
The core model uses constant real growth and interest assumptions unless the user changes them. The default values are 1.14 percent real payroll growth and 2.3 percent real interest. These are taken from the Trustees' long-run intermediate assumptions.
Real payroll per covered worker
- \(y_t\)
- Real payroll per covered worker in year \(t\).
- \(y_0\)
- 2026 payroll-per-worker calibration, $71,994.61.
- \(g_y\)
- Annual real payroll growth rate; baseline 1.14 percent.
- \(n_t=t-2026\)
- Number of annual growth intervals after 2026.
\[
y_t=y_0(1+g_y)^{n_t}
\]
(9)
Derived calibration \(y_0\) is derived from SSA's 2026 taxable payroll, covered-worker count, and the model's 83 percent taxable-share assumption. The derivation is shown in the calibration ledger. SSA assumption \(g_y=1.14\%\) is the Trustees' ultimate intermediate real covered-wage growth assumption in Table II.C1.
Near-term simplification. Table II.C1 states that its long-range assumptions generally apply to 2036–2100. The simulator's default uses the 1.14 percent real wage-growth rate and 2.3 percent real interest rate from the start of the 2026 projection.
6 · Revenue
Taxable payroll, payroll taxes, and taxation of benefits
Taxable payroll
- \(s_t\)
- Share of modeled payroll subject to the OASDI payroll tax; baseline 0.83.
- \(y_t\)
- Real payroll per covered worker.
- \(C_t\)
- Covered workers.
- \(TP_t\)
- Modeled taxable payroll.
\[
TP_t=s_t y_t C_t
\]
(10)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
TP_t=0.90(\$80{,}000)(190{,}000{,}000)
=\$13.68\text{ trillion}
\]
Policy settings used in this example: raise the share of payroll subject to the taxable maximum to 90%; real payroll per worker = $80,000; covered workers = 190 million. These inputs produce $13.68 trillion of taxable payroll.
Scheduled payroll-tax phase-in
- \(\tau_0^O\)
- Baseline OASI payroll-tax rate, 10.6 percent.
- \(\tau^{O*}\)
- User-selected OASI payroll-tax rate.
- \(t_\tau\)
- User-selected year in which the payroll-tax change begins.
- \(H_\tau\)
- User-selected payroll-tax phase-in period in years.
- \(\lambda_t^\tau\)
- Share of the scheduled payroll-tax change implemented in year \(t\), bounded between 0 and 1.
- \(\tau_t^{O,sch}\)
- Scheduled OASI payroll-tax rate before any automatic-stabilizer adjustment.
\[
\lambda_t^\tau=\min\left\{1,\max\left\{0,\frac{t-t_\tau+1}{H_\tau}\right\}\right\}
\]
(11a)
\[
\tau_t^{O,sch}=\tau_0^O+(\tau^{O*}-\tau_0^O)\lambda_t^\tau
\]
(11b)
Illustrative ExampleHover or click to show an illustrative numerical substitution
\[
\lambda_{2034}^\tau=\frac{2034-2030+1}{10}=0.50,\qquad
\tau_{2034}^{O,sch}=0.106+(0.126-0.106)(0.50)=0.116
\]
Policy settings used in this example: raise the OASI payroll-tax rate from 10.6% to 12.6%, begin the change in 2030, and phase it in over 10 years. In 2034, half of the increase has been implemented and the scheduled rate is 11.6%.
OASI payroll-tax revenue
- \(\tau_t^O\)
- Effective OASI payroll-tax rate in the simulator after any scheduled reform and stabilizer adjustment; baseline 10.6 percent.
- \(TP_t\)
- Modeled taxable payroll from equation (10).
- \(\kappa_\tau\)
- Payroll-revenue calibration factor, 0.9965333.
- \(T_t^O\)
- OASI payroll-tax revenue.
\[
T_t^O=\kappa_\tau\tau_t^O TP_t
\]
(11c)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
T_t^O=(0.9965333)(0.12)(\$13.68\text{ trillion})
\approx \$1.636\text{ trillion}
\]
Policy settings used in this example: OASI payroll-tax rate = 12%; taxable payroll = $13.68 trillion; payroll calibration factor = 0.9965333. These inputs produce approximately $1.636 trillion of OASI payroll-tax revenue.
Direct SSA The 10.6 percent OASI rate is in
Table V.C6.
Derived calibration \(\kappa_\tau\) makes the simplified 2026 calculation match the Trustees' $1.1665 trillion of projected OASI net payroll-tax contributions in
Table IV.A1.
Benefit credit for newly taxable earnings
- \(s_0\)
- Baseline taxable-payroll share, 0.83.
- \(s_t\)
- User-selected taxable-payroll share in year \(t\).
- \(c^*\)
- User-selected benefit-credit rate applied to newly taxable earnings.
- \(H_c\)
- User-selected credit phase-in period.
- \(c_t\)
- Effective benefit-credit rate in year \(t\).
- \(B_{M,t}^O\)
- Modeled OASI beneficiaries in the Maximum Taxable Income group.
- \(A_t^c\)
- Additional annual benefit assigned to each Maximum Taxable Income beneficiary.
\[
c_t=c^*\min\left\{1,\max\left\{0,\frac{t-2026+1}{H_c}\right\}\right\}
\]
(11d)
\[
A_t^c=\frac{y_tC_t(s_t-s_0)c_t}{B_{M,t}^O}
\]
(11e)
Illustrative ExampleHover or click to show an illustrative numerical substitution
\[
A_t^c=\frac{(\$80{,}000)(190\text{M})(0.90-0.83)(0.15)}{9.5\text{M}}
\approx \$16{,}800
\]
Policy settings used in this example: raise the taxable-payroll share from 83% to 90%, credit 15% of the newly taxable earnings after the credit is fully phased in, and assume 9.5 million beneficiaries in the Maximum Taxable Income group. The resulting illustrative annual benefit credit is about $16,800 per beneficiary.
When this option is disabled, newly taxable earnings increase payroll-tax revenue but do not increase modeled benefits. When enabled, the credit is added only to the Maximum Taxable Income group's benefit.
DI payroll-tax revenue
- \(\tau^D\)
- DI payroll-tax rate, fixed at 1.8 percent in the current model.
- \(TP_t\)
- Modeled taxable payroll.
- \(T_t^D\)
- DI payroll-tax revenue.
\[
T_t^D=\tau^D TP_t
\]
(12)
Direct SSA The 1.8 percent DI rate is in
Table V.C6.
Revenue from taxation of OASI benefits
- \(\theta_t\)
- Model-implied fraction of OASI benefit spending returned to the trust fund through taxation of benefits.
- \(E_t^O\)
- OASI benefit spending.
- \(T_t^{BT}\)
- OASI trust-fund revenue from taxation of benefits.
\[
T_t^{BT}=\theta_t E_t^O
\]
(13)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
T_t^{BT}=0.05(\$1.80\text{ trillion})
=\$90\text{ billion}
\]
Policy settings used in this example: tax revenue from benefits = 5% of OASI benefit spending; OASI benefit spending = $1.80 trillion. The resulting benefit-tax revenue is $90 billion.
The starting value \(\theta_{2026}=3.97\%\) is a
derived calibration, calculated from approximately $60.0 billion of 2026 OASI taxation-of-benefits revenue divided by modeled 2026 OASI benefit spending. The $60.0 billion starting value is reported in
Table IV.A1. The benefit-tax revenue path then rises over time to reflect the Social Security Administration's long-run projection. Under the intermediate assumptions,
Table IV.B2 reports OASI taxation-of-benefits income equal to 1.03 percent of taxable payroll in 2100.
7 · Benefits
Benefit growth, income groups, and program spending
The simulator represents OASI benefits using five pre-retirement income groups. The groups are based on the Social Security Administration's scaled-worker earnings categories and relative replacement-rate structure reported in 2026 Trustees Report, Table V.C7. The beneficiary shares are calibrated separately from the Social Security Administration's observed distribution of retired-worker monthly benefits in the Annual Statistical Supplement, 2026, Table 5.J6. The simulator's 2026 annual benefit anchors are $13,373.18 for Very Low Income, $17,527.01 for Low Income, $23,889.72 for Medium Income, $38,243.47 for High Income, and $46,602.70 for Maximum Taxable Income.
Derivation of beneficiary-group shares
Mapping the SSA benefit distribution into model groups
- \(c_g\)
- Monthly-benefit cutoff separating adjacent model income groups.
- \(w_g\)
- Estimated share of beneficiaries assigned to model group \(g\).
- \(F(b)\)
- Cumulative share of retired-worker monthly benefits from Table 5.J6, with proportional allocation when a cutoff falls within a reported benefit range.
\[
w_g = F(c_g)-F(c_{g-1})
\]
(14)
| Model group | 2026 annual benefit anchor | SSA-distribution calculation | Estimated share | Final model weight |
| Very Low Income | $13,373.18 | Below approximately $1,249 per month. | ≈20.3% | 20% |
| Low Income | $17,527.01 | Approximately $1,249–$1,879 per month. | ≈25.3% | 25% |
| Medium Income | $23,889.72 | Approximately $1,879–$2,716 per month. | ≈31.6% | 32% |
| High Income | $38,243.47 | A chosen share of the $3,000+ per month group. | ≈23% combined upper tail | 18% |
| Maximum Taxable Income | $46,602.70 | A chosen share of the $3,000+ per month group. | Included in ≈23% combined upper tail | 5% |
Why the top two groups require judgment. Table 5.J6 groups all retired workers receiving $3,000 or more per month into one category, so it does not show how that upper tail should be divided between the High Income and Maximum Taxable Income groups. The model therefore tests different splits of the $3,000+ group and selects the allocation that makes the model's aggregate average benefit closest to the observed average benefit. The resulting split is 18% High Income and 5% Maximum Taxable Income.
Real benefit-growth rule
- \(g_y\)
- Real payroll/wage growth assumption.
- \(\omega\)
- Wage-index strength; baseline 0.84.
- \(\pi\)
- Inflation assumption; default 2.4 percent.
- \(\eta\)
- Inflation-index strength when the inflation-indexing mode is selected; 1.0 means full inflation protection.
- \(g_t^B\)
- Real annual growth rate applied to scheduled OASI benefit anchors.
\[
g_t^B=
\begin{cases}
\omega g_y, & \text{wage-index mode},\\[4pt]
-\pi(1-\eta), & \text{inflation-index mode}.
\end{cases}
\]
(15)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
g_t^B=(0.84)(0.0114)=0.009576\approx0.958\%
\qquad\text{(wage-index mode)}
\]
Policy settings used in this example: real wage growth = 1.14%; wage-index strength = 84%; inflation indexing is not selected. Scheduled real benefit growth is therefore about 0.958%.
SSA input The 2.4 percent CPI-W assumption and 1.14 percent real covered-wage growth assumption are in Table II.C1. Model calibration \(\omega=0.84\) was chosen so that long-run benefit costs would roughly align with the Social Security Administration's Intermediate projections, all else held equal.
Aggregate and group-specific benefit adjustments
Scheduled benefit-adjustment phase-in
- \(d_g\)
- User-selected benefit reduction for group \(g\). In Aggregate mode, the same value is applied to every group.
- \(t_g^B\)
- Benefit-adjustment start year for group \(g\).
- \(H_g^B\)
- Benefit-adjustment phase-in period for group \(g\).
- \(\lambda_{g,t}^B\)
- Share of the scheduled adjustment implemented by year \(t\).
- \(m_{g,t}^B\)
- Benefit multiplier after the scheduled adjustment but before any automatic stabilizer.
\[
\lambda_{g,t}^B=\min\left\{1,\max\left\{0,\frac{t-t_g^B+1}{H_g^B}\right\}\right\},\qquad
m_{g,t}^B=1-d_g\lambda_{g,t}^B
\]
(16a)
Illustrative ExampleHover or click to show an illustrative numerical substitution
\[
\lambda_{g,2034}^B=\frac{2034-2030+1}{10}=0.50,\qquad
m_{g,2034}^B=1-0.20(0.50)=0.90
\]
Policy settings used in this example: a 20% benefit reduction begins in 2030 and phases in over 10 years. By 2034, half of the reduction has been implemented, so the affected benefit is 10% below its scheduled level. Aggregate mode applies this path to every group; Group-specific mode allows a different cut, start year, and phase-in period for each of the five income groups.
Group benefit path and weighted average
- \(b_{g,t}\)
- Annual OASI benefit for income group \(g\) before policy-specific cuts or flattening.
- \(w_g\)
- Population weight of income group \(g\), with \(\sum_g w_g=1\).
- \(m_{g,t}\)
- Policy multiplier applied to group \(g\) in year \(t\), including any group-specific or aggregate benefit adjustment and the benefit stabilizer.
- \(\bar b_t^O\)
- Weighted average annual OASI benefit per modeled OASI beneficiary.
\[
b_{g,t}=b_{g,t-1}(1+g_t^B)
\]
(16)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
b_{g,t}=\$30{,}000(1+0.009576)
=\$30{,}287.28
\]
Policy settings used in this example: prior-year annual benefit = $30,000; scheduled real benefit growth = 0.9576%; no additional benefit cut is applied in this step. The new annual benefit is $30,287.28.
\[
\bar b_t^O=\sum_g w_g m_{g,t}b_{g,t}
\]
(17)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
\begin{aligned}
\bar b_t^O={}&
0.20(1.00)(\$14{,}000)
+0.25(1.00)(\$18{,}000)\\
&+0.32(0.95)(\$24{,}000)
+0.18(0.90)(\$31{,}000)
+0.05(0.85)(\$40{,}000)\\
={}&\$21{,}315.20
\end{aligned}
\]
Policy settings used in this example: Very Low Income receives no cut; Low Income receives no cut; Medium Income receives a 5% benefit cut; High Income receives a 10% benefit cut; Maximum Taxable Income receives a 15% benefit cut. Illustrative annual scheduled benefits are $14,000, $18,000, $24,000, $31,000, and $40,000, respectively, with group weights of 20%, 25%, 32%, 18%, and 5%. The weighted average benefit is $21,315.20.
OASI benefit spending
- \(\bar b_t^O\)
- Weighted average OASI benefit per beneficiary.
- \(B_t^O\)
- Modeled OASI beneficiaries.
- \(E_t^O\)
- Modeled OASI benefit spending.
\[
E_t^O=\bar b_t^O B_t^O
\]
(18)
Flatten-benefits mode
Convergence of higher-income benefits toward a protected group
- \(g^*\)
- Highest income group protected from flattening.
- \(\lambda^{max}\)
- User-selected maximum share of the benefit gap that can be closed.
- \(t_F\)
- User-selected flattening start year.
- \(H_F\)
- User-selected flattening phase-in period.
- \(\lambda_t\)
- Fraction of the benefit gap closed in year \(t\), after phase-in and the user's maximum-flattening setting.
- \(b_{g,t}\)
- Scheduled group benefit before flattening.
- \(b^{F}_{g,t}\)
- Benefit after flattening, before any funded-account payout.
\[
\lambda_t=\lambda^{max}\min\left\{1,\max\left\{0,\frac{t-t_F+1}{H_F}\right\}\right\}
\]
(19a)
Illustrative ExampleHover or click to show an illustrative numerical substitution
\[
\lambda_{2034}=0.50\left(\frac{2034-2030+1}{10}\right)=0.25
\]
Policy settings used in this example: Flatten Benefits begins in 2030, phases in over 10 years, and can close at most 50% of the gap above the protected group's benefit. In 2034, the effective flattening strength is 25% of the gap.
\[
b^{F}_{g,t}=
\begin{cases}
b_{g,t}, & g\le g^*,\\[4pt]
b_{g,t}-\lambda_t\max\!\left(0,b_{g,t}-b_{g^*,t}\right), & g>g^*.
\end{cases}
\]
(19b)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
b_{H,t}^{F}
=\$31{,}000-0.50\max\{0,\$31{,}000-\$24{,}000\}
=\$27{,}500
\]
Policy settings used in this example: Flatten Benefits is enabled; Medium Income is the highest protected group; High Income scheduled benefit = $31,000; Medium Income protected benefit = $24,000; maximum flattening = 50% of the benefit gap. The High Income benefit falls to $27,500.
DI spending
Simplified DI benefit spending
- \(d_0\)
- 2026 annual DI benefit anchor, $17,919.
- \(g_D\)
- Real annual DI benefit-growth assumption, 1.0 percent.
- \(\kappa_D\)
- DI spending calibration multiplier, 1.165.
- \(B_t^D\)
- Modeled DI beneficiaries.
- \(E_t^D\)
- Modeled DI spending.
\[
d_t=d_0(1+g_D)^{t-2026}
\]
(20)
\[
E_t^D=\kappa_D d_t B_t^D
\]
(21)
SSA data \(d_0\) equals the May 2026 average monthly DI benefit of $1,493.25 multiplied by 12, from
SSA Monthly Statistical Snapshot, May 2026, Table 2.
Rounded calibration Multiplying $17,919 by 8.102 million DI beneficiaries yields about $145.18 billion; a multiplier near 1.163 would match the Trustees' $168.8 billion 2026 DI total cost in Table IV.A2. The code uses the rounded calibration 1.165.
Model choice The 1.0 percent real DI benefit-growth rate is not a direct Trustees-table assumption.
8 · Trust-fund accounting
Interest, cash flow, balances, and the trust-fund ratio
Trust-fund interest
- \(F_{t-1}\)
- Trust-fund balance entering year \(t\).
- \(r_t\)
- Real interest rate applied by the model; baseline 2.3 percent unless the optional stress scenario is active.
- \(I_t\)
- Modeled interest income.
\[
I_t=r_t\max\{F_{t-1},0\}
\]
(22)
SSA benchmark The 2.3 percent value is the Trustees' real interest rate assumption for 2044 and later in Table II.C1. The simulator applies it as a constant baseline from 2026, which is a model simplification.
OASI annual cash flow and balance
- \(T_t^O\)
- OASI payroll-tax revenue.
- \(T_t^{BT}\)
- Revenue from taxation of OASI benefits.
- \(I_t^O\)
- OASI trust-fund interest income.
- \(E_t^O\)
- OASI benefit spending.
- \(D_t^F\)
- Payroll diverted from PAYG financing to individual funded accounts.
- \(X_t^{SWF}\)
- Transfer from the optional sovereign wealth fund to the trust fund.
- \(CF_t^O\)
- OASI cash flow.
- \(F_t^O\)
- End-of-year OASI trust-fund balance.
\[
CF_t^O=T_t^O+T_t^{BT}+I_t^O-E_t^O-D_t^F+X_t^{SWF}
\]
(23)
\[
F_t^O=\max\!\left(0,F_{t-1}^O+CF_t^O\right)
\]
(24)
Combining the OASI and DI trust funds
When Combine OASI + DI funds is enabled, the simulator pools OASI and DI reserves, annual income, interest, and program costs. The pooled balance is then used for the displayed depletion date, trust-fund ratio, cash flow, and debt calculation. When the option is disabled, those selected-fund measures use OASI alone.
Simulator trust-fund ratio
- \(F_{t-1}^{sel}\)
- Selected opening trust-fund balance: OASI alone or combined OASDI if the user pools the funds.
- \(E_t^{sel}\)
- Selected modeled benefit spending: OASI benefits alone or OASI plus DI spending.
- \(q_t\)
- Simulator trust-fund ratio.
\[
q_t=\frac{F_{t-1}^{sel}}{E_t^{sel}}
\]
(25)
9 · 75-year actuarial balance
Present-value solvency measure
Present-value taxable payroll and non-interest cash flow
- \(TP_t\)
- Modeled taxable payroll in year \(t\).
- \(CF_t^{sel}\)
- Selected OASI or combined OASDI cash flow, including interest.
- \(I_t^{sel}\)
- Interest component of selected cash flow.
- \(r\)
- Constant real discount rate used for the actuarial-balance calculation; baseline 2.3 percent.
- \(j=t-2025\)
- Discount exponent, so 2026 is discounted one period.
- \(PV(TP)\)
- Present value of taxable payroll over 2026–2100.
- \(PV(NI-C)\)
- Present value of non-interest income minus modeled cost.
\[
PV(TP)=\sum_{t=2026}^{2100}\frac{TP_t}{(1+r)^{t-2025}}
\]
(26)
\[
PV(NI-C)=\sum_{t=2026}^{2100}\frac{CF_t^{sel}-I_t^{sel}}{(1+r)^{t-2025}}
\]
(27)
Actuarial balance
- \(F_0\)
- Beginning trust-fund reserves: OASI alone or OASI plus DI for a combined calculation.
- \(E_{2100}^{target}\)
- One year of modeled 2100 scheduled program cost used as the terminal reserve target.
- \(PV(F_T^*)\)
- Present value of the terminal reserve target.
- \(AB\)
- 75-year actuarial balance as a share of taxable payroll.
\[
PV(F_T^*)=\frac{E_{2100}^{target}}{(1+r)^{75}}
\]
(28)
\[
AB=\frac{PV(NI-C)+F_0-PV(F_T^*)}{PV(TP)}
\]
(29)
10 · Public-debt measure
Increases in public debt caused by Social Security
Financing assumption. After trust-fund depletion, the model assumes the federal government uses general-fund transfers to continue paying scheduled Social Security benefits rather than allowing benefits to be automatically reduced to the level payable from incoming program revenue.
Incremental debt recursion
- \(D_{t-1}\)
- Incremental public debt entering year \(t\).
- \(CF_t^{sel}\)
- Selected Social Security cash flow; a deficit is negative.
- \(B_t^{SWF}\)
- New sovereign-wealth-fund borrowing, nonzero only in the fund's creation year.
- \(\tilde D_t\)
- Debt after the year's primary financing gap and SWF borrowing but before debt interest.
- \(r_t\)
- Effective real interest rate.
- \(D_t\)
- End-of-year incremental public debt.
\[
\tilde D_t=D_{t-1}-CF_t^{sel}+B_t^{SWF}
\]
(30)
\[
D_t=\tilde D_t+\max\{0,r_t\tilde D_t\}
\]
(31)
11 · Automatic stabilizers
Feedback rules tied to the prior-year trust-fund ratio
Stabilizers respond to the prior year's simulator trust-fund ratio beginning in the user-selected stabilizer start year. A deadband prevents constant small adjustments around the target. Priority determines how many consecutive years outside the deadband must occur before each instrument begins responding.
Deviation region and activation streak
- \(q_{t-1}\)
- Prior-year simulator trust-fund ratio.
- \(t_S\)
- User-selected stabilizer start year. Stabilizer conditions are evaluated only for \(t\ge t_S\).
- \(q^*\)
- Target trust-fund ratio; dormant default 3.0.
- \(\delta\)
- Deadband half-width; dormant default 0.05.
- \(L_t\)
- Indicator equal to 1 when reserves are below the lower band.
- \(H_t\)
- Indicator equal to 1 when reserves are above the upper band.
- \(n_t\)
- Number of consecutive years outside the deadband.
\[
L_t=\mathbf{1}\{q_{t-1}<q^*-\delta\},\qquad
H_t=\mathbf{1}\{q_{t-1}>q^*+\delta\}
\]
(32)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
L_t=\mathbf{1}\{2.80<3.00-0.05\}=1,
\qquad
H_t=\mathbf{1}\{2.80>3.00+0.05\}=0
\]
Policy settings used in this example: target trust-fund ratio = 3.00; deadband = 0.05; prior-year trust-fund ratio = 2.80. Because 2.80 is below the 2.95 lower threshold, the low-reserve condition is activated.
\[
n_t=
\begin{cases}
n_{t-1}+1,&L_t+H_t=1,\\
0,&L_t+H_t=0.
\end{cases}
\]
(33)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
n_t=n_{t-1}+1=1+1=2
\]
Policy settings used in this example: the trust-fund ratio remains outside the deadband for a second consecutive year. The prior activation streak is 1 year, so the current streak increases to 2 years.
Instrument update rules
- \(m_t^S\)
- Benefit-stabilizer multiplier, bounded between 0 and 1.
- \(a_t^S\)
- Cumulative retirement-age stabilizer adjustment in years, bounded below by zero.
- \(z_t^S\)
- Cumulative payroll-tax stabilizer adjustment, bounded below by zero.
- \(s_B,s_R,s_T\)
- Maximum annual adjustment speeds for benefits, retirement age, and payroll tax.
- \(p_B,p_R,p_T\)
- Activation priorities; an instrument can move when \(n_t\ge p_j\).
\[
\begin{aligned}
m_t^S=
\min\Bigg\{1,\,
\max\Bigg\{0,\,
&m_{t-1}^S-s_B L_t\mathbf{1}\{n_t\ge p_B\}\\
&+s_B H_t\mathbf{1}\{n_t\ge p_B\}
\Bigg\}\Bigg\}
\end{aligned}
\]
(34)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
\begin{aligned}
m_t^S
&=\min\{1,\max\{0,0.980-0.005(1)(1)+0.005(0)(1)\}\}\\
&=0.975,\\[5pt]
b_t^{S}
&=(0.975)(\$30{,}000)=\$29{,}250.
\end{aligned}
\]
Policy settings used in this example: benefit stabilizer enabled; benefit-stabilizer priority threshold satisfied; prior stabilizer multiplier = 0.980; maximum annual benefit adjustment = 0.5%; trust-fund ratio is below the target band. The multiplier therefore falls from 0.980 to 0.975. If the beneficiary's otherwise scheduled annual benefit is $30,000, the stabilizer reduces the payable benefit to $29,250. Relative to the $30,000 scheduled benefit, the cumulative stabilizer reduction is $750 per year. The prior 0.980 multiplier would have produced a $29,400 benefit, so this year's additional stabilizer action reduces the annual benefit by a further $150.
\[
\begin{aligned}
a_t^S=\max\!\Big[0,&\,
a_{t-1}^S+s_R L_t\mathbf{1}\{n_t\ge p_R\}\\
&-s_R H_t\mathbf{1}\{n_t\ge p_R\}
\Big]
\end{aligned}
\]
(35)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
a_t^S=\max\{0,0.25+0.25(1)(1)-0.25(0)(1)\}
=0.50
\]
Policy settings used in this example: retirement-age stabilizer enabled; retirement-age priority threshold satisfied; prior cumulative stabilizer adjustment = 0.25 year; maximum annual retirement-age adjustment = 0.25 year; trust-fund ratio remains below the target band. The cumulative adjustment rises to 0.50 year.
\[
\begin{aligned}
z_t^S=\max\!\Big[0,&\,
z_{t-1}^S+s_T L_t\mathbf{1}\{n_t\ge p_T\}\\
&-s_T H_t\mathbf{1}\{n_t\ge p_T\}
\Big]
\end{aligned}
\]
(36)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
z_t^S=\max\{0,0.10+0.10(1)(1)-0.10(0)(1)\}
=0.20
\]
Policy settings used in this example: payroll-tax stabilizer enabled; payroll-tax priority threshold satisfied; prior cumulative payroll-tax adjustment = 0.10 percentage point; maximum annual adjustment = 0.10 percentage point; trust-fund ratio remains below the target band. The cumulative adjustment rises to 0.20 percentage point.
Automatic inflation-indexing trigger
- \(\bar q\)
- User-selected trust-fund-ratio trigger; dormant default 1.0.
- \(g_t^B\)
- Scheduled real benefit growth from equation (15).
- \(\tilde g_t^B\)
- Effective real benefit growth after the trigger.
\[
\tilde g_t^B=
\begin{cases}
\min\{0,g_t^B\},&q_{t-1}<\bar q,\\
g_t^B,&q_{t-1}\ge\bar q.
\end{cases}
\]
(37)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
\tilde g_t^B=\min\{0,0.009576\}=0
\qquad\text{when }q_{t-1}=0.80<\bar q=1.00
\]
Policy settings used in this example: automatic inflation indexing is enabled; trigger trust-fund ratio = 1.00; prior-year trust-fund ratio = 0.80; scheduled real benefit growth = 0.9576%. Because 0.80 is below the trigger, positive real benefit growth is temporarily capped at 0%.
When positive real benefit growth is frozen, benefits can still retain inflation protection; in real 2026 dollars, full inflation indexing corresponds to zero real growth.
12 · Individually funded accounts
Contribution diversion and delayed payout
Contribution-rate phase-in
- \(f_0\)
- Initial funded-account contribution rate when the feature is enabled.
- \(f^*\)
- Target funded-account contribution rate.
- \(t_F\)
- Funded-account start year.
- \(H_F\)
- Contribution phase-in period.
- \(\lambda_t^F\)
- Share of the transition from the initial to the target funded-account contribution rate completed by year \(t\), bounded between 0 and 1.
- \(f_t\)
- Contribution rate in year \(t\).
\[
\lambda_t^F=
\min\left\{1,\,
\max\left\{0,\frac{t-t_F}{H_F}\right\}
\right\}
\]
(38a)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
\lambda_{2035}^{F}
=\min\left\{1,\max\left\{0,\frac{2035-2030}{10}\right\}\right\}
=0.50
\]
Policy settings used in this example: funded accounts enabled; contribution start year = 2030; phase-in period = 10 years. By 2035, 50% of the contribution-rate transition has been completed.
\[
f_t=f_0+(f^*-f_0)\lambda_t^F
\]
(38b)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
f_{2035}=0+(0.02-0)(0.50)=0.01=1.0\%
\]
Policy settings used in this example: initial funded-account contribution = 0%; target contribution = 2% of payroll; implementation share = 50%. The effective contribution rate in 2035 is therefore 1%.
Aggregate diversion and income-group allocation
- \(TP_t\)
- Modeled taxable payroll.
- \(D_t^F\)
- Aggregate payroll diverted from PAYG to funded accounts.
- \(e_g\)
- Relative earnings factor for income group \(g\).
- \(w_g\)
- Income-group weight.
- \(c_{g,t}\)
- Funded contribution per covered worker assigned to group \(g\).
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
D_t^F=0.01(\$14.0\text{ trillion})
=\$140\text{ billion}
\]
Policy settings used in this example: funded-account contribution rate = 1% of taxable payroll; taxable payroll = $14 trillion. The reform diverts $140 billion from PAYG financing into individual funded accounts.
\[
c_{g,t}=s_ty_tf_t\frac{e_g}{\sum_jw_je_j}
\]
(40)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
\begin{aligned}
\sum_j w_je_j
&=0.20(0.25)+0.25(0.45)+0.32(1.00)+0.18(1.60)+0.05(2.452)\\
&\approx 0.893,\\[4pt]
c_{H,t}
&=(0.90)(\$80{,}000)(0.01)\frac{1.60}{0.893}\\
&\approx \$1,289.89
\end{aligned}
\]
Policy settings used in this example: taxable-payroll share = 90%; real payroll per worker = $80,000; funded-account contribution rate = 1%; High Income earnings factor = 1.60; beneficiary-group weights = 20%, 25%, 32%, 18%, and 5%. The High Income group receives an illustrative annual contribution of approximately the amount shown above after normalization across all five groups.
The relative earnings factors used by the model are 0.25, 0.45, 1.00, 1.60, and the 2026 taxable maximum divided by the 2026 Average Wage Index.
Funded-account payout
- \(N_F\)
- Holding period between contribution and payout.
- \(r_M\)
- Assumed real market return.
- \(p_{g,t}^{F}\)
- Funded-account payout per worker for group \(g\) in year \(t\).
\[
p_{g,t}^{F}=c_{g,t-N_F}(1+r_M)^{N_F},\qquad t\ge t_F+N_F
\]
(41)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
p_{g,t}^F
=\$1{,}500(1+0.045)^{30}
\approx \$5,618
\]
Policy settings used in this example: annual funded-account contribution entering this cohort calculation = $1,500; funded period = 30 years; real market return = 4.5% per year; payout is modeled as a lump sum at the end of the funded period.
Policy experiment The model treats the payout as a lump-sum value after the selected holding period. It does not model administration costs, portfolio risks, or taxes.
13 · Sovereign wealth fund
Borrowed principal, investment return, and trust-fund transfer
Sovereign-wealth-fund recursion
- \(S_t^{open}\)
- Opening SWF balance in year \(t\), including initial borrowed principal in 2026.
- \(r_M\)
- Assumed real market return.
- \(\rho\)
- Annual transfer rate applied to the opening fund balance.
- \(X_t^{SWF}\)
- Transfer from the SWF to the trust fund.
- \(S_t\)
- End-of-year SWF balance.
\[
X_t^{SWF}=\min\!\left[S_t^{open}(1+r_M),\;\rho S_t^{open}\right]
\]
(42)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
X_t^{SWF}
=\min\{\$1.0\text{T}(1.045),\,0.03(\$1.0\text{T})\}
=\$30\text{B}
\]
Policy settings used in this example: sovereign wealth fund enabled; opening fund balance = $1.0 trillion; real market return = 4.5%; annual transfer rate = 3% of the opening balance; payout delay has already elapsed. The annual transfer is $30 billion.
\[
S_t=S_t^{open}(1+r_M)-X_t^{SWF}
\]
(43)
Illustrative Example
Hover or click to show an illustrative numerical substitution
\[
S_t=\$1.0\text{T}(1.045)-\$30\text{B}
=\$1.015\text{T}
\]
Policy settings used in this example: opening sovereign wealth fund balance = $1.0 trillion; real market return = 4.5%; annual transfer = $30 billion. After investment earnings and the transfer, the year-end fund balance is $1.015 trillion.
Equation (42) applies only after the selected payout delay. Initial SWF borrowing is also added to the simulator's measure of increases in public debt caused by Social Security.
14 · Validation targets
Baseline results compared with the 2026 Trustees Report
The table below compares the simulator's default SSA Intermediate baseline with three key outcomes reported by the Social Security Administration.
| Outcome |
Simulator baseline |
2026 Trustees Report |
Difference |
| OASI trust-fund depletion |
2032 |
Q4 2032 |
Same calendar year |
| OASI 75-year actuarial balance |
−4.53% of taxable payroll |
−4.55% of taxable payroll |
+0.02 percentage point |
| Combined OASDI 75-year actuarial balance |
−4.40% of taxable payroll |
−4.42% of taxable payroll |
+0.02 percentage point |
15 · Source tables & data
Primary references
2026 OASDI Trustees Report — Tables V.A1, V.A2, and V.A4
Table V.A1 provides the SSA fertility assumptions,
Table V.A2 provides the SSA immigration assumptions, and
Table V.A4 provides period life expectancy.
These tables supply the demographic assumptions used to construct the SSA Intermediate, Low Cost, and High Cost scenarios.
2026 OASDI Trustees Report — Table IV.B4
Covered Workers and Beneficiaries.
Source for the 2026 covered-worker, OASI-beneficiary, and DI-beneficiary calibration targets.
2026 OASDI Trustees Report — Tables IV.A1, IV.A2, and IV.B2
Tables IV.A1 and IV.A2 provide the 2026 trust-fund income, cost, taxation-of-benefits revenue, and reserve values used by the model.
Table IV.B2 provides the long-run taxation-of-benefits income rate used to calibrate the benefit-tax revenue path.
2026 OASDI Trustees Report — Table II.C1
Key assumptions and summary measures.
Source for the model's baseline inflation, real covered-wage growth, and real interest-rate assumptions.
2026 OASDI Trustees Report — Section V.C and Tables V.C3, V.C6, and V.C7
Program-specific assumptions and methods provides the current-law full retirement age, payroll-tax rates, contribution and benefit base, and taxable-ratio discussion.
Table V.C7 provides the scaled-worker earnings categories and scheduled benefit structure used to define the model's income groups.
2026 Trustees Report Summary — Table 10
Trustees Report Summary.
Source for the official OASI trust-fund depletion benchmark used in the baseline validation comparison.
SSA Monthly Statistical Snapshot — May 2026, Table 2
Social Security benefits, May 2026.
Source for the average monthly OASI and DI benefit values used to calibrate the model's starting benefit levels.
U.S. Census Bureau — International Database
International Database (IDB).
Source for the Census fertility and life-expectancy assumptions. Because the Census source used for the scenario does not provide immigration assumptions, the model uses United Nations Median immigration.
United Nations — World Population Prospects 2024
World Population Prospects 2024.
Source for the common 2026 population-by-age baseline used by every demographic scenario and for the year-by-year population-by-age projections used directly in the United Nations scenarios.
Avenir Health — Spectrum/DemProj
Spectrum/DemProj.
Used to generate annual population-by-age paths for the SSA, CBO, and Census scenarios from their fertility, life-expectancy, and immigration assumptions.