The Robo-Advisor Saved Me $412 in Taxes and Cost Me $2,300 Doing It
My robo-advisor's tax-loss harvesting looked like free money until I traded around it myself and triggered wash sales worth thousands. Here is what the spreadsheet never showed me.
At 11:40 on a Tuesday night in November, I sat on the edge of my bed with my phone, staring at a grasped loss report that showed $412 harvested and a brokerage confirmation screen showing a buy I had placed nine hours earlier. My thumb hovered over the trade ticket like it was a live wire. The bedroom was dark except for that blue glow, and my wife asked from under the pillows why I was whispering at a stock chart.
What was at stake was not the $412. It was the $2,300 in short-term gains I had booked earlier that year, gains the harvesting was supposed to neutralize, and the growing suspicion that I had just shredded the entire benefit with one impatient click.
The robo-advisor had done nothing wrong. That is the part that took me weeks to accept.
the checkbox I skimmed in 2019
When I opened the account four years earlier, I checked the box for tax-loss harvesting because it sounded like a free lunch. The algorithm would sell whatever dipped, bank the loss, and buy a similar but not substantially identical index fund to stay invested. On paper this was elegant. Every down market became a receipt I could hand to the IRS. The first few years delivered exactly that, modest elegant losses, a few hundred dollars each December, all automatic.
I never read the section of the agreement that described how losses carry forward and how they interact with anything else I did. Nobody does. The agreement is 46 pages and the relevant paragraph is on page 31.
my own trades were the problem
Here is where I broke it. In March 2025 I got a bonus and, feeling clever, snagged $8,000 of a total market ETF in my regular taxable brokerage, a different account entirely. The robo held substantially identical exposure. I did not think of the two accounts as connected. The IRS did.
In October I sold the taxable lot for a $1,900 gain, planning to redeploy. Meanwhile the robo had harvested losses in September on its nearly identical position. The thirty-day wash window swallowed my purchase. My carefully harvested loss got disallowed against that specific sale, and worse, the cost basis on my new lot got adjusted downward, which meant a bigger gain staring back at me on Schedule D.
the night I tried to fix it manually
So there I was at 11:40 PM, trying to trade around the algorithm. I sold the similar fund the robo had swapped into, snagged a third fund, and in doing so I sold shares inside the thirty-day window of a loss the robo had taken in August that I had forgotten about. I was chasing my own tail. Each fix created a new wash sale somewhere else, like pressing a bubble into a mattress.
I ultimately closed the laptop. That was the smartest trade I made all year.
page 31, paragraph 4
The next morning I called support and asked a rep to walk me thru the interplay between my manual accounts and the harvesting engine. To his credit, he was honest. He said the feature assumes the taxable account it manages is your only taxable account. Any outside buying of substantially identical funds can pollute the wash windows, and the system does not see outside accounts. It is not a bug. It is a boundary.
I asked him how routine this was. He laughed, a tired laugh, and said I would be surprised how many calls start with the word TurboTax.
what the $412 actually bought
Lemme total the real damage. The harvested losses across the year were $412 of tax benefit at my marginal rate, call it $130 of actual cash saved. The disallowed-loss mess and the adjusted basis cost me approximately $2,300 in additional recognized gains across two tax years, some of it short-term. Net result: a feature marketed as saving me money cost me about $2,170, plus eleven hours of my life I spent reconstructing trade dates from four different confirmations.
My capital gains tax bill that April was the largest of my life. That is a sentence I never anticipated to write about a feature designed to lower it.
the fix that cost nothing
I did not close the account. I changed my behavior in three ways. First, the robo now manages one isolated taxable pot and nothing else touches those tickers, not my IRA, not my personal brokerage, not my wife's account. Second, any manual purchase I want to make in similar funds happens in the Roth, where wash sales cannot reach. Third, I keep a one-page note listing every loss the robo harvests, with dates, so the thirty-day windows are visible before I click anything.
The funny part is the whole problem was self-inflicted. The algorithm was fine. My habit of scattering purchases across three accounts like a squirrel was the bug.
the calendar entry I still keep
It is February now. Last night I opened the same loss report, and next to it, my own note listing the harvested windows. No new buys in those tickers anywhere. The phone stayed in my pocket. The trade ticket stayed empty. That report showing $412 harvested, the one that used to look like a gift, now looks like what it invariably was, a tool with a blade guard I kept removing myself. I left the loss on the table this year, untouched, and slept fine.