All posts
taxesinvestingtax-loss-harvestingportfoliopersonal-finance

How to Find Tax-Loss Harvesting Opportunities in Your Portfolio

Evan·March 16, 2026·11 min read

I ran a scan on a test portfolio last week. 26 positions, mostly index funds and blue chips. Nothing exotic. The kind of portfolio a responsible person builds after reading a few Bogleheads threads.

It had $20,086 in harvestable losses sitting there. At a 32% marginal tax rate, that's $6,427 in tax savings. Money that would otherwise go to the IRS, available just by selling the losers and buying something similar.

Nobody told this portfolio's owner. No brokerage sent an alert. No advisor flagged it. The money was just sitting there, waiting to be found.

That's the thing about tax-loss harvesting. It's not complicated. It's not risky. It's one of the few genuinely free lunches in personal finance. And the vast majority of retail investors never do it because nobody shows them where to look.

This guide will fix that.

What tax-loss harvesting actually is

The concept is simple. You sell an investment that's lost value since you bought it. That realized loss offsets capital gains you've made elsewhere in your portfolio. If your losses exceed your gains, you can use up to $3,000 per year to reduce your ordinary income. Anything beyond that carries forward to future tax years indefinitely.

The key part that makes this a free lunch rather than just locking in losses: you immediately reinvest the proceeds into a similar (but not identical) investment. Your portfolio stays invested. Your asset allocation stays roughly the same. You just reset the cost basis and bank a tax deduction.

Here's a concrete example. Say you bought $10,000 of a total stock market ETF eight months ago, and it's now worth $8,500. That's a $1,500 unrealized loss. If you also sold some winners this year and realized $5,000 in gains, you'd normally owe taxes on those gains.

But if you sell the ETF at a $1,500 loss, your net taxable gain drops to $3,500. At a 24% tax rate, that's $360 saved. Multiply that across several positions and a few years, and you're talking real money.

After selling, you buy a different total stock market ETF (not the same one, because of the wash sale rule) and your portfolio exposure is essentially unchanged.

Where to look for opportunities

Most people think of tax-loss harvesting as a December activity. Financial advisors do a year-end review, find some losers, sell them before the calendar flips. Done until next year.

That's leaving money on the table. Markets are volatile all year. A position that's up 15% in December might have been down 10% in March. If you only check once, you miss the window entirely.

Here's where to systematically look for harvesting opportunities in your portfolio.

Individual stock positions that are underwater. This is the most obvious one. Any stock you bought that's currently trading below your purchase price is a candidate. The bigger the unrealized loss, the bigger the tax benefit.

Specific tax lots within the same position. This is where most people miss opportunities. If you've been buying shares of the same stock or fund over time through regular contributions or dividend reinvestment, each purchase creates a separate tax lot with its own cost basis. You might own 200 shares of VOO where 100 shares are up and 100 shares are down. You can sell just the losing lots while keeping the winners.

Overlapping ETF and fund positions. If you own both SPY and IVV (both S&P 500 funds from different providers), one might be up while the other is down. Sell the losing one, keep or add to the winning one. You maintain the same market exposure.

Bond funds in a rising rate environment. When interest rates go up, bond prices go down. If you hold bond ETFs bought before rate hikes, they're likely underwater. These are prime harvesting candidates that many investors overlook because they think of bonds as their "safe" allocation.

International positions. Emerging market and international funds tend to be more volatile than domestic ones. That volatility creates more frequent harvesting windows throughout the year.

The wash sale rule, and what you actually need to know

The IRS isn't going to let you sell a stock, claim the loss, and buy the same thing right back. The wash sale rule says that if you buy a "substantially identical" security within 30 days before or after selling at a loss, you can't claim that loss.

What counts as "substantially identical" is where it gets interesting, because the IRS has never fully defined it.

Clearly identical (will trigger a wash sale): Selling shares of AAPL and buying AAPL back within 30 days. Selling shares of the Vanguard S&P 500 ETF (VOO) and buying it back. Buying the identical security in a different account. Yes, this includes your IRA and your spouse's accounts.

Clearly not identical (safe to swap): Selling a total stock market fund and buying an S&P 500 fund. Selling one company's S&P 500 ETF (like SPY) and buying a different company's S&P 500 ETF (like IVV or VOO). The IRS hasn't ruled these as substantially identical, though some tax advisors are more conservative here. Selling an individual stock and buying an ETF that contains that stock.

Good replacement pairs to know about:

If you sell a total stock market ETF (VTI), buy an S&P 500 ETF (VOO or SPY) as the replacement. Different index, different fund, maintains broad market exposure.

If you sell an S&P 500 ETF from one provider (SPY from State Street), buy one from a different provider (IVV from BlackRock or VOO from Vanguard). The IRS considers these different securities even though they track the same index.

If you sell an individual stock, buy a sector ETF that gives you similar exposure. Sell AAPL, buy XLK (technology sector ETF). You keep the tech exposure without triggering a wash sale.

After the 30-day window passes, you can buy back the original security if you want to.

The math on why this matters more than you think

People hear "save a few hundred bucks on taxes" and decide it's not worth the effort. Let's run real numbers.

Take a portfolio with $500,000 in a taxable account. In a typical year, normal market volatility creates harvesting opportunities worth 1-2% of the portfolio value in realized losses. That's $5,000 to $10,000 in losses you can harvest.

