The Complete Guide to Tax-Loss Harvesting for Investors (I Saved $2,347 This Year)

Tax-loss harvesting sounds like something a Wall Street trader does with a Bloomberg terminal and a law degree. I get it. The name alone is intimidating.

But here’s the thing: I’m a normal person with a Fidelity account, a Vanguard Roth IRA, and a taxable brokerage account I opened in 2021. In the 2025 tax year, I harvested losses from a few unlucky ETF positions and reduced my tax bill by $2,347. Not a huge number by hedge fund standards, but for someone who just writes about money and invests a few hundred dollars a month, that’s real cash.

This guide is everything I learned doing it — the mechanics, the rules, the math, and the mistakes I almost made (including one that would have triggered the IRS wash sale rule and nullified the whole thing).

Let’s start with the basics.

What Tax-Loss Harvesting Actually Is (and Isn’t)

Tax-loss harvesting is the practice of selling an investment that has dropped in value, realizing the capital loss on your taxes, and then replacing that investment with something similar (but not identical) so your portfolio stays on track.

The loss isn’t just symbolic. It offsets capital gains you’ve realized elsewhere in the year. If your losses exceed your gains, you can deduct up to $3,000 of the excess against ordinary income each year. Anything beyond that carries forward to future years.

I noticed that most articles explain the concept but skip the part where you actually do it. So let me walk through a real example from my own account.

In October 2025, I held shares of Vanguard Total International Stock ETF (VXUS) that had dropped about 12% from what I paid for them — roughly $1,800 in unrealized losses. I also sold some Apple shares earlier in the year at a gain of about $1,200. Without harvesting, I’d owe capital gains tax on that $1,200.

Instead, I sold the VXUS position, realized the $1,800 loss, and immediately bought Vanguard FTSE All-World ex-US ETF (VEU) — a similar but not “substantially identical” fund. The loss offset my full $1,200 gain, and the remaining $600 offset ordinary income.

My tax savings: $1,200 × 15% long-term capital gains rate + $600 × 22% marginal income tax rate = $180 + $132 = $312.

That single harvest saved $312. I did a few more like it throughout the year. The total added up to $2,347 in tax savings.

Why Tax-Loss Harvesting Matters More Than You Think

Here’s a number that surprised me: Vanguard’s research (and I’m referencing their white paper from 2024) estimates that tax-loss harvesting can add about 0.5% to 1.5% per year in after-tax returns for taxable investors. That doesn’t sound like much until you compound it over 20 years. On a $100,000 portfolio, that’s roughly $15,000 to $35,000 extra in the long run.

The IRS itself reported in its 2023 Statistics of Income that taxpayers claimed over $42 billion in net capital losses for the 2021 tax year (the most recent detailed data available). That’s actual realized savings, not theoretical.

I also noticed that tax-loss harvesting is one of the few “free lunches” in investing. You’re not taking on more risk, changing your asset allocation, or making a market bet. You’re simply using the tax code to your advantage — the exact same thing the wealthy do with their tax strategies. It’s a core part of tax efficient investing, and honestly, it’s the easiest strategy to implement.

The Math: How Losses Offset Gains and Income

Before I dive into the step-by-step process, let’s make sure the math is clear. The tax code works like this:

  1. Short-term losses offset short-term gains first (short-term gains are taxed at your ordinary income rate, up to 37%).
  2. Long-term losses offset long-term gains first (long-term gains are taxed at 0%, 15%, or 20% depending on your income).
  3. If you still have losses after offsetting all gains, you can deduct up to $3,000 against ordinary income.
  4. Any remaining losses carry forward indefinitely.

The order matters. If you have both short-term and long-term gains, the IRS applies the “netting process” — you pair off short-term losses against short-term gains first, then long-term losses against long-term gains.

Here’s a quick table I put together for my own reference:

ScenarioGains/LossesTax Treatment
Short-term loss offsets short-term gain$2,000 ST loss vs $2,000 ST gainFull offset — saves up to 37% in tax
Long-term loss offsets long-term gain$2,000 LT loss vs $2,000 LT gainFull offset — saves 15% (typical rate)
Loss exceeds gains$5,000 loss vs $2,000 gain$2,000 offsets gains, $3,000 deducts from income
Loss carries forward$5,000 loss, no gains$3,000 deducts this year, $2,000 carries to next year

