Embed the Roth Conversion Calculator
Two lines of HTML puts a working 2026 conversion calculator on your page. It is free, it has no dependencies, and it sends nothing to any server.
Built for advisors, CPA firms, credit unions, and other estate planning attorneys. If your readers include people planning retirement withdrawals, take it and use it.
Paste This
<div data-stepup-roth></div>
<script src="https://stepuplaw.com/embed/roth-conversion.js" async></script> That is the whole integration. The script looks for every element carrying data-stepup-roth and renders a calculator into each one, so a single script tag covers as many placements as you want.
If You Cannot Paste a Script Tag
Wix, Squarespace, Google Sites and most page builders will not let you add a script tag, but every one of them has an element that embeds another page by URL. Point it at this address and you get the same calculator.
https://stepuplaw.com/embed/roth-frame/ In Wix the element is called Embed a Site, in Squarespace it is a Code block set to embed, and in Google Sites it is Embed by URL. Set the height to about 1,100 pixels and the width to full. The page tells the parent window how tall it is as the visitor works, so a builder that can size to content will follow along.
Working Copy, Right Here
This is the real widget, running from the same file you would embed.
What We Ask, Which Is Not a Condition
The code is plain MIT. It asks nothing of you beyond keeping the copyright notice in the source, and you can restyle it, translate it, fork it, or ship it inside a commercial product without telling us.
Here is the ask, and it is only an ask. Please leave the credit line the widget renders at the bottom, naming Kevin D. Klagge, Esq. with a plain link to stepuplaw.com. If you need it gone, data-surc-credit="off" on the container removes it.
We wrote this for our own clients, letting your visitors use it costs us nothing, and that link is what makes maintaining it worth doing. It is also the practical way corrections travel. The IRS publishes new figures every fall, and sites running the hosted script get them the day we verify them. The full text is in the LICENSE file.
Matching Your Colors
Set any of these on the container and the widget follows.
[data-stepup-roth] {
--surc-brand: #1F4D3A; /* buttons and accents */
--surc-fg: #14201A; /* body text */
--surc-mut: #475569; /* muted text */
--surc-line: rgba(71,85,105,.25); /* hairlines inside the card */
--surc-edge: #334155; /* outer frame and section rules */
} Questions
What Does the Widget Cost?
Nothing. There is no account, no key, no usage limit, and no paid tier. The code is MIT licensed, which asks nothing of you beyond keeping the copyright notice in the source. We do ask, without requiring it, that you leave the credit line at the bottom of the widget in place with its link to stepuplaw.com. That link is what makes maintaining this worth doing, and it is how corrections reach you when the IRS publishes next year’s figures.
Does It Send Anything to a Server?
No. After the script file loads, the widget makes no network calls at all. There is no analytics, no tracking pixel, no cookie, and no form submission. Incomes and birth years typed into it stay in the visitor’s browser and are gone when the tab closes. It never asks for a Social Security number or an account number, and you should not add fields for them.
What Does the Widget Actually Compute?
The visitor enters a filing status, birth year, ordinary income, and optionally qualified dividends and long-term gains, Social Security benefits and a conversion amount. The widget prices the conversion against the 2026 federal brackets and shows the pieces flat calculators miss, meaning the extra Social Security that becomes taxable, the dividends and long-term gains a conversion pushes into a higher rate, the clawback of the temporary senior deduction, the Medicare premium cliffs the conversion sets two years out, and how many years remain before required distributions begin. It also carries the list of money that can never convert, including RMDs, inherited IRAs, and young SIMPLE IRAs.
Where Do the Numbers Come From?
Every figure was read from the primary document it belongs to, and the widget renders the verification date so nobody relies on stale tables. The 2026 brackets, standard deduction and capital-gain rate ceilings come from Rev. Proc. 2025-32 read directly, the senior deduction from section 151(d)(5) of the Internal Revenue Code and IRS Schedule 1-A, the Medicare IRMAA schedule from the CMS 2026 fact sheet, and the Social Security thresholds from section 86. When figures update, the widget updates for every site running it at once.
How Big Is It?
One JavaScript file of about 31 KB of source that arrives compressed at around 11 KB, with no dependencies and no framework. It injects its own stylesheet once, scoped to its own class names, so it will not touch the rest of your page. Load it with the async attribute and it will not block rendering.
Does It Carry a Disclaimer?
Yes, and it travels with the widget so you do not have to write one. The footer states that the tool is general information rather than legal or tax advice and creates no attorney-client relationship, lists the assumptions, and shows the date the figures were last verified against the primary sources. That date updates when we re-verify, which is another reason to load the script from stepuplaw.com rather than copying it.
Can I Change How It Looks?
The widget reads five CSS custom properties on its container, so you can match your own palette without touching the script. Override --surc-brand for the accent color, --surc-fg for body text, --surc-mut for muted text, --surc-line for the hairlines inside the card, and --surc-edge for the outer frame and the section rules. Keeping those last two separate means you can strengthen or soften the outline without touching every divider inside. If you need the credit line gone, put data-surc-credit="off" on the container. The disclaimer stays either way, because that is the part that protects you.
Who Should Put This on Their Site?
Financial advisors and planners, CPA firms, credit unions, retirement community and senior center sites, personal finance writers, and other estate planning attorneys. Anyone whose readers include people within a decade of required minimum distributions. We built it for our own clients and there is no reason to keep it to ourselves.
Is the Code Public?
Yes. The tax tables, the Social Security worksheet, the capital-gain stacking rules, the Medicare schedule, and every threshold are on GitHub as roth-conversion-toolkit, with a test suite of hand-computed cases that also pins the calculator to the marginal rates published in the planning literature, so you can read exactly what the widget will tell your visitors before you embed it. If the IRS changes a figure, open an issue and it gets fixed for every site running the widget at once.
Embedded it somewhere?
Tell us and we will link back to you from this page. If you need a change to make it fit, open an issue on GitHub and we will take a look.
Updated on August 19, 2026. Reviewed by Kevin D. Klagge, Esq., Fla. Bar No. 99502. Attorney Kevin Klagge represents families, businesses, and international clients in estate and tax planning, business structuring, and international law, with a focus on Florida legal tools. He litigates estate and business issues in court. The widget produces estimates from published federal figures. It is general information, not legal or tax advice, and it creates no attorney-client relationship with you or with anyone who uses it. Tax figures change every year, so keep the script loading from stepuplaw.com rather than copying it, and it stays current for you.