๐Ÿ“ˆ Investing ยท March 13, 2026 ยท 15 min read

Stock Portfolio Tracker in Google Sheets: Track Gains, Dividends & Allocation (2026)

Your brokerage app shows your current balance. It does not show you your actual return rate by position, your dividend income trend over 3 years, or whether your asset allocation still matches your target. A Google Sheets portfolio tracker does all of that โ€” for free, with live prices, on your terms.

58%
of U.S. adults own stocks (2026 Gallup) โ€” most have no idea their actual return rate
$0
cost to build a portfolio tracker with live stock prices using GOOGLEFINANCE
20 min
monthly maintenance to keep a complete portfolio tracker current

In This Guide

  1. Why Serious Investors Use Spreadsheets
  2. What Your Portfolio Tracker Should Measure
  3. The 4-Tab Portfolio Tracker Structure
  4. Tab 1: Holdings โ€” Your Current Positions
  5. Tab 2: Transaction History โ€” Every Buy, Sell & Dividend
  6. Tab 3: Performance Dashboard
  7. Tab 4: Dividend Tracker
  8. GOOGLEFINANCE: Live Prices in Google Sheets
  9. Tracking Cost Basis & Unrealized Gains
  10. Asset Allocation & Rebalancing
  11. Capital Gains: What to Track for Taxes
  12. 7 Portfolio Tracker Mistakes to Avoid

Why Serious Investors Use Spreadsheets (Even With Brokerage Apps)

Brokerage apps have improved dramatically. Fidelity, Schwab, and Vanguard all show unrealized gains, asset allocation, and performance. So why build a separate tracker?

Three reasons: consolidation, customization, and history.

Consolidation: Most investors have accounts at 2-3 brokerages โ€” a Fidelity 401(k) through work, a Roth IRA at Vanguard, and a taxable account at Robinhood. Each brokerage shows only its own accounts. A Google Sheets tracker merges everything into one view of your actual net investment position.

Customization: Your brokerage can't show you the metrics you care about. Want to track dividend growth year-over-year? Compare your small-cap allocation against your target by quarter? Calculate your true IRR after accounting for dollar-cost averaging at different price levels? A spreadsheet can. Apps can't.

History: Brokerages delete or hide old transaction history. Some only go back 5-10 years. Your spreadsheet keeps everything, forever, and you control the export.

What Your Portfolio Tracker Should Measure

Before building anything, be clear on which metrics actually matter. Most investors track too little (just current value) or too much (17 ratios they never look at). The right set is:

Metric Why It Matters Updated
Current Value Shares ร— current price โ€” your portfolio worth right now Live (GOOGLEFINANCE)
Cost Basis What you actually paid; drives gain/loss calculations Manual (per transaction)
Unrealized Gain/Loss Current Value โˆ’ Cost Basis; paper profit/loss Live (formula)
Total Return % (Current Value โˆ’ Cost Basis) / Cost Basis Live (formula)
Dividend Income Passive income generated; useful for FIRE tracking Manual (logged on receipt)
Asset Allocation % in each category vs. target; drives rebalancing Live (formula)
Realized Gains Profits from sold positions; needed for tax reporting Manual (on sale)

The 4-Tab Portfolio Tracker Structure

Tab Purpose How Often Updated
Holdings All current positions with live prices and gain/loss Auto (GOOGLEFINANCE) + manual on trades
Transactions Every buy, sell, and dividend received Manually on each trade/dividend
Performance Portfolio-level returns, allocation, monthly history Snapshot monthly + auto formulas
Dividends Dividend log by stock and date, with annual totals Manually when dividends land

Tab 1: Holdings โ€” Your Current Positions

This is the main view. One row per position (ticker). Columns pull live data via GOOGLEFINANCE and calculate gain/loss automatically.

Holdings Tab Columns