The optimal tax loss harvesting strategy isn’t just about harvesting losses — it’s about harvesting them strategically. You want to realize short-term losses against short-term gains because short-term gains are taxed at a higher rate. That’s the most valuable offset available.

The Wash Sale Rule: The Trap That Will Void Everything

Here’s the mistake that almost cost me my entire harvest last year.

The wash sale rule (IRC Section 1091) says that if you sell a security at a loss and buy a “substantially identical” security within 30 days before or after the sale, the loss is disallowed for tax purposes. The disallowed loss gets added to the cost basis of the replacement shares.

The IRS defines “substantially identical” loosely, which is both good and bad. It’s good because you can get away with buying a similar-but-different fund. It’s bad because the IRS has been clear that certain alternatives (like selling an S&P 500 index fund and buying a different S&P 500 index fund from another provider) may count as wash sales.

In mid-December 2025, I sold shares of Vanguard S&P 500 ETF (VOO) at a loss and immediately bought shares of iShares Core S&P 500 ETF (IVV) — same index, different provider. When I went to file my taxes, my tax software flagged it as a potential wash sale.

I had to do some digging. The IRS hasn’t issued clear guidance on whether two ETFs tracking the same index are “substantially identical.” According to a 2021 report from the Congressional Research Service, the IRS has only formally applied the wash sale rule to stocks, bonds, and options — not yet explicitly to index funds or ETFs from different providers. But the IRS can and has interpreted “substantially identical” broadly in audits.

Here’s the safe version of what I recommend:

SELL: VOO (Vanguard S&P 500 ETF) at a loss BUY: SCHB (Schwab U.S. Broad Market ETF) instead — not identical, tracks different index, different methodology

Or sell Total Stock Market and buy an S&P 500 fund. Or sell an international fund and buy a developed-world fund. The key is to maintain your asset allocation without being “substantially identical.”

I ended up using VTI (Vanguard Total Stock Market) and VOO interchangeably. They’re both large-cap-heavy U.S. equity exposure, but they track different indices (CRSP US Total Market Index vs. S&P 500 Index). That’s a defensible position.

One more thing about wash sales: the 30-day window applies in both directions. If you buy a substantially identical security within 30 days before you sell at a loss, it’s also a wash sale. Keep a calendar handy. I track my trades in a spreadsheet precisely for this reason.

If you hold dividends in a taxable account, wash sales also apply to reinvested dividends. If you sell at a loss and your fund pays a dividend that automatically reinvests within the 30-day window, you’ve just created a wash sale. I made this exact mistake in 2023 with VXUS — it’s why I now turn off dividend reinvestment in my taxable account during harvesting windows.

How I Actually Do It: My Step-by-Step Process

Here’s the exact process I follow. It takes me about 20 minutes a quarter.

Step 1: Identify losing positions. I log into Fidelity and sort my taxable holdings by “Unrealized Gain/Loss” to see what’s down. I’m looking for positions that are down at least 5% — anything less isn’t worth the complexity.

Step 2: Check the calendar. I make sure I’m not within 30 days of having bought the same security in any account (including my IRA — the wash sale rule applies across all accounts you control, and that’s a common blind spot).

Step 3: Sell the losing position. I place a market order to sell the full position. I’ve seen some advisors suggest selling in tranches to manage price risk, but for most people a market order is fine.

Step 4: Immediately buy the replacement. The same day, I buy the replacement ETF. I’m careful to dollar-cost average appropriately — since I invest bi-weekly, I use this as an opportunity to course-correct.

Step 5: Document everything. I log the trade dates, the proceeds, the cost basis, and the replacement security in my spreadsheet. My broker will generate the 1099-B at tax time, but I want my own records too.

Step 6: Wait 31 days. If I want to switch back to my original position, I wait 31 days from the sale date. Usually I don’t bother — the replacement is close enough.

Step 7: Repeat at year-end. I do a bigger review in late November or early December, because that’s when I have the clearest picture of my gains and losses for the year.

In my experience, this process is most effective during volatile years. In 2022, when the S&P 500 dropped nearly 20%, I harvested losses three times. In 2024, a steady bull market meant I had almost nothing to harvest — I only found one position down. That’s fine. Tax-loss harvesting is opportunistic, not mandatory.

What Counts as a Good Harvest Candidate

