How the Engine Works
What happens inside each year of the projection, in order.
1
Income Stacking
Each year begins by collecting all income sources: W2 wages, Social Security, pension, part-time wages, and other income. Investment income (dividends, interest) is added based on each holding's mode and yield. This forms gross income.
2
SS Taxability
Up to 85% of Social Security can be taxable. The engine calculates provisional income (AGI + 50% of SS) and applies the statutory thresholds ($32K/$44K for MFJ; $25K/$34K for single) to determine how much SS enters taxable income. These thresholds never inflate.
3
Spending Target & Draws
The engine determines how much must be drawn from your portfolio to meet your spending target after accounting for all income. In bracket/IRMAA mode, it lifts the target to the selected ceiling. Draws follow your withdrawal order and per-account caps.
4
Roth Conversion
After spending is funded, the engine calculates remaining bracket or IRMAA room and fills it with a Roth conversion (401k → Roth). Conversion tax is paid from your configured source (cash, withheld, taxable, or income). The full converted amount enters the Roth bucket.
5
Tax Calculation
Federal ordinary tax, LTCG tax, state tax, and IRMAA surcharges are all calculated on the combined income. MAGI is computed and checked against inflating IRMAA tiers (2%/yr). Tax brackets inflate 2.5%/yr from the 2025 base.
6
Balance Update
Each holding grows by its configured rate and yield. Inflows (contributions, surplus sweeps, Roth deposits) and outflows (draws, conversion transfers) are applied. The ending balance becomes the opening balance for the next year.