Column Data Type Manual or Formula
Ticker Stock symbol (e.g., AAPL) Manual
Name Company name (or GOOGLEFINANCE) Manual or Formula
Account Fidelity 401k / Roth IRA / Taxable Manual
Asset Class US Stock / Intl Stock / Bond / REIT / Cash Manual
Shares Number of shares held Manual (update on trades)
Avg Cost Basis Average purchase price per share Formula (from Transactions tab)
Total Cost Shares ร— Avg Cost Basis Formula
Current Price Live price via GOOGLEFINANCE Formula
Current Value Shares ร— Current Price Formula
Unrealized Gain $ Current Value โˆ’ Total Cost Formula
Unrealized Gain % Gain / Total Cost Formula
% of Portfolio Current Value / Total Portfolio Value Formula
Target Allocation % Your desired weight for this position Manual
Allocation Drift Actual % โˆ’ Target % Formula

Example Holdings View

Ticker Shares Avg Cost Current Price Current Value Gain %
VTI 45 $198.40 $247.80 $11,151 +24.9%
VXUS 30 $54.20 $57.40 $1,722 +5.9%
BND 20 $73.80 $71.20 $1,424 โˆ’3.5%
SCHD 25 $82.10 $97.50 $2,438 +18.8%
AAPL 15 $165.00 $198.40 $2,976 +20.2%

Tab 2: Transaction History โ€” Every Buy, Sell & Dividend

This is the audit trail. Log every transaction here: purchases, sales, dividend reinvestments, and cash dividends. This tab powers your cost basis calculations and is essential for accurate tax reporting.

Transaction Log Columns

๐Ÿ’ก Cost Basis Method: FIFO (first in, first out) is the IRS default for most investors, but you can elect specific lot identification. Decide your method before you start selling and be consistent. Your transaction log is the source of truth for this calculation.

Tab 3: Performance Dashboard

The performance dashboard gives you the portfolio-level view: total value, total gain/loss, savings rate into investments, and a monthly snapshot history for charting.

Key Performance Metrics to Display

Asset Allocation: Example Dashboard

US Stocks โ€” Target: 60%
63.2% โ†‘
Intl Stocks โ€” Target: 20%
8.9% โ†“
Bonds โ€” Target: 10%
7.1% โ†“
Dividend Stocks โ€” Target: 10%
12.4% โ†‘

In this example, international stocks and bonds are underweight (red). The next contribution should flow there to rebalance โ€” or you sell a sliver of US stocks to buy VXUS. The tracker makes this decision obvious rather than leaving it to memory.

Tab 4: Dividend Tracker

If you hold dividend stocks or ETFs, this tab is especially valuable. It tracks dividend income by stock and by quarter, calculates your forward annual dividend income, and shows dividend growth year-over-year.

Dividend Log Columns

Annual Dividend Summary

Ticker 2024 Total 2025 Total 2026 YTD YoY Growth
SCHD $312 $348 $94 +11.5%
VTI $186 $204 $52 +9.7%
BND $74 $68 $16 โˆ’8.1%
AAPL $38 $42 $11 +10.5%
Total $610 $662 $173 +8.5%

At $662 in dividends last year and growing 8.5% annually, you're projected to receive ~$718 in 2026. That's not life-changing alone โ€” but tracked consistently, it shows whether your dividend income is on the trajectory you need.

GOOGLEFINANCE: Live Prices in Google Sheets

The GOOGLEFINANCE function is the core of a portfolio tracker in Google Sheets. It pulls live (or slightly delayed) market data directly into your cells โ€” no API key, no subscription, no manual updates.

Basic Syntax

GOOGLEFINANCE Syntax
=GOOGLEFINANCE(ticker, attribute, [start_date], [end_date], [interval])
The simplest version needs just ticker + attribute. Add your ticker in cell A2 and reference it: =GOOGLEFINANCE(A2, "price")

Most Useful Attributes