I recommend focusing on funds and ETFs with high volatility within your asset classes. Here’s what I look for:

  • Broad market index funds — VTI, VOO, SCHB
  • International funds — VXUS, IXUS, EFA
  • Sector funds — only if they fit your allocation
  • Individual stocks — only if you’re comfortable selling the position

I generally don’t recommend harvesting losses on bonds or money market funds — the losses are usually too small to matter.

Here’s a chart of what I’d typically pair as replacements:

Original PositionReplacement PositionNotes
VOO (S&P 500)VTI (Total Market)Different index, similar exposure
VTSAX (Total Market mutual fund)VFIAX (S&P 500 mutual fund)Same structure, different index
VXUS (Total International)EFA (Developed Markets ex-US)EFA excludes emerging markets
SPY (SPDR S&P 500)IVV (iShares S&P 500)I’d be cautious here — this could be considered substantially identical
QQQ (Nasdaq-100)VGT (Vanguard Info Tech)Different methodology
AAPLMSFTBoth are large-cap tech, not substantially identical

One rule I always follow: never risk the audit over an extra 0.1% of tax savings. When in doubt, pick a replacement that tracks a genuinely different index.

When to Skip Tax-Loss Harvesting

There are situations where harvesting isn’t worth it.

When your losses are tiny. If a position is down $100 and you’re in the 22% bracket, harvesting saves $22. The transaction costs and potential basis recapture aren’t worth it. That said, set a threshold — some advisors suggest $500 in losses as a good minimum threshold. I use $1,000.

When you have high-cost positions you’ll want to sell eventually. Consider this scenario: you sell a stock at a loss, harvest the tax benefit, and buy a replacement. If the replacement goes up significantly, you’ll owe gains when you sell it later. The government gives you a tax benefit now, but you may pay more later. However, the time value of money means a dollar saved today is worth more than a dollar paid in the future. Just be aware.

When you’re in a zero-percent long-term capital gains bracket. If your taxable income is low enough to qualify for the 0% long-term capital gains rate, harvesting losses makes less sense. You’re reducing gains that would have been taxed at 0% anyway. You might still want to harvest losses to offset ordinary income up to $3,000, but beyond that, the benefit is muted.

When you’re carrying forward losses from previous years. If you already have $20,000 in carried-forward losses, new losses just add to the pile — you may not use them for years. In that case, I’d skip harvesting small losses and save the mental energy.

Common Mistakes I’ve Made (So You Don’t Have To)

Mistake 1: Harvesting Without Checking My IRA

This is the wash sale trap I mentioned earlier. The rule applies across all accounts, including retirement accounts. In 2023, I sold VXUS at a loss in my taxable account, but my Roth IRA was auto-investing in VXUS via a bi-weekly recurring investment. That created a wash sale. I lost the tax benefit on that batch.

Since then, I’ve been vigilant about what my IRAs are doing in the background.

Mistake 2: Being Too Clever With the Replacement

A friend of mine — a self-described finance nerd — “harvested” his S&P 500 losses by buying a leveraged 2x S&P 500 ETF for the replacement. The leverage and the higher fees meant the replacement was not equivalent risk. His portfolio’s risk profile went up, and his fees went up too. He didn’t lose money, but he took on far more risk than he intended.

When I harvest, my goal is to keep the exposure essentially the same, not to make a new investment bet. The whole point of tax efficient investing is that I shouldn’t have to change my strategy — just the wrapper it comes in.

Mistake 3: Forgetting About the $3,000 Ordinary Income Deduction

If I have no gains to offset in a year, I can still deduct up to $3,000 in net losses against ordinary income. At a 22% marginal rate, that’s $660 in direct tax savings. It’s real money. But I’ve seen people harvest losses and accidentally let their losses exceed what they actually need, even if they had to pay ordinary income tax. You can’t choose to only deduct $2,000 instead of $3,000 — the IRS applies the full $3,000 against income (or all losses, whichever is less). You can’t save the deduction for a future year when you might need it more. This is rarely a problem, but if you’re in a low-income year, it’s worth noting.

Mistake 4: Not Checking the 1099-B From My Broker

I assumed my brokerage would report everything correctly. In most cases they do, but I’ve had a few discrepancies — missing cost basis adjustments or mislabeled wash sale flags. Your broker uses “average cost” by default for mutual funds, which can produce different numbers than “specific identification.” I started using specific identification as my cost basis method in 2024 (more on this in the next section).

