- VTI 5Y return: +78.9% vs VXUS +51.1% — but VXUS leads on 1Y at +33.5% vs VTI +27.6%, a reversal worth interrogating.
- VXUS yields 2.69% vs VTI 1.03% — 2.6x higher income generates greater annual tax drag in taxable accounts.
- Valuation gap: VTI P/E 28.5 vs VXUS 18.7 — a 52% US premium, historically wide by post-2000 standards.
- Foreign tax credit from VXUS dividends is recoverable only in taxable brokerage accounts; permanently forfeited inside Roth IRA or 401(k).
- AUM: VTI $2,202.6B vs VXUS $629.1B — scale gap reflects US home bias more than quality difference.
The Performance Split — And the 1-Year Flip That Challenges the Narrative

The 20-year DCA simulation chart above — modeling $1,500 monthly at 4%, 7%, and 10% annual returns — illustrates how the VTI/VXUS allocation decision quietly reshapes terminal wealth over decades. The multi-year data gives VTI the unambiguous edge. Five-year cumulative: +78.9% vs VXUS’s +51.1%. Three-year: +86.1% vs +66.7%. That 20-30 percentage point spread is not noise — it compounds into a materially different retirement outcome.[Yahoo Finance]
The 1-year data inverts the story. VXUS posted +33.5% against VTI’s +27.6% — a 5.9-point margin for the historically underperforming fund. Both sit near 52-week highs (VTI at 99.2% of range, VXUS at 96.5%). When the laggard leads by this magnitude for a full calendar year, dismissing it as short-term noise requires more justification than most analysts provide.
| ETF | Fee | Yield | P/E | 5Y Return | 1Y Return | AUM |
|---|---|---|---|---|---|---|
| VTI | 0.03% | 1.03% | 28.5 | +78.9% | +27.6% | $2,202.6B |
| VXUS | 0.08% | 2.69% | 18.7 | +51.1% | +33.5% | $629.1B |
Tax Placement: The Variable Most Allocation Frameworks Skip
VXUS’s 2.69% yield generates roughly 2.6x more taxable dividend income than VTI’s 1.03% per dollar invested. Standard guidance: push high-yield into Roth IRA or 401(k) to defer or eliminate income tax. VXUS, however, carries a structural wrinkle. Dividends from foreign corporations often have taxes withheld at source country level — creating eligibility for the IRS foreign tax credit (Form 1116) in taxable accounts only. That credit is permanently forfeited inside Roth IRA. You still pay the foreign withholding; you simply receive no US-side offset.[ETF.com]
At marginal rates of 22-24%, the math becomes non-obvious. Holding VXUS in taxable costs more in ordinary income tax, but recovers 15-20% of foreign withholding via the credit. Holding it in Roth eliminates the income tax and forfeits the credit entirely. For investors in lower brackets, the taxable placement can net out ahead — an asymmetry most standard allocation frameworks miss entirely.
The Contrarian Read: VXUS at 18.7x Is Not a Consolation Prize
Market consensus treats VXUS as a reluctant hedge — held at 20-30% weight to reduce US concentration, not a conviction allocation. The valuation data supports a less apologetic view. VTI at P/E 28.5 versus VXUS at 18.7 represents a 52% premium for US equities. That spread is wider than it stood in 2007 pre-crisis, though still below the 1999 extremes. Historically, episodes of this magnitude resolve through international catch-up, US multiple compression, or both.[Morningstar]
VXUS currently trades at $85.08, within 3.5% of its 52-week high of $85.78. The 1-year +33.5% is consistent with early-stage mean reversion. One year does not confirm a regime shift — but the pattern rhymes with prior cycle turns at comparable valuation spreads. The data supports this reading; shifting one assumption (USD direction) changes it entirely.
Where This Analysis Could Be Wrong
The entire VXUS recovery case assumes FX does not structurally suppress returns. VXUS is USD-priced but its holdings are denominated in EUR, JPY, GBP, and dozens of other currencies. A sustained dollar strengthening cycle — as demonstrated in 2014-2015 and again in 2022 — compresses VXUS’s USD returns even when underlying equities outperform in local-currency terms. VXUS offers no built-in hedge. The 5-year underperformance (+51.1% vs +78.9%) partially reflects dollar strength, not purely equity weakness. If the next 5 years reproduce a similar USD environment, the valuation argument holds in theory and fails in practice.
Additionally, if US technology earnings sustain current growth rates for another 3-5 years, VTI’s P/E of 28.5 may prove justified rather than stretched. Elevated multiples can remain elevated longer than mean-reversion models predict.
Frequently Asked Questions
Is VXUS a good long-term complement to VTI?VXUS provides exposure to 7,500+ non-US equities not captured by VTI. The 5-year return gap is real, but the 52% valuation premium in US equities and VXUS’s recent 1-year outperformance (+33.5% vs +27.6%) suggest the pair carries strategic merit at current spreads.Should VXUS be held in a taxable account or Roth IRA?Standard guidance says Roth (tax-deferred growth on high yield). But the foreign tax credit — available only in taxable — complicates the math. Investors at the 22% bracket or below should model both scenarios; the credit recapture can offset the income tax cost.What VTI/VXUS split aligns with global market cap weight?World market cap places non-US equities at roughly 40%, implying a 60/40 VTI/VXUS split. Most US retail portfolios run 80/20 or more US-heavy, reflecting home bias rather than any specific analytical framework.How significant is the expense ratio difference between VTI and VXUS?VTI: 0.03%; VXUS: 0.08%. At $100,000 invested, the annual cost difference is $50. At scale — say, $500,000 in VXUS — that becomes $250/year, still secondary to return and tax considerations but worth noting.Does VXUS include emerging markets, and how does that affect risk?Yes. VXUS combines developed international and emerging market equities. EM exposure adds political, currency, and liquidity risk that developed-only alternatives like VEA do not carry. Investors seeking cleaner exposure should evaluate VEA as a VXUS substitute.
📊 Verify this data yourself
import yfinance as yf
t = yf.Ticker("VXUS")
t.history(period="5y")["Close"].pct_change().add(1).cumprod()
