By default, TokenTax treats all crypto-to-crypto transactions as taxable events. This includes things like wrapping ETH to WETH, depositing LINK to aLINK on Aave, and enters/exits into and out of liquidity pools.

For more about why we treat these transactions as taxable events, read our DeFi Tax Guide.


If you would like to treat certain crypto-to-crypto transactions as nontaxable migrations instead of trades, you can easily make the changes using the tools on our All Transactions page. Here's an example using some Aave data:

Step 1

Filter your data so you only pull the transactions that you wish to change. In this example I'm filtering by the Aave contract address responsible for deposits into aTokens, and also filtering by trade transactions so I don't accidentally include things like approval fees (spend transactions in TokenTax terms).

Step 2

Scan through the transaction list to make sure you're only capturing the data you want to. Changing trades to migrations is easy, but changing data that you accidentally included back to its original form can be a bit trickier. If you ever make a mistake and need to start with fresh data, you can remove and re-add your ETH wallet. Note that this will delete any edits made to other transactions associated with that wallet.

Step 3

Select all of the transactions by clicking the checkbox next to Type, click Edit, and then select Migration under the the transaction type menu.


Voila! Your changes will be reflected once you recalculate your Tax Dashboard.

As with any tax decision, you should discuss these changes with the tax professional handling your return since reclassifying certain transactions as nontaxable events may be considered a more aggressive way to file.

It's also generally important to be consistent with your treatment — your tax agency would not appreciate it if you treat certain transactions as taxable events because they result in losses, but then treat similar transactions as non-taxable events because they would otherwise result in gains.

Did this answer your question?