Capital Gains when Trading Bitcoins and other Cryptocurrencies

The Canada Revenue Agency treats the taxation of Bitcoin and other cryptocurrency trading in a similar fashion to trading commodities or foreign currency.  When trading Bitcoin/cryptocurrencies on capital account, your adjusted cost base must be tracked in order to calculate capital gains and losses.

This article will looks at the case for Canadians where trading is considered to be on capital account, rather than income account.  The rules for determining whether trading is on capital account or income account are somewhat subjective.  Some of the considerations the Canada Revenue Agency may use to determine that trading is on income account include the following:

  • When the trading is characteristic of a professional trader
  • Frequent trading or short holding periods
  • Extensive knowledge and time spent researching the markets

Just like when buying and selling foreign currency, your ACB needs to be tallied and a capital gain or loss occurs whenever units are sold. A disposition is deemed to have occurred whenever:

  • Units are sold for Canadian dollars
  • Units are converted into US dollars or any other foreign currency
  • Units of one cryptocurrency are exchanged for units of another cryptocurrency
  • Units are spent on goods and services can help you with calculating ACB and capital gains for Bitcoin and other cryptocurrencies.

Let’s look at an example:

  1. Buy 2.5 Bitcoins for CAD$3,226.95 in total on February 1, 2017
  2. Buy 3.8098 Bitcoins for CAD$5,470.87 in total on April 1, 2017
  3. Trade 1 Bitcoin for 22.55657 Ether on May 1, 2017 (where the value of 1 Bitcoin or 22.55657 Ether was CAD$13,951.22 at this time)
  4. Purchase goods valued at CAD$466.25 for 0.03342 Bitcoins on December 1, 2017
  5. Sell 4.5 Bitcoins for CAD$62,797.50 in total on December 1, 2017.

The first step to calculate gains on losses on is to create securities for each cryptocurrency you’ve traded.  For this example, we create securities named “Bitcoin” and “Ether.”  For further information on getting started on, and adding securities and transactions, see the following:

Getting Started on

For the above example, you would input the following transactions on

1. “Buy” transaction: 2.5 Bitcoins for $3,226.95 in total on February 1, 2017
2. “Buy” transaction: 3.8098 Bitcoins for $5,470.87 in total on April 1, 2017
3a. “Sell” transaction: 1 Bitcoin for $13,951.22 in total on May 1, 2017
3b. “Buy” transaction: 22.55657 Ether for $13,951.22 in total on May 1, 2017
4. “Sell” transaction: 0.03342 Bitcoins for $466.25 in total on December 1, 2017
5. “Sell” transaction: 4.5 Bitcoins for $62,797.50 in total on December 1, 2017

For simplicity transaction fees have been omitted, but these can be specified in the “Commission” field when adding transactions.

The transaction involving conversion from Bitcoin to Ether (3) corresponds to a sale of Bitcoin and a purchase of Ether.  The amounts are based on the values in Canadian dollars.  Even though the transaction did not involve converting Bitcoin into Canadian dollars and then converting Canadian dollars into Ether, the transaction is treated this way for the purposes of calculating adjusted cost base.  This results in a capital gain for Bitcoin.

Similarly, the transaction involving spending Bitcoin (4) corresponds to a sale of Bitcoin.  Even though the transaction did not involve Bitcoin units being converted into Canadian dollars followed by a purchase using Canadian dollars, the transaction is treated this way for tax purposes.  This also results in a capital gain for Bitcoin.

Here are the results after inputting these transactions:

Transactions for Bitcoin

Transaction for Ether