At a 32% combined federal and state tax rate, that's $1,600 to $3,200 in annual tax savings.

Now here's where it compounds. If you reinvest those tax savings at a 7% annual return over 20 years, $2,400 per year in reinvested tax savings grows to over $98,000. That's the true cost of not harvesting. It's not just the taxes you pay this year. It's the decades of compounding you miss on the money you gave to the IRS unnecessarily.

Research from Parametric Portfolio Associates has shown that systematic tax management can add 1-2% in after-tax excess returns annually for equity portfolios. Over a career of investing, that's potentially hundreds of thousands of dollars.

How to actually do it: step by step

Step 1: Export your portfolio holdings with cost basis data. You need to see every position with its purchase date, cost basis, and current market value. Most brokerages let you download this as a CSV. Make sure you're looking at specific lot data, not just the average cost basis for each position.

Step 2: Calculate unrealized gains and losses for each lot. Current value minus cost basis. Flag everything that's negative. Those are your harvesting candidates.

Step 3: Prioritize by size and type. Larger losses give you more tax benefit. Short-term losses (held less than a year) are especially valuable because they offset short-term gains, which are taxed at your ordinary income rate (often 24-37%) rather than the lower long-term capital gains rate of 15-20%.

Step 4: Check for wash sale conflicts. Before selling, verify that you haven't bought the same security in the last 30 days, and that you won't accidentally buy it in any of your accounts in the next 30 days. This includes automatic dividend reinvestment. Turn that off temporarily for any security you're harvesting.

Step 5: Identify replacement securities. For each position you're selling, pick a similar but not identical replacement. See the swap pairs above.

Step 6: Execute the trades. Sell the losing position. Buy the replacement on the same day. You want to minimize time out of the market.

Step 7: Track and reconcile. Record the harvest date, the loss amount, and the wash sale window expiration (31 days later). After the window passes, you can swap back to your original holding if you prefer.

Why most people don't do this (and how to fix it)

The process above works. It's also tedious enough that almost nobody does it consistently.

You have to export data, cross-reference lots, check wash sale windows, identify replacements, and repeat the process regularly throughout the year. Most investors do it once in December if they do it at all, and miss the majority of opportunities that appear during mid-year volatility.

This is exactly why we built tax intelligence into Helm Terminal.

When you connect your brokerage accounts, Helm automatically scans every position and every tax lot for harvesting opportunities. It calculates your unrealized P&L, estimates the tax savings at your rate, flags wash sale risks, and even suggests replacement securities. The tax center shows you exactly how much you could save, broken down by position.

In the test portfolio I mentioned at the top of this article, Helm found 6 harvesting opportunities totaling $20,086 in harvestable losses across positions in SCHD, UNH, and BND, with estimated tax savings of $6,427. It took about three seconds.

You can absolutely do this manually. But the same way you wouldn't calculate your portfolio's P&L by hand-checking each stock price one at a time, there's not much reason to manually hunt for tax-loss harvesting opportunities when software can do it instantly and continuously without missing anything.

Find your tax savings

Connect your accounts and Helm will scan every position for harvesting opportunities, with estimated savings calculated automatically.

Try Helm Terminal

Common mistakes to avoid

Harvesting a loss and forgetting about dividend reinvestment. If your brokerage automatically reinvests dividends, and the stock you just sold pays a dividend within 30 days, that reinvestment triggers a wash sale. Turn off DRIP for harvested positions temporarily.

Ignoring state taxes. Most articles focus on federal tax savings. But if you live in a state with income tax, your harvesting savings are even higher. A California investor in the top bracket saves an additional 13.3% on harvested losses. New York adds up to 12.7%. Factor your state rate into the calculation. It often makes marginal opportunities worth executing.

Waiting until December. Year-end harvesting is better than nothing. But the best opportunities appear during market dips throughout the year. A stock that drops 15% in February and recovers by December gave you a harvesting window that's completely invisible in a year-end review.

Not tracking your adjusted cost basis. When you sell a losing position and buy a replacement at a lower price, your new cost basis is lower. That means when you eventually sell the replacement, your gain will be larger. Tax-loss harvesting defers taxes, it doesn't eliminate them entirely. The exception is if you hold until death, at which point the cost basis steps up and the deferred gains disappear entirely. This is actually a huge benefit for long-term holders.

Harvesting losses in retirement accounts. You can't tax-loss harvest in an IRA or 401(k). These accounts are already tax-advantaged. Losses realized inside them have no tax benefit and you can't claim them. Only harvest in taxable brokerage accounts.

The bottom line

Tax-loss harvesting isn't a hack or a loophole. It's a straightforward, IRS-approved strategy that most retail investors never use simply because nobody shows them how. The math is real. Depending on your portfolio size and tax bracket, you could be saving thousands of dollars every year.

The barrier isn't knowledge. It's attention. You have to actually look at your portfolio, identify the opportunities, and execute the trades. Do it once and you'll wonder why you didn't start sooner.

Or connect your accounts to a tool that does the looking for you. Either way, stop leaving money on the table.

See your harvesting opportunities

Helm Terminal scans your portfolio for tax-loss harvesting opportunities automatically. See your estimated savings in seconds.

Analyze your portfolio