Cost basis is what you paid for an asset, including fees. Your gain is proceeds minus basis. If you cannot substantiate the basis, the conservative default is that it was zero, which means the entire proceeds are treated as gain. Keeping basis records is therefore worth real money.
What goes into basis
The purchase price, plus the fees to acquire it. If you bought one ether for two thousand dollars and paid a twenty dollar fee, your basis is two thousand and twenty. Fees on the way out reduce your proceeds rather than increasing basis, which reaches the same answer.
Which coins did you sell?
If you bought at three different prices and then sold some, the tax depends on which ones you sold. Crypto is fungible, so the answer is an accounting choice rather than a fact.
| Method | How it works | Effect |
|---|---|---|
| FIFO | First in, first out. The oldest lot is sold first. | Usually the default. In a rising market it produces larger gains, and more of them long term. |
| Specific identification | You choose which lot you are selling, and document it at the time. | Lets you sell a high basis lot to reduce the gain. Requires records made contemporaneously, not reconstructed afterward. |
| HIFO | Highest in, first out. A way of applying specific identification. | Minimizes the current gain. Only available if your records support specific identification. |
The wallet by wallet rule
This is the change most people have not heard about. From 1 January 2025, cost basis in the US has to be tracked per wallet and per account rather than pooled across everything you own. Before that, a universal pool was widely used.
In practice that means the lots in your exchange account and the lots in your hardware wallet are separate inventories. Selling from one does not draw on the basis of the other. Anybody who had been pooling had to allocate their existing basis across wallets under the safe harbor in Revenue Procedure 2024-28, which had to be in place before the first sale of 2025.
What proves basis
An exchange trade confirmation, a bank statement showing the purchase, the transaction on a block explorer with the date and amount, and a contemporaneous record of the price that day. For onchain activity the chain proves what moved and when; what it cannot prove is what a token was worth in dollars at that moment, which is why a price source recorded at the time matters.
Common questions
What happens if I have no records at all?
The conservative treatment is a basis of zero, which makes the entire proceeds a gain. Reconstruction is usually possible from exchange exports and the blockchain, and it is far easier than it sounds compared with paying tax on money you never made.
Can I still use one pool across all my wallets?
Not for US purposes from 2025 onward. Basis is tracked per wallet and per account. If you were pooling before that, allocating the old basis across wallets is a specific step that should have been taken before your first 2025 sale.
Does a transfer between my wallets change my basis?
No. The basis and the holding period travel with the coins. What changes is which inventory they sit in, which matters under the per wallet rule.
Where to go next
Confused about your own records?
We cannot prepare your return and we can help you understand what your transaction history actually says, so the conversation with your accountant is a short one.