How to track a stock portfolio in a spreadsheet
A spreadsheet is the classic portfolio tracker. Here's what to track, the formulas that get you there, where GOOGLEFINANCE runs out of road, and the no-formula alternative.
Free to start · no sign-up needed · real-time on every plan.
July 5, 2026 · 7 min read
What to track (the columns)
A useful portfolio tracker has a row per holding and these columns:
- Shares and average cost — what you own and paid.
- Current price — live from the market.
- Market value — price × shares.
- Weight — this position as a % of the whole.
- Unrealized gain/loss — (price − avg cost) × shares.
That's the baseline. A serioustracker also shows realized P&L, a money-weighted return (XIRR), how you're doing versus the S&P 500, and dividends received.
The GOOGLEFINANCE way (and the formulas)
In Google Sheets you pull the price with =GOOGLEFINANCE(A2,"price"), then build the rest:
- Market value:
=price*shares - Unrealized P&L:
=(price-avgcost)*shares - Weight:
=value/SUM(value_range)
For a simple snapshot of current holdings, this works. The trouble starts when you want the numbers that actually tell you how you're doing.
Where the spreadsheet runs out of road
Four gaps show up fast:
- No realized P&L. Sell a position and the sheet forgets it — only current holdings show.
- No money-weighted return (XIRR). A simple % return misleads once you add money over time; XIRR needs your dated buys and sells.
- No dividends. GOOGLEFINANCE has no dividend attribute, so income and yield-on-cost are off the table.
- Delayed prices. GOOGLEFINANCE is 15-20 minutes behind and freezes when the sheet is closed.
You can bolt some of this on with more formulas and manual trade logs, but now you're maintaining a spreadsheet instead of watching a portfolio.
The no-formula way
Stealth Quotesis a spreadsheet-style tracker that fills those gaps by design. Enter your shares — or log your buys and sells — and it computes market value, weight, realized & unrealized P&L, your money-weighted return (XIRR), performance versus the S&P 500, and the dividends you've received. No formulas, no account linking, and prices are real-time. Stocks and crypto in one grid.
| Google Sheets | Stealth Quotes | |
|---|---|---|
| Value, weight, unrealized P&L | ||
| Realized P&L (from sells) | ||
| Money-weighted return (XIRR) | ||
| Dividends received | ||
| Vs S&P 500 | ||
| Real-time prices | ||
| No formulas to build |
Prefer the DIY route? That's completely fine — a Google Sheets tracker is a great way to learn the mechanics. This guide is about knowing where it stops, so you're not surprised when the numbers you want aren't there.
Keep reading
Frequently asked questions
Can Google Sheets track a stock portfolio?
Yes, for the basics — current value, weight and unrealized gain — using GOOGLEFINANCE for price and simple formulas for the rest. It struggles with realized P&L, money-weighted return (XIRR) and dividends, and its prices are delayed 15-20 minutes.
What should a portfolio tracker show?
At minimum: shares, average cost, current price, market value, weight, and unrealized gain/loss. A serious tracker adds realized P&L, a money-weighted return (XIRR), performance vs the S&P 500, and dividends received.
How do I calculate portfolio gain/loss in Google Sheets?
Unrealized gain = (current price − average cost) × shares. Market value = current price × shares. The current price comes from =GOOGLEFINANCE(ticker,"price"), which is delayed by 15-20 minutes.
What can't a Google Sheets portfolio do?
It has no native realized P&L from sells, no XIRR, no dividends (GOOGLEFINANCE has no dividend attribute), and its prices are delayed and freeze when the sheet is closed. Those are the gaps a purpose-built tracker fills.
Is Stealth Quotes free?
Yes — the full portfolio tracker (P&L, XIRR, vs S&P 500, dividends) is free on every plan, with no formulas and no account linking.
A real portfolio tracker — no formulas.
Value, P&L, XIRR, vs the S&P 500, and dividends — computed for you. Free, no sign-up needed.