Crypto Tax Tracker Google Sheets (2026)

·10 min read

TL;DR

Track your crypto capital gains and losses in Google Sheets using CoinTable formulas for live market prices. This guide covers FIFO and LIFO cost-basis methods, a complete tax-tracking spreadsheet layout, and formulas for calculating realized and unrealized gains. Not a substitute for professional tax advice.

Why You Need a Crypto Tax Tracker

If you bought, sold, or traded cryptocurrency in 2025 or 2026, you likely owe taxes on your gains. Tax authorities in the US (IRS), UK (HMRC), EU, Australia, and most other jurisdictions require you to report:

CoinTable, a Google Sheets add-on for cryptocurrency prices, gives you live market data to calculate unrealized gains on coins you still hold. Combined with a simple transaction log, you get a complete tax-tracking spreadsheet.

For the basics on pulling crypto prices into Sheets, see how to get crypto prices in Google Sheets.

Basic Tax Tracking Spreadsheet Structure

Start with a transaction log that records every buy and sell:

Transaction Log Columns

ColumnHeaderDescription
ADateTransaction date
BTypeBUY or SELL
CCoinTicker symbol (BTC, ETH, etc.)
DAmountNumber of coins
EPrice per CoinPrice at time of transaction
FTotal Cost / ProceedsAmount × Price
GFeeExchange or network fee
HNet AmountTotal minus fee

Formulas for the Transaction Log

F2 (Total):      =D2*E2
H2 (Net Amount): =IF(B2="BUY", -(F2+G2), F2-G2)

For buy transactions, the net amount is negative (money out). For sell transactions, it's positive (money in).

Example Transaction Log

DateTypeCoinAmountPriceTotalFeeNet
2025-06-15BUYBTC1.0$60,000$60,000$30-$60,030
2025-09-20BUYBTC0.5$70,000$35,000$18-$35,018
2025-11-10BUYETH10$2,800$28,000$14-$28,014
2026-01-05SELLBTC0.5$95,000$47,500$24$47,476
2026-02-18SELLETH5$3,200$16,000$8$15,992

Using CoinTable for Unrealized Gains

For coins you still hold, CoinTable provides live prices to calculate unrealized gains — positions that haven't been sold yet.

Holdings Summary Sheet

Create a separate sheet that aggregates your current holdings:

Current Price:     =CT_PRICE(A2)
Current Value:     =CT_PRICE(A2) * B2
Cost Basis:        =C2 * B2
Unrealized P&L:    =CT_PRICE(A2) * B2 - C2 * B2
Unrealized P&L %:  =(CT_PRICE(A2) - C2) / C2 * 100

Holdings Summary Layout

CoinQty HeldAvg CostCurrent PriceCost BasisCurrent ValueUnrealized P&L
BTC1.0$63,365=CT_PRICE("BTC")$63,365=CT_PRICE("BTC")*B2=F2-E2
ETH5$2,800=CT_PRICE("ETH")$14,000=CT_PRICE("ETH")*B3=F3-E3

The "Qty Held" and "Avg Cost" columns should be calculated from your transaction log. More on that in the FIFO and LIFO sections below.

FIFO: First In, First Out

FIFO is the most commonly used cost-basis method. Under FIFO, when you sell coins, the cost basis comes from the oldest purchase first.

FIFO Example

Let's walk through a concrete scenario with three transactions:

Purchases:

  1. Buy 1.0 BTC at $60,000 (June 2025)
  2. Buy 0.5 BTC at $70,000 (September 2025)

Sale: 3. Sell 0.5 BTC at $95,000 (January 2026)

FIFO Calculation:

Under FIFO, the 0.5 BTC sold comes from the first purchase (June 2025 at $60,000):

Proceeds:    0.5 × $95,000 = $47,500
Cost Basis:  0.5 × $60,000 = $30,000  (from the FIRST purchase)
Capital Gain: $47,500 - $30,000 = $17,500

Remaining holdings after sale:

