Last Updated: March 30, 2023
- ACA Subsidy Model Addition
- Analysis Approach
- Example Scenarios
- Estate Planning
- More Accurate Portfolio Projection
- Reducing Standard Income & Increasing Long Term Cap Gains to Generate More Cash – STILL Not Worth It
- Conclusions and Actionable Advice
- A Big Change Next Week
In the last couple of posts we’ve discussed how to compute ACA (Obamacare) subsidies and marginal subsidy loss rates vs income (what I’m calling a “hidden” income tax).
Now let’s look at the next question I had regarding ACA subsidies:
Is it worth increasing your income via long term capital gains to take advantage of the 0% LT cap gains tax bracket (i.e., tax gain harvesting), even if it means a lower ACA subsidy?
The answer I initially expected was 100% NO, because any increase in taxes or penalties (which is mathematically equivalent to losing subsidies) I expected would swamp any benefits of tax gain harvesting. ESPECIALLY any taxes/penalties paid relatively early in your retirement.
However, the answer turned out to be more complex than I expected…
ACA Subsidy Model Addition
Before we can see how changing your long term capital gain (LTCG) income impacts your subsidies and thus overall portfolio performance over your entire retirement, first we need to add the ACA subsidy model to the portfolio projection tool.
To start, I added four new inputs to the tool:
- A flag that dictates whether the tool should account for a change in subsidies if the total income does not match the expected income for ACA subsidies (AdjustTaxBillIfIncomeForACAsubsidiesNotMet)
- The expected income for ACA subsidies (i.e., the income you used when computing your ACA health insurance premiums for the year, which are part of the overall annual expenses specified)
- Where you live: the contiguous U.S., Alaska, or Hawaii (used for computing federal poverty level)
- The number of people in your family (assuming all need ACA insurance)
- The annual cost of the “benchmark plan”: the second-cheapest Silver level plan in your area and for your situation, which you can use the estimation tool provided at Heathcare.gov to identify
Note that the expected income for ACA subsidies is your Modified Adjusted Gross Income (MAGI). And in a nominal scenario, you would set the expected income for ACA subsidies (which you used when computing your ACA premiums and thus overall annual expenses) equal to the max total income specified.
Also note that the exact benchmark price is only needed if your expected contribution (calculated from your income) matches or exceeds the benchmark price, because at that point all subsidies stop (and thus there is no additional subsidy loss for higher incomes). So if the incomes you’re considering are all well below this level, you can use a rough guestimate for the benchmark price, because the exact value won’t impact how much your subsidies change with different income levels.
Tax Bill Adjustment
So if your income (MAGI) for the year turns out to not be exactly what you estimated during open enrollment, you will settle up with the IRS when you do your taxes each spring.
To emulate that process, the portfolio projection tool will similarly adjust the total taxes generated each year by the amount that subsidies change. Let’s go through how the tool does that now.
First, after all computations are done for a particular year in the portfolio projection tool, several things are checked:
- Is the total income generated that year different from the input “expected income for ACA subsidies”?
- Is the AdjustTaxBillIfIncomeForACAsubsidiesNotMet flag on?
- Is at least one adult (two people for married filing jointly, one person for all other filing statuses) under age 65 and thus nominally not eligible for Medicare yet?
If the answer to all three questions is YES, then we need to proceed with the adjustment.
Second, the subsidy value is computed using the input “expected income for ACA subsidies” (“nominal subsidy”), and then with the total income generated that year (“actual subsidy”). The actual subsidy value minus the nominal subsidy value we’ll call the “subsidy delta”.
Third, this subsidy delta is SUBTRACTED from the total taxes generated value for that year.
Why subtracted? Because if the actual subsidy is larger than the nominal subsidy (i.e., the actual income is lower than the expected income), then the delta value will be positive (you get more subsidies than expected), and you will reduce your taxes owed the next spring by that delta amount.
Vice versa, if your actual subsidy is smaller than the nominal subsidy, then the delta value will be negative (you get less subsidies than expected), and your taxes owed the next spring will go UP by that delta amount (subtracting a negative number will result in a larger tax value).
Initially I thought the analysis to answer the question “Is it worth doing tax gain harvesting if your ACA subsidies are lowered” would be pretty straightforward: run the portfolio projection tool with a handful of higher and lower total specified incomes, and show how higher incomes consistently deliver fewer subsidies and thus worse overall performance.
Well, after doing just that with the scenarios I describe below for a few different income levels, I was surprised to find that the answers were NOT that consistent.
So, instead I decided to run the portfolio projection tool for a wide variety of total specified incomes, and plot the results. And I hoped that I’d be able to spot some consistent patterns as a result…
Betty’s Filing Status: Single
Let’s first look at a scenario involving just one person. As always, I’ll employ Betty for the single-filer scenario.
The new inputs described above were set as follows:
- Expected income for ACA subsidies: $40K (same as Betty’s annual expenses)
- Where Betty lives: Contiguous U.S.
- Number of people on ACA plan: 1
- Annual cost of benchmark plan: $454 * 12 months = $5,448
I then ran the portfolio projection tool for total specified income values ranging from 100% of the 2022 Federal Poverty Level (FPL) (which is the minimum income needed for ACA subsidies) to the top of the 0% LTCG tax bracket (the highest you would want to consider for cap gain harvesting).
For Betty, that meant a minimum of $13,590 and maximum of $58,475.
So let’s take a look at Betty’s final asset balances for this range of specified total income targets:
A few observations immediately jump out from this plot:
- Betty does indeed end up with a higher total final balance if she lowers her specified total income target below her expenses of $40K – which matches my expectation.
- Betty does indeed end up with a lower total final balance if she raises her specified total income target beyond her expenses of $40K, assuming she is trying to do some tax gain harvesting – which matches my expectation.
- However, the total balance seems to level off for specified income below ~$35K for some reason, and it levels off for specified income above ~$54K for some reason.
- As the specified income is lowered, the PostTax (taxable account) balance grows and the Roth account shrinks – since less and less taxable account sales are used to generate income via LTCG (and thus more and more funds must be pulled from Roth to obtain enough cash each year for expenses).
- But just like for the total balance, the change in PostTax and Roth balances seems to level off at the lowest and highest specified incomes.
- There’s some kind of bend point around $37K (which is also when the Roth and capital gains plots intersect, but that’s probably just a coincidence) – what’s the deal with that?
To better understand how the total final balance changes across the range of specified incomes, let’s zoom in on that Total line:
You can see much more clearly how the total increases rapidly until the bend point around $37K, then slows way down until it’s mostly flattened out below $30K. There’s also a pretty sharp leveling off for specified income above ~$54K for some reason – probably because the expected contribution exceeds the benchmark price and no more subsidies are lost (because there are no subsidies!).
Note that if Betty totally ignored the loss of ACA subsidies (or just didn’t understand them) and she decided to bring up her income to the top of the 0% LT cap gain bracket (to maximize cap gain harvesting), she would actually end up close to $1M poorer in the end!
Next I wanted to understand this flattening out and bend point better, so I played around with different tweaks to this scenario to see if I could make those features more pronounced.
Fortunately it wasn’t too difficult to make that happen: I just moved all of Betty’s 457(b) funds to her PreTax account (e.g., a Traditional IRA, which does have a 10% penalty for early withdrawals), and eliminating the dividends for her PostTax (taxable) account (e.g., assuming Betty is invested in a very low dividend fund, which are advertised as being tax efficient).
Both of those changes essentially reduced how much tax- and penalty-free cash Betty could access early in her retirement.
Let’s take a look at the results in this tweaked scenario:
You can immediately see the bend points are much sharper, and total asset balance really doesn’t improve much at all below the bend point at $36K.
So at this point I dug in a bit deeper to understand why these bend points occur, and why we see the total balance flatten out.
It turns out that with specified incomes lower than the $36K bend point, the portfolio projection must force a higher income (via LTCG) at the 4th year of the simulation, which pushes income BEYOND the expected income for ACA subsidies (so you’re actually losing subsidies) and thus acts to negate the higher subsidy values in other years.
Why does this happen though? Well at that 4th year there’s no longer enough cash available such that Betty can stay below the specified income. She HAS to push up her income that year, because:
- she can’t sell any more PostTax funds without pushing past the specified income (due to LTCG)
- all of her original Roth contributions (which she can pull without any additional income generated) have been depleted
- the oldest Roth conversion from the first year of the simulation is not yet 5 years old
So she has to sell more PostTax funds to get enough cash, which then generates more LTCG, and thus pushes her income up.
For specified incomes above the bend point, Betty pulled more from her PostTax account starting at the beginning of the simulation, and thus did not deplete the tax-free sources like Roth original contributions as quickly. Which then gave her enough time for her Roth conversion to reach maturity at 5 years. So she was never forced to push her income above the specified income.
Bill and Barbara’s Filing Status: Married Filing Jointly
As usual, we’ll employ the married couple Bill and Barbara in our “married filing jointly” scenario.
The new inputs described above were set as follows:
- Expected income for ACA subsidies: $50K ($10K higher than Bill and Barbara’s annual expenses of $40K)
- Where Bill and Barbara live: Contiguous U.S.
- Number of people on ACA plan: 4 (they have two kids)
- Annual cost of benchmark plan: $1459 * 12 months = $17,508
I then ran the portfolio projection tool for total specified income values ranging from 100% of the 2022 Federal Poverty Level (FPL) (which is the minimum income needed for ACA subsidies) to the top of the 0% LTCG tax bracket (the highest you would want to consider for tax gain harvesting).
For Bill and Barbara, that meant a minimum of $27,750 and maximum of $116,950.
I’m also going to ignore the complication of having a couple years when Bill is eligible for Medicare and Barbara is not, since I’m looking for broad trends regarding what total specified income to shoot for.
So let’s take a look at Bill and Barbara’s final asset balances for this range of specified total income targets:
We can see similar trends to those we saw for Betty:
- For larger specified incomes, their final total balance is lower – which matches my expectation.
- The total balance seems to level off for specified income below ~$35K.
- Lower specified incomes result in a higher PostTax final balance and a lower Roth final balance; higher specified incomes result in a lower PostTax final balance and a higher Roth final balance. Because as the specified income lowers, less taxable account sales are used to generate income via LTCG (and thus more funds must be pulled from Roth to obtain enough cash each year for expenses).
And if Bill and Barbara totally ignored the loss of ACA subsidies (or they just didn’t understand them) and they decided to bring up their income to the top of the 0% LT cap gain bracket (to maximize cap gain harvesting), they would actually end up close to $2M poorer in the end!
Now let’s zoom in on that Total line:
Very interestingly, the max final total is slightly above their annual expenses of $40K! Why?
Because subsidies are still maximized at 150% of FPL, which for Bill and Barbara and their two kids is ($13,590 + 3 * $4,720.)*1.5 = $41,625.
That means any income above that they are losing subsidies, and any income below that they are not doing as much tax gain harvesting as they could.
So even if your expenses are under the 150% FPL level, I recommend shooting for that mark with your income to maximize your LTCG harvesting, while still maximizing your ACA subsidies.
Now with two kids and an income around 150%, unfortunately your kids will be forced into CHIP in all states (with North Dakota being the closest option at 175%), which you may or may not want. If not, then you’ll need to keep your income above that CHIP threshold.
To eliminate that CHIP complication, let’s tweak the above scenario to assume Bill and Barbara have no kids. Thus we change two of the inputs:
- Number of people on ACA plan: 2
- Annual cost of benchmark plan: $902 * 12 months = $10,824
Bill and Barbara’s final asset balances are now:
In this “no kids” scenario, Bill and Barbara appear to max out their total final balance with a specified total income of $40K, which matches their expenses of $40K.
Note this is above the 150% FPL level of ($13,590. + 1*$4,720.)*1.5 = $27,465. Probably because if they lower their income below their expenses too much (or at all in this scenario), then they won’t be able to generate enough cash every year without forcing their income higher again – just like we saw with Betty above.
Now if you’re interested in estate planning, and you’re looking at the above plots of PostTax vs Roth balances, you might wonder what scenario is best for your inheritors.
I have on my list of future analysis to consider optimal FIRE withdrawal strategies for estate planning. Until I get around to doing that though, here’s my initial take.
With all else being equal, a Roth account is the best type of account to inherit due to the 10 years that inheritors are allowed to wait to cash out the fund. That seems to outweigh the nice step up in basis you get when inheriting a taxable account, from what I’ve read and discussions I’ve had with other folks.
However, not all is equal here! Despite the much higher Roth balance you’ll have with larger specified incomes that you can see in the plots above, you also end up with a lower total balance. Sometimes by millions of dollars!
Given that big overall loss, I’d still shoot for the specified total income that provides the largest total final portfolio balance for you. Even if it means a much lower final Roth balance for your inheritors (and they’ll still get the step up in basis with a higher taxable account).
Maybe I’ll change my tune when I do the actual estate planning analysis, perhaps because I find that not having to withdraw those Roth funds over 10 years offsets a lower initial balance. But for now, I’d recommend going with whatever gives you the largest balance at the end of your life.
More Accurate Portfolio Projection
The focus of this article has been about what happens when we have ACA insurance subsidies and we intentionally adjust our total income (via LTCG, so that our standard income stays at the standard deduction value and we don’t owe any additional federal income tax).
However, there’s another really good reason to leave the AdjustTaxBillIfIncomeForACAsubsidiesNotMet flag on (i.e., allow the portfolio projection tool to adjust your ACA subsidies as needed), even if the income you used to compute your ACA premiums (and thus subsidies) is identical to the specified total target income.
If for any year in the portfolio projection the tool is not able to reach the specified total income, or if it must exceed that income in order to generate enough cash needed for expenses that year, then we really should account for how that will impact your ACA subsidies.
By enabling this adjustment, we can ensure a more accurate projection of the retirement portfolio.
And thus I recommend leaving the AdjustTaxBillIfIncomeForACAsubsidiesNotMet flag on, unless you have a very compelling reason to turn it off.
Reducing Standard Income & Increasing Long Term Cap Gains to Generate More Cash – STILL Not Worth It
So I’ve been considering this question for quite some time now, and I’ve even dedicated several past posts to it:
If you run out of tax- and penalty-free withdrawal sources, and you still need more cash for expenses, is it worth reducing your standard income (by reducing pre-tax account withdrawals) and increasing your long term capital gains (by withdrawing more from your taxable/brokerage account) so that you have more cash for the same income? And thus don’t reduce your ACA subsidies?
For some reason I’ve been dragging this question forward since the beginning of the year, mentioning it in the future work sections of the last couple posts.
Maybe it just felt like such a clever idea that I couldn’t give it up.
Well, today’s the day: I officially give it up.
So what put the nail in the coffin?
Several things actually:
- If you run out of tax- and penalty-free sources, odds are that you’ve also fully depleted your taxable account – which means you don’t even have any LTCG income option, which is the whole point of this idea (generate more cash via LTCG and less via standard income).
- The odds of anyone retiring (early or not) with a sufficiently large net worth and taking little to no action when they see their portfolio tanking over many years, such that this approach becomes useful, is extremely low I suspect.
- This idea and the execution of the idea is way more complicated than I initially thought it would be. Anything overly complicated is usually way less valuable to others.
Given all those factors, I think further pursuing this question/idea is most likely a waste of time. Sometimes you just have to call it like it is. Even if it’s painful to give up on something you’ve probably spent way too much time on.
But I think I’ll leave the flag (TryIncreasingPostTaxWithdrawalAndMaybeReducingStdIncFlag) and module in place for now, just in case anyone wants to play with it in the future. But if it gets in the way at all in the future, I’ll likely dump it.
Conclusions and Actionable Advice
It’s tough to distill a set of concrete advice when it comes to deciding what your total specified target income (standard income plus LTCG) should be, especially when accounting for ACA subsidies.
Why? Because there are so many factors, such as how much you have in different asset buckets (which dictates how easily you can generate enough cash to meet expenses), your family size (a major factor dictating subsidy amounts), etc.
Because of that complexity, I strongly recommend you consider your own scenario and look at a wide range of specified incomes for that scenario. I recommend running the portfolio projection tool for many different specified incomes, even doing every $1K like I did for the analysis above. I’ve posted my analysis code that can generate the above plots in the EYFI github repo as well.
Running the numbers yourself can help you determine if you can expect to see a higher or lower final balance with different specified incomes for scenarios close to your own.
The few bits of general advice I can provide are as follows:
- If you really want to optimize your final net worth, you’ll probably want to target a total income right around the point where it’s just barely possible to consistently get all the cash you need for expenses/taxes each year (while you still have ACA insurance)
- Make sure your targeted income is no lower than the 150% FPL mark, even if that’s beyond your expenses level. Your subsidies will still be maximized at that point, but you also maximize tax gain harvesting. You can always reinvest any excess cash generated.
- If you have kids and would like to keep them out of CHIP, you’ll need to stay above the FPL threshold specified by your state. On the other hand, if you like CHIP and all the benefits it provides, you’ll need to keep your income BELOW that FPL threshold.
At this point I think I’ve answered all the main questions I had for myself about the impact of ACA subsidies on FIRE withdrawals, so I’ll be moving on to new topics next week. But let me know if you have any additional questions about ACA subsidies and FI!
If you’d like to recreate (and then modify if desired) the above plots and analysis, as well as plug in your own values to see what ballpark you should shoot for with your specified total income, feel free to download the Python analysis code from the EYFI github repo.
If there’s sufficient demand, I can also put together an embedded interpreter, but that’ll be a little bit of work.
A Big Change Next Week
Finally, a big announcement to make!
After a year and a half of being an unemployed bum, I’ve decided to return to the lab where I worked previously. Starting next week!
I know, I know… the math says I don’t need to do this. But I thought long and hard about it, and I made a pretty dang extensive pros and cons list. And in the end the “pros” list won out.
And there is a big difference this time around as well: I’ll be working half-time instead of full-time.
I plan to go into much more depth on the pros and cons of working part-time after FI in a future post – stay tuned.
Given that I’ll now be just a half-way unemployed bum (doesn’t have the same ring to it unfortunately), I suspect the time I have to work on content for this site will be cut in half (shocking math, I know).
So: I may have to adjust my publication schedule.
I’ve been trying to get out a post every Thursday for a while now, but I may need to change that to biweekly, and perhaps change it to Fridays as well (depending on what my final schedule looks like).
We’ll see what happens! Hopefully this is the right call… And I’ll do my best to keep y’all apprised of my posting schedule changes.