Still working. The data server sleeps when idle, so the first load after a quiet spell can take up to about 40 seconds. This page will fill in on its own.
Still working. The data server sleeps when idle, so the first load after a quiet spell can take up to about 40 seconds. This page will fill in on its own.
Paste what you own — funds or individual stocks. You’ll get a plain-English read on concentration, home bias, fees and hidden factor tilts, a full backtest against a century of data, and a Monte Carlo projection of where it could take you. No account required to use any of it. Don’t have one yet? Build from scratch →
Nothing is saved or sent anywhere but the pricing API. Funds are matched to a long-history asset-class proxy (a total-bond fund → the total-bond index); individual stocks use their own record where we have it. Crypto is dropped — no comparable long history.
A rules-based read on what you entered — concentration, overlap, fees, tilts. It doesn't look at markets or news, and every point names the number behind it so you can weigh it yourself.
Over 30 years this mix returned 7.5%/yr with a 49% worst drawdown and 72.4% positive years. 2 things below could be tightened up without changing what the portfolio is trying to do.
The portfolio underperformed its own factor exposures — the signature of fees, cash drag, or a fund that doesn't track its category cleanly. Worth finding which holding is the leak.
Over 30 years that compounds into real money. The same mix in broad index funds at ~0.05% would have ended materially higher, for the same risk.
Monthly returns still correlate 0.98 with US stocks despite the bond allocation — the equity sleeve dominates the risk. If the point of the bonds is a shock absorber, longer-duration Treasuries do more of that job than a total-bond fund.
Depending on which year you'd started, the annualized return ranges from 6.0% to 17.4%. A single CAGR hides that. Adding money gradually rather than all at once narrows the gap.
Almost all of this portfolio's ups and downs trace to exposures with long historical records — market, size, value, profitability, investment, momentum — not to anything idiosyncratic. That's the reassuring case: you mostly know what you own.
Portfolio Lab isn’t a licensed adviser and doesn’t know your taxes, timeline, or the rest of your finances. “Trim” means the structure has a fixable inefficiency, not that anyone should buy or sell a specific security today.
Every monthly return regressed on the Fama–French 5 factors plus momentum, 1996-05–2026-08. This is the standard academic decomposition of "where did the returns come from".
Faded bars aren’t statistically distinguishable from zero (|t| < 2).
96% of the month-to-month variation comes from these six well-documented exposures. The rest is portfolio-specific.
t-stat -3.5. Negative — the mix lagged its own risk exposures, usually a cost or tracking drag.
Rolling 5-year market beta has ranged 0.80–0.99 over the sample — the portfolio’s stock-market sensitivity is not constant.
Same portfolio, same end date, different start year. If these squares aren't roughly uniform, the headline return is partly an accident of when the sample begins.
A backtest says what would have happened. This projects what might — 10,000 Monte Carlo paths built from this mix’s own history, so you get a range, not a single number.
May 1996 – Sep 2026 · 365 months of history
Growth of $10,000, nominal, rebalanced annual. May 1996 – Sep 2026.
Decline from the prior peak. Worst: -49% (Oct 2007 → Feb 2009, recovered Mar 2013).
72.4% of full years were positive. Partial years at the ends are shown but excluded from that count.
Annualized return over every N-year holding period in the sample — the spread between the columns is how much your entry timing mattered.
| Holding period | Worst | 25th pct | Median | 75th pct | Best | % negative |
|---|---|---|---|---|---|---|
| 1 year353× | -42.2% | +0.1% | +11.8% | +17.9% | +49.9% | 24.4% |
| 3 years329× | -15.2% | +4.1% | +8.0% | +12.2% | +21.6% | 17.9% |
| 5 years305× | -5.0% | +1.8% | +6.7% | +9.9% | +18.3% | 17.4% |
| 10 years245× | -2.2% | +4.5% | +6.7% | +8.4% | +12.2% | 4.1% |
| 15 years185× | +3.0% | +4.4% | +6.2% | +7.5% | +11.3% | 0% |
| 20 years125× | +3.3% | +5.3% | +6.7% | +7.3% | +8.0% | 0% |
Total return through each episode, on month-end data. Real intramonth losses (Oct 1987, Mar 2020) were sharper than monthly figures show.
| Episode | Your portfolio | S&P 500 | 60/40 |
|---|---|---|---|
| Dot-com bust 2000-09–2002-09 | -40.0% | -44.1% | -21.6% |
| Global Financial Crisis 2007-11–2009-02 | -49.4% | -50.9% | -30.7% |
| 2018 Q4 selloff 2018-10–2018-12 | -11.9% | -14.3% | -8.4% |
| COVID crash 2020-01–2020-03 | -19.0% | -20.9% | -11.2% |
| 2022 stocks & bonds 2021-12–2022-09 | -21.6% | -22.1% | -19.0% |
Correlation of monthly returns: 0.98 to US stocks, 0.19 to US bonds. A classic 60/40 over the same window returned 8.1% a year with a -31% worst drawdown. Figures are gross of taxes. Drawdowns and crisis returns use month-end prices and understate intramonth pain.