Tool · TLH

Tax-loss-harvesting partner finder

Find a near-substitute for any catalog fund — same exposure, different index — so a loss can be realized without tripping the wash-sale rule. Candidates are ranked by holdings overlap and labelled with their tracking index so wash-sale-risky swaps are visually obvious.

VTI · Vanguard Total Stock Market Index Fund ETF Shares

US Total Market·Tracks CRSP US Total Market Index·ER 0.030%

TickerNameOverlapIndexERvs. VTIScore
ITOTiShares Core S&P Total U.S. Stock Market ETF98.1%Different index0.030%same92
SCHBSchwab U.S. Broad Market ETF96.6%Different index0.030%same92
VTHRVanguard Russell 3000 Index Fund ETF Shares96.0%Different index0.060%+3.0 bps88
SPTMState Street SPDR Portfolio S&P 1500 Composite Stock Market ETF95.0%Different index0.030%same91
IWBiShares Russell 1000 ETF94.3%Different index0.15%+12.0 bps87
SCHKSchwab 1000 ETF94.2%Different index0.030%same89
VONEVanguard Russell 1000 Index Fund ETF Shares93.4%Different index0.060%+3.0 bps90
DFUSDimensional U.S. Equity Market ETF92.4%Different index0.090%+6.0 bps89
SCHXSchwab U.S. Large-Cap ETF92.1%Different index0.030%same91
DFAUDimensional US Core Equity Market ETF89.3%Different index0.12%+9.0 bps88
VOOVanguard S&P 500 ETF88.1%Different index0.030%same91
IVViShares Core S&P 500 ETF88.1%Different index0.030%same91
BBUSJPMorgan BetaBuilders U.S. Equity ETF87.1%Different index0.020%-1.0 bps90
VVVanguard Large Cap Index Fund87.1%Different index0.030%same91
XYLDGlobal X S&P 500 Covered Call ETF86.9%Different index0.60%+57.0 bps51
ESGVVanguard ESG U.S. Stock ETF77.6%Different index0.090%+6.0 bps88
AVUSAvantis US Equity ETF74.1%Different index0.15%+12.0 bps88
MGCVanguard Mega Cap Index Fund72.6%Different index0.050%+2.0 bps88
ESGUiShares ESG Aware MSCI USA ETF69.5%Different index0.15%+12.0 bps86
PRFInvesco RAFI US 1000 ETF64.6%Different index0.34%+31.0 bps81
OEFiShares S&P 100 ETF63.5%Different index0.20%+17.0 bps81
FNDXSchwab Fundamental U.S. Large Company ETF62.1%Different index0.25%+22.0 bps85
LRGFiShares U.S. Equity Factor ETF61.1%Different index0.080%+5.0 bps84
IUSGiShares Core S&P U.S. Growth ETF59.9%Different index0.040%+1.0 bps86
IUSViShares Core S&P U.S. Value ETF57.9%Different index0.040%+1.0 bps93
SPYGState Street SPDR Portfolio S&P 500 Growth ETF56.8%Different index0.040%+1.0 bps86
IVWiShares S&P 500 Growth ETF56.8%Different index0.18%+15.0 bps80
VOOGVanguard S&P 500 Growth Index Fund ETF Shares56.5%Different index0.070%+4.0 bps84
DTDWisdomTree U.S. Total Dividend Fund56.4%Different index0.28%+25.0 bps73
SPYVState Street SPDR Portfolio S&P 500 Value ETF55.1%Different index0.040%+1.0 bps93
IVEiShares S&P 500 Value ETF55.1%Different index0.18%+15.0 bps87
VOOVVanguard S&P 500 Value Index Fund ETF Shares55.0%Different index0.070%+4.0 bps90
VONVVanguard Russell 1000 Value Index Fund ETF Shares54.2%Different index0.060%+3.0 bps93
IWDiShares Russell 1000 Value ETF54.2%Different index0.18%+15.0 bps88
DLNWisdomTree U.S. LargeCap Dividend Fund54.1%Different index0.28%+25.0 bps79
VONGVanguard Russell 1000 Growth Index Fund ETF Shares53.7%Different index0.060%+3.0 bps85
IWFiShares Russell 1000 Growth ETF53.5%Different index0.18%+15.0 bps80
XLGInvesco S&P 500 Top 50 ETF52.5%Different index0.20%+17.0 bps78
ONEQFidelity Nasdaq Composite Index ETF51.7%Different index0.21%+18.0 bps79
VUGVanguard Growth Index Fund ETF Shares50.0%Different index0.030%same85
DGRWWisdomTree U.S. Quality Dividend Growth Fund49.2%Different index0.28%+25.0 bps78
SCHGSchwab U.S. Large-Cap Growth ETF48.7%Different index0.040%+1.0 bps86
IWYiShares Russell Top 200 Growth ETF48.7%Different index0.20%+17.0 bps79
SUSAiShares ESG Optimized MSCI USA ETF48.1%Different index0.25%+22.0 bps79
DSIiShares ESG MSCI KLD 400 ETF46.6%Different index0.25%+22.0 bps77
QQQInvesco QQQ Trust44.9%Different index0.18%+15.0 bps83
QQQMInvesco NASDAQ 100 ETF44.9%Different index0.15%+12.0 bps84
QYLDGlobal X NASDAQ 100 Covered Call ETF44.9%Different index0.60%+57.0 bps60
SCHVSchwab U.S. Large-Cap Value ETF44.0%Different index0.040%+1.0 bps94
JEPQJPMorgan Nasdaq Equity Premium Income ETF43.6%Different index0.35%+32.0 bps69
MGKVanguard Mega Cap Growth Index Fund43.0%Different index0.050%+2.0 bps84
RSPInvesco S&P 500 Equal Weight ETF42.5%Different index0.20%+17.0 bps90
QUALiShares MSCI USA Quality Factor ETF42.0%Different index0.15%+12.0 bps85
DGROiShares Core Dividend Growth ETF41.9%Different index0.080%+5.0 bps89
IWXiShares Russell Top 200 Value ETF40.8%Different index0.20%+17.0 bps81
VTVVanguard Value Index Fund ETF Shares40.3%Different index0.030%same94
VIGVanguard Dividend Appreciation Index Fund ETF Shares39.0%Different index0.040%+1.0 bps89
FDVVFidelity High Dividend ETF38.6%Different index0.15%+12.0 bps84
IGMiShares Expanded Tech Sector ETF38.3%Different index0.39%+36.0 bps72
MTUMiShares MSCI USA Momentum Factor ETF35.7%Different index0.15%+12.0 bps85
IYWiShares U.S. Technology ETF35.4%Different index0.38%+35.0 bps70
VYMVanguard High Dividend Yield Index Fund ETF Shares34.1%Different index0.040%+1.0 bps90
MGVVanguard Mega Cap Value Index Fund31.0%Different index0.050%+2.0 bps92
JEPIJPMorgan Equity Premium Income ETF31.0%Different index0.35%+32.0 bps70
USMViShares MSCI USA Min Vol Factor ETF31.0%Different index0.15%+12.0 bps90
VGTVanguard Information Technology Index Fund ETF Shares30.6%Different index0.090%+6.0 bps83
FTECFidelity MSCI Information Technology Index ETF30.5%Different index0.084%+5.4 bps83
How to read this

