How to Track Your Crypto Portfolio in Google Sheets (Free, 2026)
Short answer: You can track your entire crypto portfolio in Google Sheets for free with three formulas: GOOGLEFINANCE pulls live prices for Bitcoin and Ethereum, IMPORTDATA with a free price API covers every altcoin, and two multiplication formulas turn those prices into live profit/loss. Set it up once in about 15 minutes, and your sheet updates itself every time you open it — no paid app, no API key, no signup.
Paid portfolio apps charge $8–15 a month for what is, at its core, a table with live prices. If your needs are "what do I own, what is it worth, am I up or down," a spreadsheet does the same job — and your data stays in your own Google Drive instead of on someone else's servers.
Why Google Sheets beats paid trackers for most people
- It's actually free. No tiers, no "pro" upsell, no trial countdown.
- Private by default. Your holdings live in your Drive. Paid apps and exchange-connected trackers hold your data on their infrastructure.
- Unlimited coins. Most free app tiers cap you at 10–25 assets. A sheet doesn't care if you hold 200 memecoins.
- You own the math. Want cost basis per tax lot, a rebalance target, or a column your app never thought of? Add it in ten seconds.
The one honest tradeoff: a sheet won't do your taxes. FIFO/LIFO cost-basis math across hundreds of trades belongs in dedicated tax software (more on that at the end). For day-to-day "am I up or down," Sheets wins.
The two ways to get live crypto prices (pick the right one)
Every crypto Sheets guide boils down to how prices get into the sheet. There are two free methods, and using the wrong one is the #1 reason people's trackers break. Here's the decision table:
| Your situation | Method | Formula |
|---|---|---|
| BTC, ETH, LTC only | GOOGLEFINANCE | =GOOGLEFINANCE("CURRENCY:BTCUSD") |
| Altcoins, memecoins, anything else | IMPORTDATA + free price API | =IMPORTDATA("https://cryptoprices.cc/SOL/") |
| Hundreds of coins + market data | CoinGecko add-on / API | Heavier setup, API limits |
GOOGLEFINANCE is built into Sheets and dead simple — but in 2026 it still only supports a handful of major cryptocurrencies (Bitcoin, Ethereum, Litecoin and a few more). Point it at Solana or a memecoin and you get #N/A.
IMPORTDATA with a lightweight price API (like cryptoprices.cc) covers hundreds of coins with one short formula and no API key. This is the method most guides bury halfway down the page; for anyone holding altcoins, it should be method #1.
Step 1: Set up your columns
Create a new sheet and put these headers in row 1:
| A | B | C | D | E | F | G | H |
|---|---|---|---|---|---|---|---|
| Coin | Ticker | Qty Held | Buy Price | Invested | Live Price | Current Value | P/L |
Fill in what you know: coin name, ticker (BTC, ETH, SOL…), how much you hold, and the price you bought at. Everything else is formulas.
Step 2: Pull the live price
In F2 (Live Price), use whichever method fits the coin:
For BTC/ETH/majors:
=GOOGLEFINANCE("CURRENCY:"&B2&"USD")
This builds CURRENCY:BTCUSD from the ticker in B2, so you can drag the formula down and it adapts per row.
For altcoins:
=IMPORTDATA("https://cryptoprices.cc/"&B2&"/")
Put SOL in B2 and this returns the live Solana price. One formula, hundreds of coins, no key.
Step 3: Add the three money formulas
Invested (E2) — what you paid:
=C2*D2
Current Value (G2) — what it's worth now:
=C2*F2
Profit/Loss (H2) — the number you actually check every morning:
=G2-E2
Drag all three down. Format column H as currency, then add one more column:
% Return (I2) — so a $50 memecoin win and a $5,000 BTC position compare fairly:
=H2/E2
Format as a percentage.
Step 4: The totals row that makes it a portfolio
Leave a blank row, then add:
- Total invested:
=SUM(E2:E100) - Total value:
=SUM(G2:G100) - Total P/L:
=SUM(H2:H100) - Total return %:
=SUM(H2:H100)/SUM(E2:E100)
The E2:E100 range means new coins you add later get counted automatically. Put this totals block at the top of the sheet (rows 1–4) and start your coin table below it, and you get an at-a-glance dashboard every time you open the file.
Step 5: Make it readable in 60 seconds
Two formatting moves separate a tracker you actually use from one you abandon:
- Conditional formatting on the P/L column: Format → Conditional formatting → "Greater than 0" → green, "Less than 0" → red. Your winners and losers become instantly scannable.
- Allocation pie chart: Select your coin names and current values → Insert → Chart → Pie chart. This single visual answers "am I 80% in one memecoin?" faster than any table.
Pro move most guides skip — a target allocation column. Add a "Target %" column with the allocation you want (say 50% BTC, 30% ETH, 20% alts), then a "Drift" column comparing actual vs target. When drift gets big, that's your rebalance signal. No paid app needed.
Tracking dollar-cost averaging (DCA)
If you buy the same coin repeatedly at different prices, you have two clean options:
- One row per coin: update the Buy Price to your new blended average after each purchase. Tidy, but you lose purchase history.
- One row per purchase lot: keep every buy as its own row. Use
SUMIFto roll up totals per coin when you want the consolidated view:
=SUMIF(B2:B100,"SOL",E2:E100)
Neither is wrong — pick tidiness or full history.
The upgrade most free guides miss: a transaction log
A holdings table tells you where you stand now. It doesn't tell you what you made on coins you already sold. Add a second sheet tab called "Sales" with: Coin, Qty Sold, Sell Price, Buy Price, Realized P/L (=(Sell-Buy)*Qty). Now you track realized gains separately from paper gains — which is also exactly the record you'll want at tax time.
Common errors and how to fix them
#N/Afrom GOOGLEFINANCE — the coin isn't supported. Switch that row to theIMPORTDATAmethod.- Prices look stale — normal.
GOOGLEFINANCEdata can lag ~20 minutes;IMPORTDATArefreshes when the sheet recalculates. For portfolio tracking (not day trading), this is fine. Loading…that never resolves — free price APIs rate-limit aggressive refreshing. Don't hammer manual recalculates; let the sheet sit.- Stablecoins (USDT, USDC) — skip the lookup entirely and hardcode
1. A live price fetch for a dollar-pegged coin is wasted API calls. - Tickers with spaces or lowercase — APIs expect clean uppercase tickers (
SOL, notsol). Trim your ticker column.
What about privacy and security?
Your tracker lives in your Google Drive and is private unless you share it — which is already a privacy upgrade over exchange-connected apps. Two rules anyway: never store seed phrases, private keys, or exchange API secrets in the sheet, and don't share the file publicly with real balances in it. A sheet is a tracker, not a vault.
When to outgrow the spreadsheet
Be honest about the ceiling:
- Taxes: a sheet is a companion, not a tax tool. Real crypto tax reporting needs FIFO/LIFO accounting across every trade and transfer — tools like Koinly or CoinTracker exist for that. Keep the sheet for daily visibility; export to tax software at year end.
- Fancy dashboards: if you ever want your portfolio displayed as a proper web dashboard instead of a spreadsheet, that's a design problem — a crypto dashboard HTML template like CryptoNexus gives you the full UI to build on.
Until then, three formulas and fifteen minutes beat a $15/month subscription.
Frequently asked questions
Is tracking crypto in Google Sheets really free?
Yes — Sheets is free, GOOGLEFINANCE is built in, and the IMPORTDATA price-API method needs no key or signup. The only cost is fifteen minutes of setup.
Does GOOGLEFINANCE work for all crypto in 2026?
No. It covers major coins like BTC, ETH and LTC. For altcoins and memecoins, use the IMPORTDATA method with a free price API, which supports hundreds of coins.
How often do prices update?
Roughly every 20 minutes while the sheet is open (GOOGLEFINANCE), or on recalculation (IMPORTDATA). Fine for portfolio tracking; not for scalping.
Can I track memecoins?
If the coin has a listed price on the price API, yes — the IMPORTDATA formula works the same way. Obscure unlisted tokens won't resolve.
Can I track stocks in the same sheet?
Yes. GOOGLEFINANCE handles stocks natively — =GOOGLEFINANCE("NASDAQ:AAPL") — so one sheet can be your whole portfolio.
Is a Google Sheets tracker private? It's as private as your Google Drive: visible only to you unless shared. Unlike portfolio apps, no third party holds your holdings data. Still, never put seed phrases or API keys in it.
