Koinly supports files from over 300 exchanges/wallets and services so you do not need to make any changes to the files manually. Koinly takes care of all that for you. Simply download a csv file for your wallet and upload it to Koinly.

Let's say you want to upload your metamask transactions using a file downloaded from etherscan. Here's how that works:

1. Go to the Wallets page and click on Add Wallet, search for Metamask:


2. Click on MetaMask and then on Upload CSV Files. This will take you to a page where you can upload your files:

3. Drag and drop your file into the box or click on it and select the file through the file explorer dialog. Then just press Import.

4. Once the Import has finished, you will be able to view the results:


If you want to import more files click on Import more otherwise click on Finish to go back.


Can I upload the same file again?

Sure, you can. Koinly skips transactions that have already been imported by creating a unique hash so even if you upload the same file, there won't be any duplicates. If your file content changes, for ex. you import a file in 2018 for your tax report for that year and come back to Koinly in 2020 for the next years tax report, you won't have to delete the wallet and start again, instead just download a new csv file and import it. 

How does Koinly skip transactions that have already been imported / duplicates?

It does this by creating a unique hash of your row. As long as the row contents remain unchanged - the transaction will be skipped on subsequent imports. Koinly can also skip transactions if they appear on a different row so the ordering is not important.

Did this answer your question?