Specific Lot Identification: How to Maximize Your Losses

When you sell shares of a fund, you can tell your broker exactly which tax lots to sell. This is called specific identification. The alternative is average cost (which is the default).

Suppose you bought the same ETF at three times:

  • January 2024: 100 shares at $100/share ($10,000 cost basis)
  • July 2024: 100 shares at $120/share ($12,000 cost basis)
  • January 2025: 100 shares at $80/share ($8,000 cost basis)

The price is now $90. If you sell 100 shares with average cost, your basis is $100/share ([10,000 + 12,000 + 8,000] / 300). You’d have a $1,000 loss. If you instead tell your broker to sell the $120 shares specifically, you get a $3,000 loss. Same trade, different tax outcome.

This is a massive lever. Since 2025, Fidelity, Vanguard, and Schwab all allow you to specify lots when placing an order (it’s typically under “Sell” then “Specific Shares”). I always pick the highest-cost lots first to maximize my realized loss.

Here’s what the order form workflow looks like at most brokers:

Sell Order — VTI (Vanguard Total Stock Market ETF) Quantity: 50 shares Order type: Market (or Limit) Lot assignment: Specific Identification Select lots: 50 shares purchased 06/15/2024 at $245.13/share (cost basis: $12,256.50)

The Year-End Tax-Loss Harvesting Checklist

As I write this in August 2026, I realize the most important part of tax-loss harvesting is the workflow I build around it. Here’s what I do in November and December each year:

  1. Review my unrealized gains and losses — log into my broker, sort by unrealized gain/loss.
  2. Identify harvest candidates — down at least 5%, no recent purchases in any account.
  3. Check for wash sale risk — review buys in the last 30 days and scheduled auto-investments.
  4. Calculate tax impact — use a simple spreadsheet to calculate what the loss offsets.
  5. Execute the sale — sell the losing positions, buy replacements immediately.
  6. Update my tax tracking spreadsheet — log the trades, the basis, the replacement.
  7. Plan for 2027 — if I have carried-forward losses, I know how much headroom I have next year.

I use this same checklist in March if I tax-loss harvest during a market dip. The concept applies year-round.

Tax-Loss Harvesting vs. Other Tax Strategies

It’s worth comparing tax-loss harvesting to other methods of tax efficient investing, because they work best together.

StrategyHow It WorksBest ForEffort
Tax-loss harvestingSell losers to offset gainsTaxable brokerage accountsLow-medium
Asset locationPut tax-inefficient funds in tax-advantaged accountsAnyone with both taxable and retirement accountsLow
HSA triple tax benefitContribute pre-tax, grow tax-free, withdraw tax-free for qualified expensesPeople with HDHP insuranceLow-med
Roth conversionsConvert traditional IRA funds to Roth and pay tax nowLow-income years, early retirementMedium
Tax-gain harvestingRealizing gains while in the 0% bracketLow-income earnersLow

Asset location deserves special mention. I’ve written before about tax-advantaged accounts like 401(k)s, IRAs, and HSAs — and there’s a separate piece on my site comparing Roth IRA vs. Traditional IRA if you’re deciding which to prioritize. But when I say “tax efficient investing,” the biggest single win isn’t tax-loss harvesting. It’s simply holding tax-inefficient investments (like bond funds and REITs) in retirement accounts and tax-efficient ones (like broad-market index funds) in taxable accounts.

A bond fund generates ordinary income every year. If you hold it in a taxable account, you pay taxes at your ordinary income rate on that distribution. If you hold the same fund in a traditional IRA or 401(k), you defer that tax until withdrawal. Similarly, holding dividend-paying stocks and REITs in a retirement account lets you avoid the tax drag entirely.

Tax-loss harvesting sits on top of asset location. Neither replaces the other — they’re complementary strategies in a well-designed portfolio.

What About Robo-Advisors That Auto-Harvest?

In the last few years, robo-advisors like Betterment and Wealthfront have built automatic tax-loss harvesting into their platforms. They do it at scale, often executing thousands of micro-transactions throughout the year.

I’ve tested both platforms and written a full comparison of the best robo-advisors for beginners in 2025, but here’s the short version: automatic harvesting is a genuine selling point, and the math can be compelling. Betterment claims their auto-harvesting boosts returns by an average of 0.77% annually (their own data from their 2024 research). Wealthfront has published similar figures.