Live Price
=GOOGLEFINANCE("AAPL", "price")
Returns the current market price. Updates automatically when the sheet refreshes.
Price Change Today ($)
=GOOGLEFINANCE("AAPL", "change")
Returns today's price change in dollars. Use with conditional formatting to color green/red.
Price Change Today (%)
=GOOGLEFINANCE("AAPL", "changepct")
Returns today's percentage change. Divide by 100 and format as % in the cell.
52-Week High
=GOOGLEFINANCE("AAPL", "high52")
Useful for seeing how far each position is from its yearly high.
Market Cap
=GOOGLEFINANCE("AAPL", "marketcap")
Large-cap vs. small-cap verification for allocation tracking.
P/E Ratio
=GOOGLEFINANCE("AAPL", "pe")
Trailing P/E. Useful for value investing screens.
Historical Prices (for charting)
=GOOGLEFINANCE("SPY", "close", DATE(2026,1,1), TODAY(), "WEEKLY")
Returns a 2-column array of date + closing price. Use this to build a portfolio growth chart vs. benchmark. Place in an empty area of your sheet โ€” it expands automatically.

โš ๏ธ Note: GOOGLEFINANCE data is delayed 15-20 minutes and may have occasional outages or incorrect data. It is reliable enough for long-term tracking but not suitable for active day trading decisions. Always verify against your broker for critical calculations.

Tracking Cost Basis and Unrealized Gains

Cost basis is the amount you paid for shares including commissions. It determines your taxable gain when you sell. For most buy-and-hold investors, average cost basis (ACB) per share is the simplest approach.

Average Cost Basis Per Share (from Transactions Tab)

Average Cost Basis Formula
=SUMPRODUCT((Transactions!B:B=A2)*(Transactions!D:D="Buy")*Transactions!F:F*Transactions!G:G) / SUMPRODUCT((Transactions!B:B=A2)*(Transactions!D:D="Buy")*Transactions!F:F)
A2 = Ticker in Holdings tab. Column B = Ticker, D = Transaction Type, F = Shares, G = Price in Transactions tab. Returns weighted average purchase price across all buys for this ticker.

Unrealized Gain/Loss

