Every NFT you own has a cost basis. When you spread NFTs across multiple wallets and exchanges, tracking that basis becomes complex—but it’s not optional.

Lose track of your cost basis and you’ll either overpay taxes (assuming $0 basis) or face IRS trouble for underreporting.

The Multi-Wallet Problem

You have:

  • MetaMask wallet (20 NFTs)
  • Hardware wallet (15 NFTs)
  • Coinbase account (5 NFTs)
  • Trading wallet (10 NFTs)

Each NFT was acquired on different dates at different prices in different currencies (ETH, SOL, USD).

Tax software sees transactions from four different addresses and struggles to connect them as one portfolio.

You need a master tracking system.

What to Track for Each NFT

Create a spreadsheet with these columns:

  1. NFT Name/Token ID (e.g., “Bored Ape #4521”)
  2. Collection (e.g., “Bored Ape Yacht Club”)
  3. Current Wallet/Location
  4. Purchase Date
  5. Purchase Price (in crypto: ETH, SOL, etc.)
  6. Purchase Price (USD) at time of purchase
  7. Gas Fees Paid (add to cost basis)
  8. Total Cost Basis (USD)
  9. Notes (minted, airdrop, transferred from another wallet)

Example entry:

  • NFT: Azuki #1234
  • Collection: Azuki
  • Wallet: MetaMask (0xabc…)
  • Date: 2023-03-15
  • Price: 12 ETH ($19,200)
  • Gas: $45
  • Basis: $19,245
  • Notes: Bought on OpenSea

Tracking Wallet Transfers

When you move an NFT between wallets, update the “Current Wallet” field but don’t change the basis or purchase date.

March 1: Bought Doodle for $5,000 in MetaMask June 1: Transferred to hardware wallet

Spreadsheet updates:

  • Current Wallet: Hardware wallet (0xdef…)
  • Date Acquired: Still March 1, 2023
  • Cost Basis: Still $5,000
  • Add note: “Transferred from MetaMask on 2024-06-01 (not a sale)”

This prevents you from thinking you “bought” it again in the hardware wallet.

Using Crypto Tax Software

CoinTracker, Koinly, CoinLedger, and other tools can track NFTs across wallets.

Connect each wallet/exchange to the software. It imports all transactions and attempts to calculate basis.

But you must review the imports. Tax software frequently:

  • Misses wallet-to-wallet transfers (treats them as sales)
  • Fails to combine gas fees into basis
  • Doesn’t recognize free mints (assumes $0 basis instead of gas cost)
  • Gets confused by aggregator transactions (Gem, Blur)

Don’t blindly trust the software output. Manually verify each NFT’s basis.

The Wallet Consolidation Strategy

To simplify tracking, move all NFTs to a single primary wallet.

Before consolidation, document:

  • Each NFT’s cost basis
  • Original purchase dates (for holding period calculations)
  • Transaction hashes of transfers

After consolidation, you have one wallet to monitor instead of four. Easier to track, easier to report.

Just make sure you document the transfers properly so tax software doesn’t think you sold everything.

Free Mints and Airdrops

These often get missed in cost basis tracking.

You received an airdrop NFT in April. You didn’t pay for it, but the gas to claim was $80.

Spreadsheet entry:

  • NFT: Moonbird #555
  • Date: 2024-04-10
  • Price: $0 (airdrop)
  • Gas: $80
  • Basis: $80
  • Notes: “Airdropped to wallet, gas = basis”

If you later sell it for $500, your gain is $420 ($500 - $80), not $500.

Lost or Stolen NFTs

If an NFT gets stolen or lost to a scam:

  1. Mark it in your spreadsheet as “Stolen [date]”
  2. Keep the cost basis record (you may be able to deduct a theft loss)
  3. Save the blockchain transaction showing unauthorized transfer
  4. File a police report (required for theft loss deduction)

Don’t delete the entry—you might need it to prove the loss later.

Selling from Different Wallets

You sell 3 NFTs this year:

  • One from MetaMask (basis: $10,000)
  • One from hardware wallet (basis: $3,000)
  • One from Coinbase (basis: $8,000)

Tax software might see three different wallets and not connect the transactions.

Your spreadsheet lets you manually confirm each sale’s basis:

  • Sale from MetaMask on May 1 for $12,000 → Gain: $2,000
  • Sale from hardware wallet on June 15 for $2,500 → Loss: $500
  • Sale from Coinbase on Nov 3 for $9,000 → Gain: $1,000

Total gains: $2,500 ($2,000 + $1,000 - $500).

Action Step

Create a master NFT tracking spreadsheet today. Add every NFT you currently own:

  1. Go through each wallet on Etherscan/Solscan
  2. List every NFT you hold
  3. Look up historical purchase transactions
  4. Record cost basis for each (purchase price + gas)
  5. Note which wallet holds each NFT currently

Going forward, update this spreadsheet whenever you:

  • Buy a new NFT
  • Sell an NFT
  • Transfer an NFT between wallets
  • Receive an airdrop

This takes 2-3 hours initially, then 5 minutes per transaction ongoing.

But it’s the only way to ensure accurate tax reporting across multiple wallets. Without it, you’re guessing at cost basis—and the IRS doesn’t accept guesses.

Accurate cost basis tracking is the difference between paying the correct amount of tax and either overpaying by thousands or facing an audit for underreporting.