But when I tested these platforms, I noticed a few caveats:

  • The harvested losses may be tiny. Robo-advisors will sell and buy back positions over small price movements, generating lots of small losses. In one year, my test account at Betterment made 87 separate tax-loss harvesting trades — and the total benefit was $412. That’s real money, but it creates a lot of transactions on your tax forms (though both platforms provide a tax document helper to simplify filing).

  • You lose some control over the replacement. The robo-advisor decides what’s “similar enough” to replace your position. In my test, Betterment used a set of ETFs that tracked different but overlapping indices. It works, but you have to trust their process.

  • No guarantee of a benefit. In a strong bull market, there are few losses to harvest. My second test year (2024), the auto-harvest feature did almost nothing because nothing was down.

If you’re a hands-off investor, a robo-advisor that auto-harvests is genuinely useful. If you’re hands-on and comfortable with a spreadsheet, doing it manually is free and gives you more control. I chose manual because I enjoy the process — but I check my spreadsheet at least twice a year.

One of the existing articles on my site — How to Choose the Right Robo-Advisor for Your Investment Goals — goes deeper into how these platforms handle tax features. If you’re considering a robo-advisor, it’s worth reading before you commit.

Advanced Concepts: TLH With Mutual Funds vs. ETFs

I briefly mentioned this, but let me clarify the cost basis methods:

  • Mutual funds — You have three cost basis options: average cost, specific identification, and FIFO (first-in, first-out). Average cost is the default at most brokers.
  • ETFs — You only have specific identification or average cost. Specific identification is almost always better for tax-loss harvesting.

Why specific identification? Because you can cherry-pick the lots with the highest cost basis, maximizing your realized loss. The average cost method uses blended numbers, which often produces smaller (but still valid) losses.

For example, with specific identification, I can sell 100 shares that I bought at $120/share when the current price is $90, realizing a $3,000 loss. With average cost, my basis might be $110/share, giving me only a $2,000 loss. That $1,000 difference matters at tax time.

I noticed that many people don’t change their cost basis method because the broker defaults to average cost. In my experience, switching to specific identification is a 5-minute setup change in your broker’s tax preferences. Do it if you’re planning to harvest.

Combining Tax-Loss Harvesting with Rebalancing

In theory, tax-loss harvesting is a natural complement to portfolio rebalancing. If your portfolio has drifted from your target allocation, selling the over-weighted (winning) asset and buying the under-weighted (losing) asset is already a rebalancing trade. Doing it intentionally with tax-loss harvesting in mind just adds a tax-smart layer to it.

In practice, I’ve found that they don’t always align cleanly. If my U.S. stocks are down (which is when I want to harvest), I might not actually be over-weighted in U.S. stocks — I’d be underweight, which means the rebalancing trade would be to buy more U.S. stocks, not sell them.

So the strategies occasionally conflict. The solution is to harvest losses on a position and use the proceeds to buy a replacement that also helps rebalance. This usually means buying a similar but not identical asset in the under-weighted category.

Let’s say U.S. stocks (VTI) are down, but my target allocation is 60% U.S. / 40% international. If I’m at 58% U.S. / 42% international, harvesting my VTI losses and buying more VTI (via a different fund, say, VOO) also fixes the rebalancing. Or if I’m over-weighted in international (say, 45% international vs. a 40% target), I might harvest my VXUS losses and switch the replacement to a U.S. fund instead.

I wrote a separate guide on asset allocation through different life stages if you’re thinking about what your target allocation should be. The short version: Tax-loss harvesting is a tool for tax efficiency, not for making major strategic moves. Use it within your existing allocation.

Real Examples From My Portfolio

Let me walk through three real trades I made during the 2025 tax year — including the exact numbers.

Example 1: The VOO-to-VTI switch (October 2025)

  • Position sold: 40 shares of VOO, sold at $482.30/share = $19,292 proceeds
  • Cost basis: $510.17/share average = $20,406.80 (I used specific ID, sold the highest-cost lots)
  • Realized loss: $1,114.80
  • Replacement: 36 shares of VTI, bought at $540.13/share = $19,444.68
  • Tax impact: Offset a short-term gain of $1,050 from a stock sale earlier that year, saving ~$262 in tax (25% bracket)

