Skip to main content

How Koinly imports NFTs

Robin Singh avatar
Written by Robin Singh
Updated over a month ago

Koinly imports NFTs (ERC-721 and ERC-1155) automatically for most EVM-based blockchains such as ETH, BSC, FTM, AVAX, Poly, Cronos, etc. and have limited support for Solana and Cardano NFTs. Additionally, platforms like MagicEden and Tensor are supported, expanding the compatibility for accurately managing NFT transactions.

We are still working on NFT support for other chains, such as WAX, XTZ etc

To add your unsupported NFTs to Koinly, please see How to manually add NFT trades including specific steps such as using unique placeholder names (e.g., "NFT1") for each trade and enabling the 'Ignore reported balances' option to display the cost basis in your overview.

How the import currently works

Koinly will import a deposit of the NFT whenever you are purchasing, minting, or receiving an NFT.

Similarly, Koinly will import a withdrawal whenever you are selling or sending an NFT away. All NFTs will currently be imported without any market value.

This is how the NFT transactions look:

Screenshot from 2022-02-23 00-55-36.png

How to fix your NFT transactions

If you do not want to include the NFTs in your account's reports then you can simply ignore these NFT transactions. This is only recommended if you are calculating and filing your NFT gains separately as NFTs are taxable in most countries.

Fixing the NFT transactions is usually quite simple.

  • To fix an NFT purchase, you just need to locate the withdrawal of the spent coins in your wallet and merge it with the NFT deposit. These transactions will usually have the same timestamp and transaction hash so they are easy to identify.
    Merging the transaction will create a single trade and Koinly will then be able to calculate the cost basis of the NFT.

  • If you have a deposit of an NFT that has no corresponding withdrawal to merge with, then you can adjust the cost basis manually. You can do this by editing the deposit and setting the 'worth' of the transaction.

  • To fix an NFT sale, you will need to find the deposit of the received coins and merge it with the withdrawn NFT. Koinly will then merge the transactions into a trade and calculate the proceeds and gains for the sale.

  • If you have a withdrawal of an NFT that doesn't have a matching deposit to merge with, then you can set the proceeds of this disposal by editing the worth of the transaction.

This is how the NFT trades look after they have been merged:

Screenshot from 2022-02-23 00-56-36.png

What if I already added some NFTs manually?


You can choose whether you want to replace all of the manual NFT transactions or if you want to keep these manual transactions and only sync newer NFT transactions automatically.

If you want to replace the manual ones then you would need to permanently delete all of the manual transactions that were added in the past. You would then need to trigger a full re-sync. Make sure to remove any starting sync date in the API settings of your wallet first. You can do this by clicking on the 'Auto sync enabled' banner from your wallet overview page

What if I received multiple NFTs in one transaction?

Update - October 2024:

Buys/Sells of multiple NFTs will no longer be split and merged into multiple separate trades. These will now be shown as separate transactions but all with the same "Multi-trade" tag.

The cost basis for these will be automatically split into equal amounts and applied to the NFT transactions.

Adjusting for Specific Platforms (e.g., Tensor)

NFT transactions involving platforms like Tensor require additional adjustments. Refer to the guidelines provided in the help article ‘Solana: Interpret Tensorswap and MagicEden NFT transactions’ for interpreting these transactions accurately.

  • Use distinct placeholders for each NFT purchase to maintain a proper cost basis.

NFT Gallery

You can now access your gallery of owned NFTs by selecting "NFTs" on your Koinly Dashboard.

Troubleshooting Common Issues

  1. Wallet Sync Issues:

    • Ensure your wallets (e.g., Solana Wallet) are connected and synchronized correctly.

    • Check if Koinly has imported all necessary data from your wallet.

  2. Transaction Discrepancies:

    • Manually adjust transactions or add missing information as required.

    • Double-check placeholder and transaction tags for conformity.

  3. Visibility Problems:

    • Use the resync option to refresh wallet transactions.

    • Enable the 'Ignore reported balances' option if placeholders are missing in the overview.

image.png
Did this answer your question?