The IRS opened e-filing for US taxpayers on January 27, 2020, and you can now use a number of free and paid online services to file taxes.

Crypto users have seen a mixed year of gains and losses, depending on if, and when, trading was done through the year. Whether you had gains or losses, you will still need to file your cryptocurrency activity and calculate any capital gains or losses.

IRS Updates

We have seen much more activity from the IRS this year. First, sending out CP 2000 notices as well as 6173, 6174 and 6171-A letters to taxpayers in August, reminding them that any cryptocurrency transactions must be reported.

Secondly, their new FAQ On Virtual Currency Transactions was released, which confirmed a lot of the approaches that are currently being used, while also clarifying treatment of fair market value and specific identification.

Lastly, we saw the new 1040 Schedule 1, which for 2019 now includes a specific crypto question, "At any time during 2019, did you receive, sell, send, exchange or otherwise acquire any financial interest in virtual currency?"

IRS 1040 Schedule 1 crypto currency question

For an interesting discussion on this topic, please listen to our upcoming podcast with Matt Metras, a cryptocurrency taxation specialist and EA, where he discusses this question and the responses he received from the author of the IRS FAQ. (to be released on 2/7/2020)

Fair Market Value and Spot Pricing

The new IRS FAQ has gone into detail about pricing and clarified how Fair Market Value (FMV) should be determined.

The rules are:

  1. Use the reported price (by the exchange) in the actual trade
  2. Use the spot price at that date and time as if the trade had happened on the exchange
  3. Use a global price index for the spot price at that date and time.

When trading is done for fiat on exchanges, then rule #1 is going to be used because the exchange will report the exact fiat pricing they used. Similarly, when spending or receiving income, the FMV is the value of the goods or services that were traded, which is usually known.

However, when crypto is traded for other crypto, then the other rules need to be used. When you trade crypto, you are disposing of one asset and acquiring another. If you think of this as being made of two parts, then the first means you are disposing of an asset for fair market value and the second is acquiring crypto for that same value.

Say you owned 1 BTC that you previously bought for $5,000. You then trade your 1 BTC for 50 ETH. You are disposing of your 1 BTC for its fair market value - if the spot price at that time was $8,500, means your gain is $3,500 (less any fees). This also sets the cost basis for the acquired 50 ETH ($70 each).

If this trade was made on some exchange, then we need to know the spot price of BTC at that trade's date and time, as if it happened on the exchange (rule #2). Some exchanges will report the USD pricing but most do not. Therefore, we need to look up the exchange's price history tables to find the spot price at that time.

If the trade did not happen on a known exchange, or where pricing is not available, then we can use a global price index (rule #3) to find the value of BTC at that time.

Bitcoin.Tax has maintained price history tables for cryptocurrencies since we started in 2013 (with tables back to 2010). We have prices for around 20,000 trading pairs with around 6,000 different crypto symbols.

Bitcoin.Tax tracks trading data from over 130 exchanges to be able to give spot prices for any coin. If you made the BTC to ETH trade above, we will look up the exchange's exact spot price at that time.

It also maintains a global index of crypto pricing, built from the values from valid exchange pair trading. This will be used if an exchange is not known or spot pricing is not available.

This ensures that we can use the most accurate pricing, relevant to an exchange as well as to the nearest second. You can also read our support article for more details on how Bitcoin.Tax retrieves its crypto prices.

Specific Identification

One of the new clarifications in the IRS FAQ was around if specific identification was allowed. Before this, some tax professionals might be more cautious and suggest that using first-in first-out (FIFO) would be a safer approach, since it was the default method of the IRS.

Also, selectively picking which asset to sell could be seen as being done purely to avoid taxes and so violating the economic substance doctrine. It can also be difficult to achieve, due to the fungible nature of a crypto wallet.

However, the IRS has clarified that specific identification can be used if you can document the specific unit's unique identifier (such as private key, public key, address, or all transactions for that specific wallet), and then for each unit to be able to show: the date and time it was acquired; basis and fair market value when it was acquired; when it was disposed; and, fair market value when it was disposed and the amount received.

This can be more difficult when you have traded on an exchange, because there is no public key or address, as the exchange keeps your assets at an account level rather than on the blockchain. However, each trade should have an associated unique trade identifier for an account, that should be able to be used to document all your acquisitions and disposals.

Being able to track acquiring and disposal transactions and IDs was requested by tax professional following the IRS new FAQ this year. This allows them to be able to satisfy the new requirements and provide more information to the IRS upon request.

Bitcoin.Tax tracks the wallet transaction IDs or exchange's trade IDs for any acquisitions or disposals, and these are included in the standard downloadable capital gains reports.

The user can also enter this ID manually (if they are not normally available from data imports). If no ID exists, Bitcoin.Tax will create its own from the provided data.

Downloading the Capital Gains CSV report will provide the disposing account and id (trade id, transaction hash, or internal id) as well as the acquiring account and id.

Acquired and Sold Ids

The acquiring account and ID is also available in the Closing report, where your remaining balance assets are described.

Bitcoin.Tax is the leading capital gains and income tax calculator for Bitcoin and cryptocurrencies. You can sign up for free at

BitcoinTaxes gives you up to $15 off when purchasing TurboTax when clicking our link below.

BitcoinTaxes does not provide financial, tax planning or tax advice. Please speak to your own tax expert, CPA or tax attorney on how you should treat taxation of digital currencies.

Visit for TurboTax product guarantees and other important information. Limited time offer for TurboTax 2019. Discount applies to TurboTax federal products only. Terms, conditions, features, availability, pricing, fees, service and support options subject to change without notice. Intuit, TurboTax and TurboTax Online, among others, are registered trademarks and/or service marks of Intuit Inc. in the United States and other countries.


Calculating capital gains and taxes for Bitcoin and other crypto-currencies

Back to Overview