TLTax LotNotes
COST BASIS

What cost basis actually is

Every crypto tax calculation starts from one number. Understanding where it comes from is the difference between a report you can check and one you have to trust.

Overview · Methods · Exports · Events · Records · Advisors · Help

The number everything else depends on

When you dispose of a token, what you owe is the sale price minus what you paid for it. That second figure is the cost basis, and it is the part most people cannot explain afterwards.

Cost basis is not a price you looked up. It is a record of a specific acquisition, held in a quantity and a currency, at a moment in time. A portfolio assembled over three years at wildly different prices has no single answer to "what did this cost" until you decide a rule for matching purchases to sales.

That rule is called a method. It is the single decision that most changes your reported gain, and it is often chosen by default rather than deliberately.

A worked example

You buy the same token three times, then sell part of your holding.

DateActionQuantityPrice eachCost of that lot
MarchBuy2 BTC$30,000$60,000
AugustBuy1 BTC$50,000$50,000
NovemberBuy1 BTC$70,000$70,000
FebruarySell2 BTC$80,000—

You sold 2 BTC for $160,000. Which purchases are being sold?

MethodLots soldBasis usedGain or loss
FIFOMarch (2 BTC)$60,000$100,000
LIFONovember + August$120,000$40,000
HIFONovember + August$120,000$40,000

Same sale, same prices, a $60,000 difference in reported gain. Nobody did anything wrong. The method simply answered the question differently.

Which events create a tax

A disposal is generally any event where you give up control of a token in exchange for something. Whether a specific event counts depends on your jurisdiction, but the shape of the rule is consistent almost everywhere.

EventGeneral treatment
Selling for fiatDisposal. Realises gain or loss.
Trading one token for anotherDisposal of the token sold. This surprises people who think of it as a swap.
Spending tokensDisposal, at the value of what you received.
Moving between wallets you ownNot a disposal. Basis carries across unchanged.
Price moving while you holdNot a disposal. Nothing is realised until you sell.
Staking reward receivedGenerally income when received, at market value on that date.
Airdrop receivedGenerally income when you gain control of it.

The most common expensive mistake is treating a withdrawal from an exchange as a sale. Moving tokens to a wallet you control is not a disposal, and counting it one inflates both your realised gain and your basis in a way that is difficult to unwind later. How to tell the two apart in a raw export is covered on the events page.

Why understand this before choosing a tool

Tools differ less than people expect. Most reputable ones can do FIFO, LIFO and specific identification. What actually separates a good tool from a poor one is how it treats the awkward parts: partial sells across many lots, fees, staking income arriving on no schedule, transfers that look like trades, and tokens that have been renamed or migrated.

If you know how those five things should behave, you can check any report you are given. If you do not, you are reading numbers without being able to test them.

What this site covers

MECHANICS

Methods compared

How each method matches lots to sales, with numbers you can check by hand.

INPUT

Exports

Which records you need and how to verify a file is complete before you rely on it.

COMPLEXITY

Events

Transfers, staking, airdrops and DeFi, and how each one is generally treated.

DURABILITY

Records

What to keep so the numbers still reconcile a year later.

Scope and limits

This is general reference material on how cost basis calculation works. It is not tax advice, and it does not account for the specifics of your situation or your jurisdiction. Rules around staking income, DeFi and holding periods differ between countries and change over time.

Check current rules with a qualified professional before you file. Use this to understand what a report is claiming, so the conversation with that professional is shorter.