Free tool · runs in your browser

Portfolio Analyzer

Upload your brokerage positions and see how everything you hold has behaved over the last 1–5 years.

1 · Add your holdingsCSV from any major broker, a pasted list, or typed in
Drop your positions CSV here or click to choose a file (.csv or .txt)

Processed in your browser. Only ticker symbols are sent to our server.

Details

Your file is read in your browser and never uploaded. Only the ticker symbols are sent to our server to look up price history; share counts, dollar amounts, and account numbers never leave this page. See the privacy policy.

Paste or type holdings instead
Without a header, the amounts are:

Look for Export or Download on the page that lists your positions or holdings. Any CSV with a Symbol column plus a Quantity or Market Value column works. If your broker has no export, download our blank template and fill it in.

Broker menus move around. If a step doesn't match what you see, look for an Export or ⤓ button on the page that lists your positions.

What these numbers mean
Total return
Growth from the start of the period to today, with dividends reinvested (adjusted prices).
CAGR
Compound annual growth rate: the steady yearly return that would produce the same total return.
Avg return
Arithmetic average daily return × 252 trading days. Always ≥ CAGR; the gap grows with volatility.
Std dev
Annualized volatility: standard deviation of daily returns × √252. About two-thirds of years land within ±1 std dev of the average.
Sharpe
Average return above the risk-free rate (3-month T-bills) divided by volatility. Above 1 is strong; below 0 means T-bills did better.
Sortino
Like Sharpe, but only counts downside volatility, so upside swings aren't penalized.
Max drawdown
Largest peak-to-trough decline during the period.
Calmar
CAGR ÷ |max drawdown|: return earned per unit of worst-case pain.
Beta
Sensitivity to the benchmark. 1.2 means it moved about 1.2% for each 1% move in the benchmark.
Alpha
Annualized return beyond what beta alone predicts (Jensen's alpha). Backward-looking, not skill.
Correlation
How closely two daily-return series move together, from −1 to +1. Lower correlation between holdings means more diversification.
Efficient frontier
For each level of volatility, the best return any mix of your holdings (no shorting or leverage) earned over the period: Markowitz mean-variance. A portfolio below it took more risk than it needed for its return. It's computed with hindsight.
% of risk
Each holding's share of total portfolio variance: its weight × its covariance with the whole portfolio ÷ portfolio variance. Sums to 100%.
Effective # of holdings
1 ÷ sum of squared weights. Ten equal positions = 10; one 90% position plus nine tiny ones ≈ 1.2.
Unrealized gain
Current value minus cost basis (what you paid, per your broker). Lifetime, not annualized.
Expense ratio
The yearly fee a fund takes out of its assets, as a % of what you hold. 0.50% on $10,000 is $50 a year, every year.
Look-through
Adding up what your funds hold underneath, so owning AAPL directly and through three index funds shows up as one total.
Tax-loss harvesting
Selling a position below what you paid to realize a loss that offsets gains (and up to $3,000 a year of ordinary income), then buying something similar but not "substantially identical" to stay invested.
Wash sale
If you buy the same or a substantially identical security within 30 days before or after selling at a loss, in any account, the loss is disallowed for now.
Monte Carlo
Running thousands of random markets with a chosen average return and volatility to see the spread of outcomes, not just one average line.
Money-weighted return
Your personal annualized return including the timing and size of your buys and sells (the IRR of your cash flows). Different from the time-weighted figures above, which ignore when money went in.
Up / down capture
Average return in the benchmark's up months (or down months) as a percent of the benchmark's. Under 100% on the down side is good.
Sharpe 95% range
The span of Sharpe ratios that fit the history about as well as the one measured. A Sharpe from a few years of returns is an estimate, and lopsided or fat-tailed returns make it less certain. The range widens to show that. Because the range allows for error in both directions, it can dip below zero even when the probability of a Sharpe above zero is as high as 97%.
Probability true Sharpe is above zero
How confident the history lets us be that the underlying Sharpe ratio is above zero, meaning the return above T-bills wasn't just noise (the probabilistic Sharpe ratio). It's a statistical confidence level under standard assumptions, not a guarantee, and says nothing about the future.
Factor exposure
How strongly your monthly returns moved with each Fama-French factor, estimated by regression. An exposure of 0.30 to Size means that in a month when small companies beat large ones by 1%, your portfolio tended to gain about 0.3% more than it otherwise would have.
Market (Mkt−RF)
The whole US stock market's return above 1-month T-bills. An exposure near 1.0 means you moved about one-for-one with the market.
Size (SMB)
Small companies minus big ones. Positive = a small-company tilt; negative = a large-company tilt.
Value (HML)
Cheap stocks (high book value relative to price) minus expensive ones. Negative means a growth tilt.
Profitability (RMW)
Highly profitable companies minus weakly profitable ones.
Investment (CMA)
Companies that grow their assets conservatively minus those expanding aggressively.
Momentum (MOM)
Stocks that rose most over the past year (skipping the latest month) minus those that fell most.
Factor alpha
The average yearly return left over after accounting for every factor exposure. The Alpha tile above is Jensen's alpha, which only adjusts for the benchmark; factor alpha also adjusts for size, value, profitability, investment and momentum tilts.
t-stat
An estimate divided by its standard error. Beyond about ±2, the estimate is statistically distinguishable from zero (roughly 95% confidence); inside that, it could easily be noise.
R-squared
The share of the month-to-month ups and downs in your returns that the factors explain, from 0% to 100%.
Shrunk covariance
A steadier estimate of how holdings move together: the measured covariances blended with a simple version where every pair has the same average correlation (Ledoit-Wolf). The blend weight, or intensity, is estimated from the data: 0 = measured only, 1 = fully simplified.
Same cash flows comparison
Your buys, sales and dividends replayed into an index fund on the same dates, so you can compare your money-weighted return with what the same money would have earned there.

Fama-French factor returns come from the Kenneth R. French Data Library.

Past performance does not predict future results. This is an educational tool, not investment advice. Prices come from third-party market data and may contain errors.