Guides

How to Track a Portfolio Without a Spreadsheet

Spreadsheets go stale the moment prices move. Here is a calmer way to track every holding across accounts, with live prices and honest cost-basis math.

2 min read

The spreadsheet starts out fine. You list your holdings, paste in prices, and add a column for gains. Two weeks later the prices are wrong, you have bought something new, and the "current value" cell is quietly lying to you.

Here is a way to track everything that does not rot between updates.

Why spreadsheets drift

A spreadsheet stores a snapshot. Markets move continuously; your snapshot does not. Every price you typed is stale the instant you save the file, and every new purchase means more manual data entry — including the fiddly cost-basis math that has to be redone each time.

What to track instead

You only need a few things per holding, kept current:

FieldWhy it matters
Ticker & sharesIdentifies the position and its size
Cost basisSets your gain when you sell
Live priceThe only number that is honestly "now"
Unrealized P/LWhat you would make selling today

The trick is that the last two should update themselves. If a human has to refresh them, they won't stay fresh.

Worked exampleOne position, kept live

You hold 15 shares of AAPL at a $180 basis ($2,700). Instead of pasting a price weekly, the tracker fetches it on load:

  • Price now: $210 → market value 15 × $210 = $3,150
  • Unrealized gain: $3,150 − $2,700 = $450

Tomorrow the price is different and so is the gain — with no edit from you.

Moving off the spreadsheet

The practical steps:

  1. List every holding once, with shares and what you paid.
  2. Let a tool fetch prices so market value and P/L compute themselves.
  3. Add transactions as they happen instead of rebuilding a sheet.

This is exactly what StoxDeck does — enter a holding once and it prices itself from then on. Build your first deck →

If you are still weighing whether to switch, the honest trade-offs are laid out in tracker vs. spreadsheet. And if your holdings are spread across brokers, pulling them into one view is the part that a spreadsheet can never really automate.