LotCoinsCost per CoinAcquired
Lot 1 (remainder)0.5 BTC$60,000June 2025
Lot 20.5 BTC$70,000September 2025
Total1.0 BTC$65,000 avg

The remaining 0.5 BTC from Lot 1 and all 0.5 BTC from Lot 2 are still held. Your average cost basis for the remaining 1.0 BTC is $65,000.

FIFO Formulas in Google Sheets

Implementing pure FIFO in Sheets requires tracking individual lots. Here's a simplified approach:

Create a "Lots" sheet:

Lot #DateCoinQty PurchasedCost per CoinQty RemainingStatus
12025-06-15BTC1.0$60,0000.5Partial
22025-09-20BTC0.5$70,0000.5Open

When you sell, manually update the "Qty Remaining" column starting from the oldest lot. Then calculate the gain on your sales sheet:

Realized Gain = Sell Proceeds - (Qty Sold × Cost per Coin from Oldest Lot)

For sales that span multiple lots (e.g., selling 1.2 BTC when Lot 1 has only 0.5 remaining), split the calculation:

Gain from Lot 1: 0.5 × ($95,000 - $60,000) = $17,500
Gain from Lot 2: 0.7 × ($95,000 - $70,000) = $17,500
Total Gain: $35,000

LIFO: Last In, First Out

LIFO assigns the cost basis from the most recent purchase first. Using the same transactions:

LIFO Calculation:

The 0.5 BTC sold comes from the second purchase (September 2025 at $70,000):

Proceeds:    0.5 × $95,000 = $47,500
Cost Basis:  0.5 × $70,000 = $35,000  (from the LAST purchase)
Capital Gain: $47,500 - $35,000 = $12,500

FIFO vs. LIFO Comparison

MethodCost BasisProceedsCapital GainTax Impact
FIFO$30,000$47,500$17,500Higher tax
LIFO$35,000$47,500$12,500Lower tax

In this example, LIFO results in a lower capital gain because the more expensive lot is used as the cost basis. However, LIFO is not allowed in all jurisdictions — the IRS generally requires FIFO unless you specifically identify which lots you're selling.

Check with your tax professional which method is permitted in your jurisdiction before choosing.

Short-Term vs. Long-Term Gains

In the US and many other countries, how long you held a coin affects your tax rate:

Holding PeriodClassificationUS Tax Rate (2026)
Less than 1 yearShort-term capital gainTaxed as ordinary income (10-37%)
1 year or moreLong-term capital gainPreferential rate (0-20%)

Add a "Holding Period" column to your sales sheet:

=DATEDIF(Purchase Date, Sale Date, "D")

And a "Term" column:

=IF(Holding Period >= 365, "Long-term", "Short-term")

Example Sales Sheet with Holding Period

Sale DateCoinQtyProceedsCost BasisGain/LossDays HeldTerm
2026-01-05BTC0.5$47,500$30,000$17,500204Short-term
2026-02-18ETH5$16,000$14,000$2,000101Short-term

Tracking Multiple Coins

For a portfolio with multiple cryptocurrencies, you need a separate lot-tracking system per coin. The simplest approach:

  1. One "Transactions" sheet — All buys and sells in chronological order
  2. One "Lots" sheet per coin — BTC Lots, ETH Lots, SOL Lots, etc.
  3. One "Sales" sheet — All realized gains/losses with FIFO cost basis applied
  4. One "Holdings" sheet — Current unrealized positions with CoinTable formulas

Holdings Formulas

Current Price:    =CT_PRICE(A2)
Market Value:     =CT_PRICE(A2) * B2
Unrealized Gain:  =CT_PRICE(A2) * B2 - C2

For a broader portfolio tracking setup beyond tax purposes, see our crypto portfolio tracker in Google Sheets guide.

Handling Special Tax Events

Crypto tax tracking goes beyond simple buy/sell transactions. Here are events you should also log:

Staking Rewards

Staking rewards are typically taxed as income at the fair market value when received:

DateEventCoinAmountFMV per CoinIncome Value
2026-01-15StakingETH0.01$3,100$31.00
2026-02-15StakingETH0.01$3,250$32.50

