Skip to content

Conversion and Withdrawal Optimizer

FinZot can search for a better set of conversion and withdrawal rules for one scenario. It tries hundreds of rule sets, runs the full plan for each one, and keeps the best. The result is written back as ordinary rules in the scenario’s own Roth Conversions and Withdrawals lists. Nothing about those rules is special. You can read them, edit them, or delete them like any rule you typed yourself. The optimizer produces plan edits, not a number. Everything the rest of the reference says about a rule is exactly what the optimized plan will do.

The optimizer runs in your browser and usually takes a few seconds.

The button is labelled Optimize conversions & withdrawals in the quick-edit panel and Optimize under the Optimizer Impact card on the results page. It offers two choices.

  • Optimize into a new scenario copies the scenario and applies the winner to the copy. The original is left unchanged, so you can compare the two side by side (scenarios).
  • Optimize this scenario applies the winner in place. You can undo it through history.

Either way, the winner replaces every Roth conversion in the scenario, whether you entered it or a previous run did. It also replaces the withdrawals a previous run added. Your own withdrawals and distributions are never touched. The optimizer adds to them. If no rule set beats leaving the plan alone, the run makes no change.

FinZot cuts the projection into a handful of periods, split at the events that change the plan’s tax picture, such as retirement, turning 60, Medicare at 65, and the start of RMDs. Those four splits are always kept. Other splits, such as the IRMAA lookback at 63 or a Social Security start, are dropped first when the period count is capped. In each period it makes three choices.

  • How much to convert. Convert nothing, or convert up to a tax threshold. The thresholds are the same tax-targeted fill targets you can set by hand: a federal or state bracket, an IRMAA tier, or an FPL multiple (roth conversions and withdrawals).
  • Where spending comes from. Leave the default order alone, or fund spending from pre-tax accounts up to a tax threshold, or add a taxable-then-Roth pair of As needed withdrawals so that spending above the threshold stops pushing ordinary income through the brackets.
  • How fast to drain an inherited pre-tax account. Take only what the Ten Year Rule forces, or realize inherited income up to a tax threshold every year. This levels the 10-year cliff instead of paying it in one year. Inherited accounts cannot be converted, which is why they need a choice of their own (account types).

The three choices interact, and searching them together is the point. One rule set can drain an inherited IRA to one threshold, fund spending from owned pre-tax up to another, and convert above that.

Every rule set is a full plan run. FinZot writes the rules into a copy of the scenario and runs the whole projection, including taxes, IRMAA, ACA subsidies, penalties, and RMDs. Whatever the reference says a rule does is exactly what the search sees.

The score is lifetime spending plus what is left at the end, in today’s dollars. Lifetime spending is the sum of every year’s spending, deflated to plan-start dollars. What is left at the end is the final year’s net worth after an estimated tax on the remaining pre-tax balance, at the Heir tax rate. This is the same after-tax legacy figure the result summary shows. The rate is 25% by default and you can change it. A higher rate makes converting worth more (people and life events).

A plan that runs out of money always loses to one that does not. If two plans have similar outcomes, FinZot tries to pick the simpler one.

The winner is not just the best plan on the detailed projection, which is one market path. FinZot also re-runs its finalists on the plan’s own Monte Carlo trials (projections & monte carlo), and it never ships a plan that runs out of money in more trials than changing nothing does.

Every rule the winner writes is ordinary, editable, and named for what it does. A conversion is named like Roth optimizer: fill to 22% federal bracket (2031–2036). A withdrawal is named like Order optimizer: spend pre-tax to fill to 24% federal bracket (2037–2042). Withdrawals that fund spending carry the Spending shortfall cap, so they never draw more than the year needs. The taxable-then-Roth pair is written as two As needed withdrawals on the whole taxable group and the whole Roth group, after your own As needed entries.

Where a period boundary is a retirement milestone, an age, or a life event, the rule is written with that timing (milestones and timing). If you later move retirement, those rules move with it. The rules do not re-optimize. The thresholds the winner chose stay as written until you run the optimizer again, so run it again after any edit that changes the plan’s tax picture.

A written rule can realize $0 in the detailed projection and still be doing work in the trials. The taxable-then-Roth pair is the usual case. It only engages when spending exceeds the threshold.

  • It does not change spending, income, Social Security claiming age, retirement date, asset allocation, contributions, or market assumptions.
  • It does not search charitable giving, SEPP §72(t) schedules, or QCDs. Whatever the scenario already says about those is simulated as written.
  • It converts only from owned traditional IRAs, 401(k)s, 403(b)s, and 457(b)s. A scenario with no owned pre-tax account has nothing to search, and the run makes no change. It also skips an account a SEPP §72(t) schedule locks. A period the schedule covers from start to finish gets no conversion rule at all.
  • It optimizes one scenario at a time, for the one score above. There is no mode for lowest lifetime tax or highest success rate.
  • It is not a proof of the best possible plan. It searches the rule shapes described above and stops when it stops improving.