Building a Roth Conversion Strategy Engine
This week I shipped three major tax optimization tools: a Roth Conversion Strategy Engine, a Tax Bracket Filling tool, and a Lifetime Tax Map visualization. This is the deepest I've gone into retirement tax planning—and it's also the first time I'm gating features behind Pro subscriptions. Here's what I learned building advisor-grade tax tools for early retirees.
Why Roth Conversions Need Better Tools
Most Roth conversion calculators suck. They ask for your current tax rate, conversion amount, and spit out: "You'll pay $X in taxes." Cool. But that's not strategy—that's arithmetic.
The strategic question is: When should you convert, how much, and over how many years? If you retire early at 55, you might have 10+ years before Social Security and RMDs begin. During this window, your taxable income could drop to near-zero. That's your opportunity to convert $500K+ from Traditional to Roth IRA while paying 12-22% tax rates—rates you'll never see again once Social Security and RMDs kick in at 24-32%.
But how do you model this? You need to project decades of income, account for healthcare subsidy cliffs (ACA MAGI limits), avoid Medicare IRMAA surcharges, calculate future RMDs, and compare lifetime tax burden across different strategies. That's what I built.
The Gap Year Arbitrage
If you worked at 24-32% marginal rates during your career, but retire early and have gap years at 10-22% rates, you can arbitrage decades of tax savings by converting during the gap. A $50K conversion at 12% costs $6K now. If you don't convert, that $50K becomes a $15K RMD at 24% for $3.6K in taxes—plus you lost decades of tax-free growth. This is why early retirement changes everything.
Building the Projection Engine
The core of the tool is a useMemo hook that calculates year-by-year projections from current age through life expectancy. For each year, it:
1. Determines if you're retired, receiving Social Security, or subject to RMDs
2. Calculates consulting income (if still working) adjusted for inflation
3. Applies the selected conversion strategy (fixed, bracket-fill, gap-year optimized)
4. Sequences withdrawals: Taxable → Traditional IRA → Roth (tax efficiency)
5. Calculates federal taxes using progressive 2026 tax brackets
6. Checks ACA subsidy eligibility and IRMAA thresholds
7. Grows remaining balances at expected return rate
This runs client-side in the browser—no API calls, no server computation. It's fast enough to recalculate on every input change, which makes the interface feel instant.
Key Design Decision: Client-Side Computation
I could have built this as a server-side API, but client-side projection engines are underrated. No latency, no rate limits, works offline, scales infinitely. The trade-off is file size—the Roth Conversion page is 1,450 lines of TypeScript—but for a tool this complex, that's fine. Users don't switch pages constantly; they tweak inputs and watch projections update in real-time.
Why Variable Income Matters
Most retirement calculators assume stable income—$150K from age 30-55, then $0 after retirement. But consultants don't work like that. You might have:
- • High-income years ($200K-$300K) when landing big contracts
- • Low-income years ($50K-$80K) between gigs or semi-retired
- • Gap years ($0-$20K) during extended travel or sabbatical
If you're converting $50K during a $250K income year, you're paying 32% tax on that conversion. But if you wait for a $50K income year, that same conversion costs 12%. The strategy adapts based on your income timeline.
I added variable income scheduling to the tool—you can input expected income by year, and the optimizer identifies low-income windows for aggressive conversions. This is especially valuable for consultants who have control over project timing and can engineer low-income years strategically.
The Healthcare Subsidy Cliff
If you retire before 65 (Medicare eligibility), you're buying insurance on the ACA marketplace. Your premiums depend on MAGI (Modified Adjusted Gross Income). In 2026, subsidy eligibility cuts off around $60K for single filers and $80K for married filing jointly.
Here's the brutal math: Converting $10K might push your MAGI from $58K to $68K, which eliminates your healthcare subsidy. You save $1,200 in taxes on the conversion (12% bracket), but lose $12,000 in annual subsidies. Net effect: You just paid $10,800 to convert $10K.
The tool checks every projection year for subsidy eligibility and flags conversions that would trigger the cliff. It's a warning system—I'm not telling you what to do, just showing you the consequences of different strategies.
Pre-Medicare (Under 65)
Keep MAGI below $60K/$80K to maintain ACA subsidies. Every dollar above the cliff costs you thousands in lost subsidies. Conversions need to be carefully sized.
Post-Medicare (65+)
Watch IRMAA thresholds ($106K single, $212K married). Excess income triggers Medicare premium surcharges of $800-$6,000/year. IRMAA uses a 2-year lookback, so plan ahead.
First Time Gating Features
This is the first tool where I'm implementing Pro feature gating. Free users get the full visualization and educational content—they can see the power of the tool. But the strategic insights and detailed year-by-year projections are Pro-only.
The gating philosophy: Show, don't hide. Free users see grayed-out sections with lock icons and "Pro Only" badges. They can read the section headers and understand what they're missing. The upgrade CTA explains the benefits clearly: "Get personalized analysis of optimal conversion windows, lifetime tax savings, RMD reduction estimates, and break-even timelines."
Implementation was straightforward—fetch subscription status from /api/stripe/subscription, check entitlement_tier, and conditionally render based on isPro flag. I applied the same pattern to all three tax tools launched this week.
What's Gated vs What's Free
✓ Free for Everyone:
- • Educational guide
- • Input controls
- • Main visualization chart
- • Helper education panels
🔒 Pro Only:
- • Strategic insights analysis
- • Lifetime tax savings calculator
- • Year-by-year detailed table
- • CSV export functionality
Two More Tax Tools This Week
The Roth Conversion tool was just the beginning. I also shipped:
Tax Bracket Filling Strategy Engine
Models 8 different optimization strategies: baseline, Roth-only, gains-only, mixed strategy, variable income, gap year, FEIE exit, and pre-Medicare planning. The idea is to identify years where you're underutilizing tax brackets—maybe you're in the 12% bracket but only using 40% of it. That's free capacity for Roth conversions or capital gains harvesting.
- • Full-page visualization showing how income layers affect bracket utilization
- • Healthcare subsidy cliff detection and IRMAA threshold warnings
- • Advisory summary with color-coded insights on underutilized years
- • Educational panels on bracket mechanics and common mistakes
Lifetime Tax Map Visualization Engine
This is the most comprehensive tool—it unifies everything (Roth conversions, bracket filling, capital gains, withdrawals, Social Security) into a single lifetime timeline showing cumulative tax exposure across decades. The key insight: most people optimize taxes one year at a time, but lifetime tax minimization requires looking at 40-60 year windows.
- • Multi-layer timeline chart showing income streams stacked over retirement horizon
- • Cumulative lifetime taxes line tracking total tax burden from today through life expectancy
- • Gap year shading highlighting optimal conversion windows
- • Reference lines for retirement, Medicare, RMDs, and Social Security claim age
What I Learned & What's Next
Building these tools taught me that tax optimization for early retirees is fundamentally different from traditional retirement planning. The gap years between career end and Social Security/RMDs are goldmines, but most calculators don't model them properly. Variable income, healthcare subsidies, IRMAA thresholds—these aren't edge cases for consultants and location-independent workers. They're the norm.
The Pro gating feels right. Free users get enough to understand the concepts and run basic projections. Pro users get the analysis they need to make $100K+ tax decisions confidently. I'm not hiding the calculator behind a paywall—I'm gating the strategic insights that take serious computational work to generate.
Next up: I want to add state tax modeling (some states don't tax retirement income), scenario comparison (run multiple strategies side-by-side), and potentially a Monte Carlo mode for sequence of returns risk. But for now, these three tools are the most comprehensive early retirement tax planning suite I've seen—and they're live for SoloFI users today.
Read next
Questions or feedback on these tools? I'm actively iterating based on user input. Reach out via the feedback widget in the app or email justin@solofi.io.