Capital Gains when Trading Bitcoin 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

60 thoughts on “Capital Gains when Trading Bitcoin 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.

  24. Simon Peterson


    first of all, thanks for all your time to answer all the questions in here. Really great service.

    I have a weird scenario and I hope that you have some thoughts on it:

    What happens if I trade BTC for BTC on a margin trading platform like Bybit or Bimex? I could not find a clear answer to that since it is a transaction from and to BTC. Is that considered as a taxable event too?

    Anyways, I decided to stay safe and report each BTC for BTC transaction. Lets assume my trading went bad and I lost 0.1 BTC.

    How do I enter this transaction into the ACB calculator? In my understanding, I would just create a sell transaction with “Amount=0”. Why zero? Because I lost 0.1 BTC and got nothing in exchange.

    Other way around, if I gain 0.1 BTC, I would create a buy transaction, add 0.1 BTC and “Amount=0” because I got it for free since my trading went all (of course except the fees).

    Do you have any thoughts here? I would appriciate any thoughts a lot!

    Thank you!


  25. Gabriel Link

    This is the question I am waiting for since a long time. I figured that this is greyzone and not 100% defined. I am with you in terms of reporting each BTC to BTC trade. But in my understanding, you made a mistake in your thoughts:

    If you made 0.1 BTC because your trade went well, you do report the fair market value of that day in CAD. Same if you lose 0.1 BTC, you have to figure out the FMV and report your loss.

  26. shuman

    Lol, I have the exact same challange in my mind. If you lose 0.1 BTC in a trade and you report the FMV, you basically lose even more money, since you did not get the FMV in exchange, you got 0 dollar in exchange.

    So yeah, it looks like this is a greyzone at the moment and no clear indication of how to process BTC to BTC trades.

    @adjustcostbase: do you have any advise please?

  27. James

    Thanks for this useful tool.
    How do I enter fractional purchases of crypto.?

    For example, I purchased 0.07453 of ETH (Ether) for $101. The full sale price at the time was $1553.

    When I enter numbers like those (I’ve tried different combinations), it shows my ACB in the millions, lol.

    Thanks in advance!

  28. Post author


    Is it possible you incorrectly specified the amount as a per share amount instead of a total amount?

  29. James

    No, I tried both.
    Can you please confirm which amounts I put where?

    Do I need to enter the full BTC price (45k+), or only the amount I purchased for ($100)?
    I believe I tried both and still got huge numbers,

  30. Post author


    You can input it either way. If you input the price of one Bitcoin you must select the “Per Share” option for the amount. If you input the total amount you’ve paid to purchase the Bitcoins, select the “Total” option.

    Note that the numbers from your Ether example above don’t quite add up. 0.07453 units of Ether for a total amount of $101 implies a unit price of $1,355.16.

    Also please note that all monetary amounts should either be converted into Canadian dollars before inputting them, or inputted in a foreign currency along with the applicable exchange rate.

  31. James

    Fantastic, it seems to work now, thank you! Clearly, I was doing something wrong earlier.
    If I have multiple orders of the same fund on the same day, is it better to enter the totals in one entry, or separately?

    Finally, is there a limit to the number of entries per portfolio in the free and/or premium versions?

    Thank you again for this tool, and more importantly, the support!

  32. Post author


    Glad to hear you figured it out.

    If you have a series of purchase transactions only on the same day or a series of sale transactions, then it won’t matter if you consolidate them into a single transaction. However, if you have purchases interspersed with sales on the same day for the same security, then the results may not be correct if you combine all purchases or all sales into a single transaction.

    There is a limit of the number of transactions, however, it is large enough that it should be adequate for almost anyone.

  33. Uneeb

    Hi there,

    This is a great tool you’ve got here and I’ve been using it to start tracking my crypto cap gains/losses and it makes it a lot easier. My question is, how should I account for mining fees? Currently, I have made a security for each cryptocurrency I trade and I put in the amount of coin I buy/sell as the number of shares. So far the exchanges I used did not charge me fees. I have moved some of my crypto back to my exchange account from my wallet. This transfer charges a fee. I know the CAD value of the fee, but the fees are charged in bitcoin or ethereum or whatever crypto I’m using.

    So now, even though I have sold all of my bitcoin for example, my share balance still shows a small amount, which matches the amount of bitcoin I spent in transfer fees. What is the best way to account for this transfer on the site? So far I’ve considered making a transaction with the remaining share balance, and leaving myself a memo to not count this amount for cap gains/losses. Do you have a better suggestion, or is this the best way to go?

    Thanks in advance!

  34. Post author


    The transfer fee can be inputted like in example 4 above. This is equivalent to spending units of cryptocurrency, which corresponds to selling at fair market value.

    You could perhaps make the argument for deducting this cost as carrying charges on line 22100 of your tax return, however, in that case the capital gain or loss from disposal of the cryptocurrency would still apply.

  35. The Gambler

    From what I understand, gambling winnings in crypto are considered taxable gains. If I make a few gambles in a given week on say a bunch of hockey games, I’d have to keep track of the price of a BTC on each day I made a bet?

    What would I use as fair market price?

  36. Post author

    The Gambler,

    The taxation of gambling winnings can depend on the circumstances. Further information is available here:

    However, the procedure for tracking ACB for Bitcoin should be the same regardless of whether the gambling winnings are deemed taxable or not. In either case you are deemed to have acquired the Bitcoins based on their fair market value.

  37. Darrell

    Hello. I was wondering if the superficial loss rules apply to cryptocurrancy transactions when the buying and selling of a crypto is used as a currency as a means to buy another crypto. For instance, I bought ETH from fiat, and then immediately sold the ETH to buy another crypto, because the other cyrpto would only allow swapping of ETH. The loss is really only the transaction fees, and very minor changes in the price of ETH. Any advise?

  38. Jeff


    I am using UFile to file my taxes and it’s asking for the adjusted cost base of the property.

    Do I input the new ACB after I sell my bitcoin into this category?


  39. Post author


    You can input capital gains and losses with UFile as follows:

    – In the “Interview” section select the “Interview setup” from the left menu.
    – Ensure that “Capital gains (or losses) and capital gain history” is checked.
    – Select “Capital gains (and losses) and ABIL” from the left menu.
    – On that page there is a “Virtual currency transactions” option that you can use to input cryptocurrency transactions (though the process of inputting data looks very similar to that for inputted dispositions of stocks or other capital assets).
    – Complete the details for the sale.
    – Repeat for each sale (although you can merge all sales into a single entry as long as the total capital gain ends up correct).

  40. Billy

    Do you have any insight on how users might account for staking and providing liquidity? I am assuming yield farming nets something akin to bank interest but I am not sure how to enter it into

  41. Post author


    When staking/mining cryptocurrencies you would incur taxable income based on the fair market value of the benefit received. Provided that your transactions are on capital account then this can be inputted as a “Buy” transaction on based on the fair market value in Canadian dollars.

    However, does not support transactions on income account (only capital account). Activities such as mining or providing liquidity may be deemed to be on income account (the CRA specifically mentions mining as an example of an activity that may result in transactions being treated on income account: <>).

  42. Luis

    Hi Thanks for your example
    What about if on Dec 4th 2017 I bought 3 bitcoins at $CAD 65,000 what should be my new ACB?
    (1070.21 +65,000)/(3+0.77638) = $ 17,495.65
    Is ok this ACB?

  43. Post author


    The new total ACB would become (assuming a cost of $65,000 per Bitcoin):

    Total ACB = $1,070.21 + (3 Bitcoin x $65,000/Bitcoin)
    = $196,070.21

    Assuming a balance of 3.77638 Bitcoins the per unit ACB would be $51,920.15

  44. Rob


    I was gifted ~0.025 ($20) in BTC in 2013. I found it in a drawer last month. Its now worth ~$1500. Since the 0.025 BTC was a gift, do I have to pay taxes on the gain? I dont like it if i do haha.

    It would be like someone giving me $20 USD (at the time worth $20 CAD), and then due to the canadian dollar devaluing, the american dollar is now worth $40 CAD. If I cash it in, I would have to pay tax on the gain? Even though it was originally a gift?

  45. Post author


    When you receive capital property as a gift you are deemed to have acquired it at its fair market value at the time you received it. So in your case you would incur a capital gain when disposing of the BTC. This will only occur when you are deemed to have disposed of it, however (for example, when you sell, convert or spend it).

  46. ZLH

    I have a question about adjusted cost base for crypto when the exchange takes a commission that is not calculated in Canadian dollars.

    This is a common situation. For example, suppose I trade 0.5 BTC for 8 ETH, but the exchange takes a commission of 0.5 ETH. How do I enter this into

    If the current price of is 1 BTC = $70,000 CAD, I know that I need to enter the following:

    Sell BTC, Qty = 0.5, Total Price = $35,000

    However, can I just enter the Ether as if I purchased 7.5 ETH (instead of the actual purchase of 8 ETH less 0.5 ETH commissions), for example:

    Buy ETH, Qty = 7.5, Total price = $35,000

    Does this work or do I need to account for the commissions in some other way? Thank you!

  47. Post author


    I’m not sure whether the commission should be allocated to the sale of Bitcoin, the purchase of Ether or a combination of both. But it seems reasonable to divide the commission evenly between the two. In that case you could represent this as follows:

    1. Sell 0.5 Bitcoin for $35,000 with a commission of $1,093.75 ($35,000 x 0.5 / 8 x 50%)
    2. Buy 7.5 Ether for $33,906.25 ($35,000 – $1,093.75) with a commission of $1,093.75

    If you were to allocate the entire commission to the purchase of Ether rather than the sale of Bitcoin, it would look like this:

    1. Sell 0.5 Bitcoin for $35,000 with a commission of $0
    2. Buy 7.5 Ether for $32,812.50 with a commission of $2,187.50

  48. ZLH

    Thanks for your response. This sort of makes sense to me, except then would I not be double counting the commission (by subtracting 0.5 ETH and adding in 0.5 ETH commission)?

    In your second example (allocating all commission to the purchase of Ether), it looks like my ACB would be $37,187.50 for 7.5 ETH, which doesn’t make sense when I purchased that Ether with only $35,000 worth of BTC.

  49. Post author


    Yes, you’re right about the second example – sorry for the confusion. I’ve corrected the number above.

    I don’t think the commission is double counted. Taking the second example, the units of Ether purchased is 7.5 to match the balance you end up with. The commission is the value of the units of Ether deducted as the transaction fee.

  50. MP

    When I mine crypto, I get paid out every 4 hours. The payment transaction shows 2 lines, 0.001 “BTC from mining” and -0.00003 “BTC mining fee”. So in the end I get 0.00097 BTC added to my wallet. How would you recommend treating this?

    A) Do I BUY 0.00097 with zero commission?
    B) Do I BUY .001BTC with an equivalent 0.00003BTC Commission (in this case when I add up the BTC in my wallet vs what the spreadsheet has, the spreadsheet will be inflated as I only received 0.00097 BTC)
    C) Is this two transactions? BUY 0.001 BTC, then SELL 0.00003 BTC? Would the value of the Sell transaction be added to the commission in the BUY transaction?

  51. DC

    How do I enter in my crypto stake rewards? I haven’t been able to get a clear answer on how to report crypto staking rewards.

  52. Rob

    I was a QuadrigaCX customer. The exchange went bankrupt in 2019 and reached a final settlement with creditors in 2023. We received 13% of our claim amount, based on the market price at time of bankruptcy (paid out in cash).

    How would I handle this for reporting?

    Let’s say I purchased 1 BTC for $1000, which had appreciated to $5000 at the time the exchange went under. I then received a $650 payout (13% * $5000) in 2023. Would I simply treat this as a capital loss of $350 in the 2023 tax year?

    Similarly, let’s say my holdings had appreciated to $10000 instead. I would have then received a $1300 payout (13% * $10000) in 2023. Would I simply treat this as a capital gain of $300 in the 2023 tax year?

  53. Post author


    Yes, if reporting your cryptocurrency trading on capital account then you can report the gain/loss as you’ve described.

    If you previously filed an election under subsection 50(1) to report a total loss on your cryptocurrencies, then 13% partial payment should be reported as a capital gain.

    The CRA has recently provided some guidance on dealing with the collapse of a crypto exchange:

  54. Rob

    Thanks for the reply and the link!

    Luckily, I have all my records downloaded for my purchases from the exchange before it went under. So, I can easily demonstrate my purchases and calculate my ACB etc.

    A second, and maybe more complicated question: I bought more Bitcoin in 2020 on a different exchange. I started tracking a new ACB for those purchases (assuming that the other Bitcoin I held on QuadrigaCX would never be seen again). Was this the correct approach? Or, since I did receive a 13% claim payout in 2023, should I have added my 2020 purchases onto my ACB from my older QuadrigaCX purchases?

  55. Rob

    Also, I never did file an election under subsection 50(1) bad debt, if that makes a difference.

  56. Post author


    It seems more reasonable to pool together all Bitcoin holdings together for the purpose of calculating ACB. Generally speaking it’s possible you may have recorded capital gains before knowing that some of your holdings would be lost, and in that case you would need to retroactively change such calculations if you wanted to treat the QuadrigaCX shares as a separate pool.

  57. Rob

    Thanks for the reply, but I’m not entirely sure I follow.

    The exchange went bankrupt in 2019, and shortly thereafter the trustee declared their intention to convert all recovered asset holdings into CAD. They chose a currency conversion date with respect to claims received of April 15, 2019.

    So, while the timing of the eventual payout didn’t occur until 2023, wouldn’t it be reasonable to say that I knew the holdings were lost/sold in 2019, and therefore any new bitcoin bought after 2019 would be starting with a new ACB?

Leave a Reply

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