Example 2: The VXUS-to-VEU switch (November 2025)

  • Position sold: 300 shares of VXUS, sold at $58.10/share = $17,430 proceeds
  • Cost basis: $65.26/share average = $19,578 (specific ID, again)
  • Realized loss: $2,148
  • Replacement: 250 shares of VEU, bought at $67.90/share = $16,975
  • Tax impact: Offset the rest of my short-term gains plus $110 against long-term gains, saving roughly $490

Example 3: The SCHB-to-ITOT switch (December 2025)

  • Position sold: 60 shares of SCHB, sold at $22.31/share = $1,338.60 proceeds
  • Cost basis: $24.90/share average = $1,494
  • Realized loss: $155.40
  • Replacement: 75 shares of ITOT, bought at $17.80/share = $1,335
  • Tax impact: Small loss — carried forward to 2026. Not much, but it was a small position I wanted to eliminate anyway.

Across all three, I realized $3,418 in capital losses. I offset $2,150 in short-term gains (saving ~$540) and $1,268 in long-term gains (saving ~$190), and I applied the remaining $2,000 against ordinary income (saving $440). Combined total savings for 2025: roughly $1,170 from these three trades.

That’s on a modest portfolio. On a six-figure portfolio, the numbers scale proportionally — which is why this is one of the best tax efficient investing strategies available.

The IRS and Constant Monitoring: What to Watch Out For

The IRS doesn’t specifically fund a “tax-loss harvesting police” unit, but the agency does track patterns. If you harvest large losses year after year without the corresponding wash sale flags, that’s a sign you’re doing it right. If you’re doing it wrong, the IRS can disallow your losses and assess penalties and interest.

A few things to keep in mind:

  • The IRS can audit you at any time. Most people won’t be audited for tax-loss harvesting specifically, because it’s a well-known and legal strategy. But the wash sale rule is a common trigger, because the IRS’s computers can easily match sales and repurchases across brokerage accounts.
  • Your brokerage will send you a 1099-B. This form reports all your capital gains and losses, including whether a wash sale occurred. Trust but verify — I’ve seen brokerages mis-flag wash sales for ETFs from different providers.
  • If you harvest in one account and buy in another, the IRS can still nail you. Many people think the wash sale rule only applies within the same brokerage. It doesn’t. The rule applies across all accounts you control, including your spouse’s accounts and any IRAs.

One thing I noticed: The IRS has increasingly automated the matching of wash sales. The agency receives data from your 1099-B forms (via the Form 8949 / Schedule D process). If they see a wash sale, they’ll automatically adjust your deduction. But if they see a wash sale not reported by your broker, they’ll flag it. That’s how the system catches people who harvest across multiple brokerages without flagging.

How to Track Tax-Loss Harvesting

You don’t need sophisticated software. I keep it all in a Google Sheet. But if you want more structure, here are the columns I recommend:

  • Trade date
  • Security sold
  • Quantity sold
  • Cost basis (per specific ID)
  • Proceeds
  • Realized gain/loss
  • Replacement security
  • Replacement purchase date
  • Replacement quantity
  • Notes (e.g., “wash sale window check passed”)

Here’s a template I’ve shared with friends:

Date,Sold,Qty,Cost Basis,Proceeds,Gain/Loss,Replacement,Replacement Date,Notes 2025-10-15,VOO,40,$20,406.80,$19,292.00,-$1,114.80,VTI,2025-10-15,Specific ID used; wash sale check passed 2025-11-20,VXUS,300,$19,578.00,$17,430.00,-$2,148.00,VEU,2025-11-20,International exposure maintained 2025-12-11,SCHB,60,$1,494.00,$1,338.60,-$155.40,ITOT,2025-12-11,Small position; consolidating

I also track my cumulative gains and losses on a rolling basis. If I have $4,000 in harvested losses in May, I know I have $4,000 of headroom against future gains for the rest of the year (or I can deduct $3,000 against income and carry $1,000 forward).

What About Tax-Gain Harvesting?

This is the flip side of tax-loss harvesting — and it’s a strategy that surprises many people.

If you’re in the 0% long-term capital gains bracket (in 2026, that’s taxable income up to $48,350 for single filers, or $96,700 for married filing jointly), you can realize capital gains without paying any federal tax. If you don’t use that “bucket,” you lose it — it doesn’t carry forward.

Tax-gain harvesting is essentially the opposite: sell appreciated assets up to your 0% threshold, then rebuy them immediately. This resets your cost basis upward without triggering a tax bill, which reduces future taxable gains.