24 thoughts on “Capital Gains when Trading Bitcoins and other Cryptocurrencies

  1. crypto

    Thank-you for this tool, it’s great!

    Do you know if transaction fees (mining fees) can be added to the commission when calculating the ACB?

    For example if one buys bitcoin on coinbase, then moves it to Binance. There is a coinbase fee when buying bitcoin and then the mining fee (transaction) to send to Binance, can the mining fee be added to coinbase’s commission fee in the ACB calculation?

  2. Post author


    Transaction fees for buying or selling cryptocurrencies can be inputted as commissions.

    I’m not sure about the transfer fees you mentioned. If these are not directly related to purchasing or disposing of Bitcoins then I don’t think they can be added to ACB or subtracted from proceeds of disposition.

  3. Gili

    In your example:

    * Trade 1 Bitcoin for 22.55657 Ether on May 1, 2017 (where the value of 1 Bitcoin or 22.55657 Ether was CAD$13,951.22 at this time)

    How do you determine the value of Ether in terms of CAD at the time of the trade when some exchanges don’t trade any fiat currencies at all?

  4. Post author


    Even if your exchange does not permit exchanging between Ether and CAD, it should still be possible to determine an approariate exchange rate. I would suggest looking up the exchange rate between Ether and CAD from a reliable source. You can also look up the value of Ether in USD and the CAD/USD exchange rate on that date and combine those two values.

  5. Gili

    Some (major) exchanges do not trade fiat currencies at all. Example:

    As such, there is no universal cryptocurrency to fiat conversion rate you could apply using information exclusively from that exchange.

  6. Post author


    Please see part 3 of the example above for an exchange between two cryptocurrencies that does not involve a direct exchange with Canadian dollars.

  7. Gili

    I know that part 3 involves the trade of one cryptocurrency for another, but it does not explain how one is supposed to derive the CAD value of each currency on exchanges that do not trade any fiat currencies.

  8. Post author


    You can look up the value based on a chain of conversion rates. For example, the site you mentioned currently shows a price of 0.0015642 Bitcoin for 1 EOS. Yahoo Finance currently shows CAD$8,766.22 for 1 Bitcoin. Therefore if you bought 1 EOS, your increase in ACB could be calculated as:

    1 EOS x 0.0015642 Bitcoin/EOS x CAD$8,766.22/Bitcoin
    = CAD$13.71

  9. Lawrence


    Is it possible that through ACB, you can ultimately end up with capital gains even if you don’t make a profit? That is, supposing I buy into cryptocurrencies at $10,000, move them around through various altcoins over the course of the year, then finally take them out at the same buy-in price of $10,000, I somehow owe tax on it?

    That’s the result I’m getting when using various ACB calculators (including this one): tax owed, despite not making a profit. Is this possible, or do I have an error somewhere?


  10. Post author


    Assuming that there are no further investments or withdrawals, then your net capital gain should be zero. If your transactions span multiple tax years, then it’s possible to have gains or losses in individual years, but they should cancel each other out.

  11. Shawn K

    I am still having a hard time understanding exactly how this works. I understand that each crypto-crypto and crypto-fiat trade is a taxable event in Canada that must be recorded using the ACB method, but do you only have to file anything in your taxes once you have withdrawn your profits into fiat?

    For example if you take the 5-step scenario that was provided above, but you stopped at step 4 and didn’t proceed to step 5 (where you convert your BTC back to CAD), would you be fine to not report any of those capital gains until you actually have realized the gains in CAD?

    I am basically trying to figure out if it is OK to simply keep track of all my crypto capital gains/losses while all of my initial funds are still completely invested in various cryptos. Then once I do decide to cash out my cryptos to CAD, I would then report all of these taxable events on my taxes for that year. Is this correct?

  12. Post author


    You would need to report a capital gain or loss for any year in which a cryptocurrency is exchanged for either another cryptocurrency or a fiat currency.

  13. Rebecca

    If I had a total capital loss of $25,000 this year and absolutely no gains (it was a bad crypto year). how much can I carry over to the next year as a loss or can I write all of it off as a loss in the current year? and if so do I need to deduct 50% as a loss or is that only for gains?

  14. Post author


    Losses can be carried back to the last 3 tax years, used in the current tax year, or carried forward indefinitely. So all of it can be carried forward to next year. All capital gains and losses get multiplied by 50% on line 199 of Schedule 3 to account for only half of a capital gain being taxable as income.

  15. Miller

    If a business accepts crypto as payment for services (not a day trader or related to crypto), how would this income be taxed by the CRA?

    Example: I receive $4000 worth of crypto in Jan 2018, but sell the same crypto for $1000 in Nov 2018. Including this $4000 on my gross business income and in a ~50% tax bracket im taxed ~$2000 and get a capital loss. This is a bad tax scenario as im paying $2000 in tax and only actually receiving $1000 in revenue. I also have no capital gains going back nor do I plan create any going forward.

    Someone (Who claims to be a CPA) stated that on my T2125 business income I could put the the $4000 as an inventory purchase, $1000 as revenue and $0 as my closing inventory. This would result in a -$3000 loss.

    Thoughts on this? What are my options?

  16. Ryan

    If your purchase price was $10,000 for Bitcoin and then a number of crypto-to-crypto trades happened and the portfolio is now worth $6000. Does that mean there was a capital loss for the year?

    Purchase price – ACB = capital loss?

    I would assume each trade would trigger a capital loss and each loss would lower the ACB of the portfolio. Please clarify!

    Thank you!

  17. Post author


    You will need to calculate the gain or loss for each disposition like in the examples above.

    In some special cases where all the positions are closed at the beginning of the year and before the end of the year, you may be able to calculate the capital gain or loss as you describe. However, this won’t work if you still hold a position at the end of the year.

  18. rob

    So here is my scenario with cryptocurrency dilemma. I transferred 0.2 LTC to Cryptopia in order to buy DOGE. So i guess i had to use a DOGE/LTC pairing in order to buy it.
    DOGE/LTC Buy Rate:0.00004020 Amount:4815.62149333 Total: 0.19358798 Fee: 0.00038718 31/12/2017 3:13:10 PM

    Now, I am totally confused as to how to figure out how that LTC i transferred over to this crypto broker is converted to USD if the 0.20 LTC gave me 4815.62…DOGE coins? There should not be a capital gain here yet, as I then took those DOGE coins and transferred to Bittrex exchange which i gather would have then triggered a capital gain or loss. What is the framework to get these to correct conversion to enter in ACB here? Help..

    Thank you, rob

  19. Post author


    Transferring the currency to another brokerage should not trigger a capital gain. Converting LTC to DOGE would result in a deemed disposition of LTC. Please see transaction #3 above for an example of how to handle this.

  20. John

    Hi, commissions which are paid in crypto, not fiat, aren’t accounted for thus enlarging the share balance ( due to not being removed as a fee ), is this a problem?

  21. Post author


    When inputted a buy transaction on, you should set the number of shares to the net number of shares received (excluding any shares deducted for the commission).

    Set the amount to the net value of the shares in Canadian dollars, and the commission to the value of the shares deducted for the commission in Canadian dollars.

    Or, you can set the amount to value of the gross number of shares in Canadian dollars with the commission set to zero.

  22. Amir

    I want to make sure that I am putting the right commission fee inside the tool. Consider the following scenario:

    Each time I buy there is a Fee deducted from my total crypto purchase.
    Amount purchased Price of unit Value Fee
    3.00000000 ETH $200.19 CAD $600.57 CAD 0.00480000 ETH

    What I got at the end is: 3.0 – 0.0048 = 2.9952 ETH
    Calculated fee in CAD: 200.19 x 0.0048 = $0.96 CAD

    What should I put inside the new transaction fields:
    Price: ______ Total
    Shares: ______
    Commission: ______

    Thanks for your support and your great tool!
    Best regards

  23. Post author


    In that case you can input a Buy transaction with a total amount of $600.57, 2.9952 shares and a commission of $0. The commission is set to $0 because it is already included in the total amount.

    Alternatively you could input a total amount of $600.57 – $0.96 = $599.61 with a commission of $0.96, but the above approach is likely simpler and will yield the same result.

Leave a Reply

Your email address will not be published. Required fields are marked *