Tax-loss harvesting sells a position at a loss to realize the tax deduction, then immediately re-establishes the same exposure via a different security so the portfolio's allocation barely moves. The IRS wash-sale rule (§1091) disallows the loss if you buy a "substantially identical" security within 30 days before or after the sale.

"Substantially identical" is not statutorily defined for funds. The IRS has not formally ruled on ETF-to-ETF swaps. The convention this site uses — and that the Bogleheads wiki has used for ~20 years without a documented audit failure — is:

  • Different index (e.g. CRSP US Total Market ↔ S&P Total Market) is the conventional Bogleheads-wiki swap — not an IRS-issued safe harbor. No letter ruling or court case has tested this convention for ETFs.
  • Same index (IVV ↔ VOO ↔ SPLG all track S&P 500) is conventionally treated as wash-sale risk — same securities, same weights, just different wrappers.

Overlap % is the sum of min(weight_a, weight_b) across every security held in both funds — "what fraction of your dollar exposure stays the same after the swap." High overlap means the swap holds your allocation steady; very low overlap means the replacement fund is a different bet, not a TLH partner.

Bps difference shows how much more (or less) the replacement charges. Even "permanent" TLH partners come with a small cost difference; factor that into the savings if you don't plan to swap back.

This tool flags wash-sale risk on benchmark match. It does not constitute tax advice — confirm any harvest with your own CPA, especially across multiple accounts (the wash-sale rule applies portfolio-wide, including spouse + IRA).

Wash-sale classification uses benchmark-index match as a heuristic; the IRS has not formally ruled on ETF-to-ETF swaps. Holdings overlap is computed off the latest SEC N-PORT filings (typical 30–60 day lag). See the methodology for how overlap is calculated.

PlainIndex publishes data and editorial commentary — nothing here is tax or investment advice. The wash-sale rule applies portfolio- wide (including IRA and spouse accounts); confirm any actual harvest with a tax professional.