Mathematically correct
Detailed IRS tables and impact functions, audited in code and pinned by tests — not spreadsheet formulas that silently drift out of date.
For DIYers · Hands-on financial planning
The free web calculators skip the tax detail and hide their assumptions behind a black box. The alternative is a spreadsheet you maintain forever — where you are the one hand-updating the tax tables every January. FinPlan is the projection engine in between: real tax math — federal, all 50 states + DC, and the local layers on top — assumptions you can read and change, and answers you can show your work on. You drive it through your own assistant.
Composable, not canned
FinPlan isn't a fixed set of screens someone decided you need. It's a kit of typed tools — tax, projections, RMDs, Social Security, mortgages — that your assistant composes on the fly. You bring the question; we make sure the math underneath is correct, fast, and usable. You're never boxed into the handful of questions we thought were important.
“Can I go part-time at 55, exercise a tranche of ISOs without tripping AMT, harvest gains in the low-income years, and still have two 529s funded?”
No one designed a screen for that. Your assistant just reaches for the tools it needs and hands you a number you can show your work on. The four analyses below are exactly this — the kit, composed. Yours can be any question you can phrase.
Detailed IRS tables and impact functions, audited in code and pinned by tests — not spreadsheet formulas that silently drift out of date.
Closed-form projections by default; full Monte Carlo when path dependency or precision demands it. Same tool call — you pick the method.
Typed JSON tools your assistant calls directly — no prompt-engineering, no screen-scraping, no hallucinated numbers.
Model your actual finances
A web form gives you one box: monthly contribution. But your money doesn't arrive that way — it's a base plus a $60k bonus every quarter, an RSU vest, a windfall. FinPlan takes the real cashflow timeline, lumps and all, and the balance changes the way it actually would.
Same closed-form engine your assistant calls, driven by a per-month
CashflowTimeline — so a $60k quarter compounds from the quarter it lands, a
three-month sabbatical flattens the curve right where it happens, and the band is the real
return spread around it all. No single contribution box can say any of that.
The hard problems
The math that actually moves your outcome lives in the corners a web form never modeled — and most of it isn't decades out. Debt versus investing, a home down payment, a stretch of lumpy income, equity comp, Roth timing. FinPlan composes the underlying tools to answer them in one conversation.
Spotlight · equity comp
Model an ISO exercise with the AMT impact in the exercise year, cash needed at strike, qualifying vs disqualifying disposition outcomes, and the capital-gains math once the holding period clears. It reads like it was written by someone who has actually done one.
Explore equity tools →No web calculator models AMT at all. FinPlan runs the real exemption, phaseout, and 26/28% math — so you can see the exact exercise size that first triggers it and size the exercise to the tax you're willing to pay.
Would an extra $500 a month do more against the mortgage or in the brokerage?
composes mortgage · accounts · projectionsAm I on track for the house down payment if I redirect this year's bonus to it?
composes goals · accounts · projectionsIf I take a year off, can I harvest capital gains in the low-income year?
composes tax · accounts · projectionsShould I convert to Roth now, before RMDs push me into a higher bracket?
composes tax · accounts · rmds · projectionsIn a gap year, gains stack on top of ordinary income against the real 0% LTCG ceiling ($98,900 MFJ, less your $40k income). FinPlan finds the exact headroom to harvest tax-free — a lever no single-number tool exposes.
A multi-year plan, not a single year: each low-income year before RMDs, convert just enough to fill the bracket — more when your base income is low, less when it's higher. FinPlan sizes every year off the real 2026 tables.
Your data
Your plan is never locked in a proprietary schema or a cloud you can't reach. You can leave any time with everything, keep a private history of how your plan changed, and never hand over a bank login to do it. The mechanics are deliberately boring:
Your whole financial state is one plain JSON document — the same format going in and coming out. Export it, open it in any editor, back it up however you like.
It's a text file, so you can commit it to git: diff two versions, grep for an account, watch your plan change over the years.
FinPlan never asks for a bank login — balances are whatever you or your assistant enter, with no aggregator connection holding your credentials. Run fully local and it never touches our servers at all.
Fully local
Point your assistant at the local MCP server and the tools run against your own files over stdio — our servers never enter the picture. It's the same engine and the same tool calls, just executing on your machine.
A single self-contained binary — no Python toolchain, nothing to install — is on the way. Until it ships, the local MCP server is the fully-local path today.
Whose assumptions?
The first question a serious planner asks a calculator is "whose return assumptions?" The usual answer is a shrug behind a black box. FinPlan ships a default for every one — return, volatility, inflation, glide path — written down on /methodology so you can read it. Disagree with any of them? Pass your own and every projection re-runs against it. No fork, no spreadsheet surgery. Just a different number.
Expected return and volatility per asset class. The defaults are published on /methodology; pass your own and every projection re-runs against them.
One assumption drives real-vs-nominal across the whole projection. Change it once and the after-tax, goal, and RMD math all follow.
Age-based allocation isn't a fixed template. Set your own equity/bond glide, per account, and the portfolio math respects it.