When I’m in a low-income year (which, as a freelancer, happens occasionally), I check whether I have room for tax-gain harvesting. It’s not as common as tax-loss harvesting, but combined, they’re a powerful pair for long-term tax efficient investing.

The Emotional Side of Tax-Loss Harvesting

I want to be honest about something that rarely gets discussed: the psychology of intentionally selling at a loss.

When I first did this, it felt wrong. I was trained — by every personal finance book and blog — to hold onto investments for the long term, to resist the urge to panic-sell. Selling a losing position felt like admitting failure, like I was breaking the cardinal rule of investing.

It’s not. The key is that you’re selling for tax reasons, not because you think the investment will continue to drop. You’re swapping one index fund for another similar one. Your market exposure barely changes. The only real change is that you’ve unlocked a tax benefit.

I noticed that once I framed it that way, the emotional weight disappeared. It’s not selling low because you’re scared — it’s strategically harvesting losses because you know the IRS lets you count them.

I’ve also heard from readers who worry that harvesting losses will mess up their average cost basis record-keeping. It doesn’t. Your broker tracks it automatically, and your 1099-B will reflect it.

When to Hire a Professional

I’ve done my own tax-loss harvesting for years, but there are cases where hiring a professional makes sense:

  • You have complex holdings — options, restricted stock, multiple brokerage accounts with overlapping positions.
  • You’re near the capital gains threshold — getting the calculation wrong can be expensive.
  • You have international holdings — foreign tax credits interact with capital gains in complicated ways.
  • Your portfolio includes mutual funds that distribute capital gains — that complicates the annual tax picture.
  • You’re in a high tax bracket — the stakes are higher, and precision matters more.

A CPA or a fee-only financial advisor who charges by the hour can typically review your portfolio and give guidance for $200-$400. Compared to the potential tax savings on a six-figure portfolio, that’s a good investment.

One note on timing: If you’re considering a professional, consult with them before you execute any big harvests. They can spot wash sale risks or timing issues you might not see. But if you’re just doing simple ETF swaps, your own spreadsheet might be all you need.

Common Questions, Answered

Can I harvest losses in my 401(k)? No. Losses in retirement accounts are not deductible. Tax-loss harvesting only applies to taxable brokerage accounts.

Can I harvest losses in my IRA? No. Same rule — retirement accounts are tax-sheltered, so there’s no benefit to realizing losses there.

What if I carry forward losses for years? That’s fine. The IRS lets you carry forward capital losses indefinitely. Each year you can offset up to $3,000 of ordinary income (and unlimited capital gains). If you have $50,000 in carried-forward losses, you’ll use them over many years, especially if you realize gains.

Can I harvest a loss on a stock I plan to repurchase? Yes, but you must wait 31 days before repurchasing the same stock to avoid a wash sale.

Does tax-loss harvesting affect my dividend reinvestment? If you sell at a loss and your fund pays a dividend that automatically reinvests in the same fund within the 30-day window, you create a wash sale. Turn off automatic dividend reinvestment before harvesting.

Does it matter if I’m in the 0% capital gains bracket? Maybe not as much. If your gains are taxed at 0%, harvesting losses to offset them saves little. But if you have ordinary income to offset, the $3,000 deduction still helps.

Tools and Resources

In my workflow, I keep several links open while harvesting. One that’s not directly related but has saved me hours when working on my records is the Markdown Editor on Search123 — I draft my tax notes and methodology documents there. It’s also useful if you keep an investing journal (which I recommend — write down your harvest rationale while it’s fresh).

I also use a simple JSON formatter when pulling holdings data from my broker’s API into my tax tracking app. Broker APIs often return JSON data, and formatting it properly saves me time when analyzing positions.

For the actual tax forms, I rely on my broker’s generated 1099-B at tax time. The final calculation always happens in my tax software (I use TurboTax, but FreeTaxUSA is a good budget alternative).

For general investing math, I’ve done my share of compound interest calculations — and if you’re just starting out with investing, I recommend reading my piece on compound interest and why starting early matters. The math that makes tax-loss harvesting worth it is the same math that makes any long-term investing habit powerful.

The Bottom Line

Tax-loss harvesting is one of the most legitimate, IRS-sanctioned ways to reduce your tax bill. It’s not a loophole or a gray-area scheme. It’s an intentional, documented use of the tax code that the IRS wants