The income value becomes your cost basis if you later sell those coins.

Airdrops

Similar to staking — taxed as income at FMV when received.

Crypto-to-Crypto Swaps

Swapping one crypto for another (e.g., ETH → SOL) is a taxable event in most jurisdictions. Record it as a sell of the first coin and a buy of the second.

Year-End Tax Summary

Create a summary sheet that aggregates your full-year activity:

CategoryAmount
Total Short-Term Gains=SUMIFS(Sales!F:F, Sales!H:H, "Short-term", Sales!F:F, ">0")
Total Short-Term Losses=SUMIFS(Sales!F:F, Sales!H:H, "Short-term", Sales!F:F, "<0")
Net Short-Term=B2+B3
Total Long-Term Gains=SUMIFS(Sales!F:F, Sales!H:H, "Long-term", Sales!F:F, ">0")
Total Long-Term Losses=SUMIFS(Sales!F:F, Sales!H:H, "Long-term", Sales!F:F, "<0")
Net Long-Term=B5+B6
Staking/Airdrop Income=SUM(Income!F:F)
Total Taxable=B4+B7+B8

Limitations: When to Use a Dedicated Tax Tool

A Google Sheets tax tracker works well for:

It becomes impractical when you have:

For heavy traders, dedicated crypto tax software handles the complexity automatically:

ToolStarting PriceTransactionsFIFO/LIFO Support
KoinlyFree (up to 10K txns for tracking)Unlimited (paid for tax reports)Yes
CoinTracker$59/year1,000Yes
TokenTax$65/year500Yes
CoinLedger$49/year100Yes

You can still use CoinTable in Sheets alongside these tools — many people use the spreadsheet for ongoing portfolio monitoring and a dedicated tool for year-end tax filing.

For formula references and more CoinTable functions, see the crypto formulas cheat sheet.

Getting Started

  1. Install CoinTableGet it from Google Workspace Marketplace for live price data
  2. Create a Transactions sheet — Log every buy, sell, and income event
  3. Set up Lot tracking — One section per coin, sorted by date
  4. Record sales with cost basis — Apply FIFO (or your jurisdiction's required method)
  5. Build a Holdings sheet — Use =CT_PRICE() formulas for unrealized gains
  6. Generate a year-end summary — Aggregate short-term, long-term, and income totals

If you want a starting template, our best crypto Google Sheets templates article includes a tax helper layout you can adapt.


Disclaimer: This article is for informational purposes only and does not constitute tax, legal, or financial advice. Cryptocurrency tax laws vary by jurisdiction and change frequently. Always consult a qualified tax professional for advice specific to your situation.

Frequently Asked Questions

Do I need to pay taxes on crypto?

In most countries, yes. Cryptocurrency is treated as property or an asset, and selling, trading, or converting crypto triggers a taxable event. Capital gains (or losses) must be reported. Always consult a tax professional for your specific situation.

Can Google Sheets replace dedicated crypto tax software?

For simple portfolios (fewer than 50 trades per year), a Google Sheets tracker can work well. For complex situations with hundreds of trades across multiple exchanges, dedicated tools like Koinly or CoinTracker are more practical as they auto-import from exchanges.

What is FIFO vs LIFO for crypto taxes?

FIFO (First-In-First-Out) means you sell your oldest coins first. LIFO (Last-In-First-Out) means you sell your newest coins first. FIFO is the default method in most jurisdictions. The method affects your cost basis and capital gain calculation.

How do I calculate crypto capital gains in Google Sheets?

Capital gain = Sale proceeds - Cost basis. Use =CT_PRICE("BTC") for current market values. For realized gains: Sale Price * Quantity Sold - Purchase Price * Quantity Sold. Track each buy/sell transaction with dates and amounts.

Is this spreadsheet tax advice?

No. This spreadsheet is a tracking and organization tool only. Tax laws vary by country and change frequently. Always consult a qualified tax professional for advice specific to your situation.

Stop copying prices manually

Free covers 300 requests a month. Plus is $5/month for unlimited requests and 10,000+ coins.