Unrealized Gain $ Formula
=E2 - F2
E2 = Current Value (Shares ร— GOOGLEFINANCE price). F2 = Total Cost Basis (Shares ร— Avg Cost). Positive = profit. Negative = loss.
Unrealized Gain % Formula
=IFERROR((E2 - F2) / F2, 0)
Formatted as percentage. IFERROR prevents divide-by-zero if you have a position with zero cost basis (e.g., inherited shares where you don't know the original cost).

Dollar-Cost Averaging: Tracking Multiple Purchases

If you buy the same stock at different prices over time (which you should โ€” DCA is a proven strategy), your average cost basis changes with each purchase. The SUMPRODUCT formula above handles this automatically by calculating the weighted average across all buys logged in the Transactions tab.

Example: You bought VTI three times: 10 shares at $190, 15 shares at $205, and 20 shares at $195. Your average cost basis = (10ร—190 + 15ร—205 + 20ร—195) / 45 = $196.78. The formula handles this regardless of how many lots you have.

Asset Allocation & Rebalancing in Google Sheets

Asset allocation is more important than stock picking for long-term returns. Tracking it in Google Sheets lets you see drift in real time and make rebalancing decisions with actual data.

Calculating Actual Allocation % Per Asset Class

Asset Class Total Value
=SUMIF(Holdings!D:D, "US Stock", Holdings!I:I)
D = Asset Class column. I = Current Value column. Adjust column letters to match your Holdings tab. Repeat for each asset class.
Allocation % for Asset Class
=SUMIF(Holdings!D:D, "US Stock", Holdings!I:I) / SUM(Holdings!I:I)
Divides asset class total by total portfolio value. Format as percentage. Compare to your target allocation to see drift.

Rebalancing Decision Logic

When actual allocation drifts more than 5% from target, it's time to rebalance. There are two ways:

  1. Buy to rebalance: Direct new contributions toward underweight asset classes. No taxes, just buying more of what's cheap.
  2. Sell to rebalance: Sell overweight positions to buy underweight ones. Triggers a taxable event in non-retirement accounts โ€” calculate the tax cost first.
Rebalancing Amount Needed
=(Target % - Actual %) ร— Total Portfolio Value
Positive = you need to buy more of this asset class. Negative = you have too much and need to sell (or stop buying). This tells you exactly how much to move.

Capital Gains: What to Track for Taxes

When you sell shares, you owe taxes on the gain. The rate depends on how long you held the shares:

Holding Period Gain Type 2026 Tax Rate
Less than 1 year Short-term capital gain Ordinary income rate (up to 37%)
More than 1 year Long-term capital gain 0%, 15%, or 20% (depends on income)
In IRA / 401(k) N/A (tax-deferred or exempt) $0 until withdrawal

What to Log on Every Sale

๐Ÿ’ก Tax-Loss Harvesting: If you have a position with an unrealized loss, you can sell it to realize the loss and offset taxable gains elsewhere. Add a "Tax-Loss Harvesting Candidates" section to your Performance tab: filter for positions where Unrealized Gain % < โˆ’10% and held in taxable accounts. This is a legitimate tax optimization strategy โ€” not financial advice, but worth knowing.

Take Your Finances Further

The Freelancer Financial Dashboard on Etsy tracks income, expenses, tax reserves, and savings goals โ€” all in one Google Sheets template. If your portfolio income comes from freelance work, this is the companion tool to track where the money comes from.

View on Etsy โ€” $12.99 โ†’

7 Portfolio Tracker Mistakes to Avoid

1. Tracking Current Price Without Cost Basis

Knowing your portfolio is worth $85,000 is useless without knowing you invested $70,000. Always track cost basis. The gain, not the total value, tells you how you're doing.

2. Forgetting Dividend Reinvestment in Cost Basis

If you reinvest dividends (DRIP), those reinvested shares have their own cost basis equal to the price on the reinvestment date. Log every DRIP in your transaction history. Missing these makes your cost basis artificially low and overstates your taxable gain when you sell.

3. Only Tracking Your Best Performers

It's tempting to only log the stocks you're proud of. Track everything โ€” including the losers. You need the full picture, and losers might be tax-loss harvesting candidates.

4. Not Separating Accounts

Your taxable account and your Roth IRA are fundamentally different. Capital gains in the Roth are tax-free forever. Realizing a gain in your taxable account is a taxable event. Track them separately to avoid confusion during tax season.

5. Using Live GOOGLEFINANCE for Historical Records

When you record a monthly snapshot of portfolio value, copy and paste as values only. If you leave the GOOGLEFINANCE formula in your historical column, it will update to today's price and destroy your historical record. Values only. Every time.

6. Tracking Too Many Metrics

P/E ratios, beta coefficients, Sharpe ratios, sector exposure โ€” these are interesting but only useful if you act on them. Start with the basics (current value, cost basis, gain %, allocation) and add complexity only when you find yourself needing it.

7. Checking Too Frequently

A portfolio tracker is for monthly reviews, not daily anxiety. Set up the system, do a monthly check-in, and let compounding do its work. The tracker exists to give you information when you need to make a decision โ€” not to give you heart palpitations when the market drops 2% on a Tuesday.

Building the System: What to Do This Weekend

Portfolio Tracker Quick-Start (4 Hours)

Your portfolio tracker won't be perfect on day one. That's fine. A rough tracker you actually use beats a perfect system you abandon after two weeks. Start simple โ€” Holdings tab with GOOGLEFINANCE prices and manual cost basis โ€” and add the other tabs one by one as you get comfortable.

The goal isn't to beat the market (though tracking your returns vs. a benchmark helps you know if you are). The goal is to know โ€” clearly, at any moment โ€” exactly where your money stands, whether your allocation still matches your goals, and what decisions you need to make next.

Ready-Built Google Sheets Templates for Your Financial Life

SheetStackStudio builds financial tracking templates for freelancers, landlords, and goal-setters. The Freelancer Financial Dashboard ($12.99) covers income, expenses, tax reserves, and savings goals โ€” instant download, no subscription.

Shop SheetStackStudio on Etsy โ†’