Using CoinTracker.Io to Generate Cryptocurrency Tax Reports

Entering Binance Transactions into CoinTracker.Io

In order to upload your files into CoinTracker.Io you need to modify it to comply with the format expected. This is a generic sort of import and requires a fair bit of time to change the data in your import file. It is also heavily prone to error. To re-format 6 transactions it took me about 30 minutes. This would be impractical if I had hundreds of transactions. Here are the steps I needed to take to reformat the data.

Reformatting the data to CoinTracker.Io's expectations

Here are the rules for preparing your CSV file:

CoinTracker.Io CSV Import Instructions

The tricky part here is that you need to be careful how you add sell transactions as they need to be put into the reverse of buy transactions. Here are the steps:

  1. Convert the Binance export from from XLS to CSV format
  2. Change the dates from Binance's universal format (yyyy-mm-dd hh:mm:ss) to US format (mm/dd/yyyy hh:mm:ss).

    This is preferably not done in Microsoft Excel as Excel will automatically apply the computer's regional format to dates. If you're using Excel then change the format to a custom format of mm/dd/yyyy hh:mm:ss or convert the column to text format and then re-enter all the dates.

  3. For each buy trade
    1. Enter the currency into the first currency column (you need to split the asset pair into asset and currency e.g. ETHBTC as ETH (asset) and BTC (currency))
    2. Enter the asset into the second currency column
    3. Enter the value in the 'Amount' column of the Binance export in the 'Received Quantity' column of the CoinTracker.Io CSV
    4. Enter the value in the 'Total' column of the Binance export in the 'Sent Quantity' column of the CoinTracker.Io CSV
  4. For each sell trade
    1. Enter the asset into the first currency column (you need to split the asset pair into asset and currency e.g. ETHBTC as ETH (asset) and BTC (currency))
    2. Enter the currency into the second currency column
    3. Enter the value in the 'Total' column of the Binance export in the 'Received Quantity' column of the CoinTracker.Io CSV
    4. Enter the value in the 'Amount' column of the Binance export in the 'Sent Quantity' column of the CoinTracker.Io CSV
  5. Check that the currency symbols conform to that expected by CoinTracker.Io.

    Various exchanges store currency symbols differently. For example Kraken stores Ethereum as XETC and Bitcoin as XXBT which doesn't conform to most exchanges (ETC and BTC respectively). You will need to convert these to the correct symbol otherwise CoinTracker.Io will not be able to import your record.

  6. There is no place for fees, you will need to exclude them.
  7. If your export from the exchange does not contain total values (most don't), you will need to calculate the totals by multiplying the unit price by quantity.

Using CoinTracker.Io to Generate Cryptocurrency Tax Reports

Original Data as Exported from the Exchange
Original Data as Exported from the Exchange
Prepared Data ready for upload into CoinTracker.Io
Converted Data for the CoinTracker.Io import
Entering Deposits into CoinTracker.Io

Instead of re-formatting the csv file as per the previous section, I just decided to add a new transaction manually.

Similar Realisations in CoinTracker.Io and CHAINOMETRY

Below is a list of realisations as calculated by both tax calculators which generally appear aligned in their cost basis and profit or loss. Both calculators are able to account for release currency adjustments and clearly show the gains and losses with the purchase and sale prices in your desired currency (in this case AUD - Australian Dollar)

CoinTracker.Io 139 XMR Realisation:
CoinTracker.Io XMR Realisation
CHAINOMETRY 139 XMR Realisation:
CoinTracker.Io XMR Realisation
CoinTracker.Io 53 LTC Realisation:
CoinTracker.Io LTC Realisation
CHAINOMETRY 53 LTC Realisation:
CoinTracker.Io LTC Realisation
CoinTracker.Io 0.85 BTC Realisation:
CoinTracker.Io BTC Realisation
CHAINOMETRY 0.85 BTC Realisation:
CoinTracker.Io BTC Realisation

Realisations that differ in CoinTracker.Io and CHAINOMETRY

10.989 ETH Transaction

The following is a list of realisations that differ from each tax calculator. An explanation is given under each comparison.

CoinTracker.Io 10 ETH Realisation:
CoinTracker.Io BTC Realisation
CHAINOMETRY 10 ETH Realisation:
CoinTracker.Io BTC Realisation
Explanation of difference between the two tax calculators for the 10.989 ETH Transaction

On the 3rd June, ETH was used to buy LTC so the above realisation accounts for the release of currency ETH. We effectively sold ETH the same time we bought LTC. The ETH source of funds were acquired on the 2nd June (using Bitcoin) at a unit price of 0.077224 BTC:

BUY ETH 10.9889 @ Unit price 0.077224 BTC: 0.8486 BTC or $6356.57 USD (@ $7490.60) or $8402.15 AUD

The release of ETH on the 3rd of June shows the following figures:

SELL ETH 10.9889 @ Unit price 0.080101 BTC: 0.88022 BTC or $6777.62 USD (@ $7699.9) or $8964.01 AUD

The unit price of ETHBTC rose from 0.077224 on the 2nd June to 0.080101 on the 3rd June therefore creating a profit realisation of $421 USDT or $561 AUD.

CoinTracker.Io potentially used LTC to come up with the cost basis for LTC. The price of LTCETH on 2nd June was 0.20695 and on the 3rd June was 0.20495 showing a lowering of it's value against ETH. While you received less total ETH because of the price variance, the price of ETH rose from 2nd June to 3rd June:

2nd June LTC 53.61795559 @ Unit price 0.20695 ETH: 11.096 ETH or $6422.5 USD (@ $578.8) or $8454.14 AUD
3rd June LTC 53.61795559 @ Unit price 0.20495 ETH: 10.988999 ETH or $6783.5 USD (@ $617.3) or $9163.16 AUD

As you can see above the unit price for ETH rose by about $39 making the overall realisation a profit not a loss. The most likely scenario a loss was recorded in CoinTracking.Io is that ETH was valued both times the 2nd June unit price of $578.8 USD

2nd June 11.096 ETH or $6422.5 USD (@ $578.8)
3rd June 10.988999 ETH or $6360.4 USD (@ $578.8)
loss of $62 USD ($80 AUD)

It's possible that CoinTracking.Io used another method for deriving the lower cost base but I can't find it especially since the major coins rose between that period not fell. It seems that a loss here cannot be justified.

2.8476 BTC Transaction
CoinTracker.Io 2 BTC Realisation:
CoinTracker.Io 2.8476 BTC Realisation
Explanation of difference between the two tax calculators for the 2.8476 BTC Transaction

The example data intentionally includes some errors to see how the tax calculator handles these errors. One is the purchase of XMR using BTC on the 1st Jan 2017. CoinTracker.Io shows a warning message indicating that there's no purchase history for BTC.

Purchase of 200 XMR

You see there's no balance of BTC to buy XMR, therefore there's no BTC to draw down. In CHAINOMETRY these are known as Unfound Balances and can be fixed using the instructions here. The issue with CoinTracking.Io handling of the problem is that it automatically assumes that the cost basis for BTC was 0 and therefore the release of BTC to buy XMR resulted in a profit of $4,014 AUD.

This profit may or may not have been the case. You may have forgotten to add a purchase or deposit record or there may be missing data on the exchange. In any case, automatically classifying as a profit can be dangerous and lead to overpayment of tax. CHAINOMETRY prefers not to add these ass a profit and gives you a list so that you can deal with each problem one by one.

Here's how the problem is shown on CHAINOMETRY:
Unfound Balances In CHAINOMETRY

The record above indicates that there was an issue buying XMR with details about the quantity and the value of the missing balance. In this case, $3,804 AUD. To fix this problem, simply click on the 'Add balance to your account' link and you will be presented with the following window:

Correcting Unfound Balances In CHAINOMETRY

Here you can either accept the cost base of 0 (thereby adding a profit realisation to your account) or add a cost base. The maximum value of the unit price is restricted to the unit price of the currency as of the date of deposit. You can get more information about visiting data issues. In the above example, if you added a cost base of 963.9 USDT you would not incur any profit or loss realisation and the unfound balance would be cleared from your account. The important thing is that you have complete control.

Concluding Thoughts

The major stumbling block to using CoinTracker.Io is the way CSV imports are handled. Having to reformat your exchange exports to comply with their expected format is far too time consuming and would not be practical for even a small number of trades. You would be better off using the API import offered by the web site. I have not tested this as alternative method.

This leads to a discussion about what it really means for a crypto tax calculator to support an exchange.

CoinTracker.Io advertises that it supports over 300 exchanges. The fine print is that you must reformat all of you export files to conform to their standard import CSV. You also need to ensure that the currencies are standardised to the list of currencies that are supported. The challenge for all crypto tax calculators is that exchanges often store cryptcurrencies names differently (and combines them differently as well). In order to calculate the data properly there needs to be a standardisation process to ensure that cryptocurrency names are uniform. This is a mammoth task if done properly. For the user to transform their data export files to a standardised set of currencies supported by a crypto tax calculator is a big task and in my opinion not a feasible option. You can read more about how CHAINOMETRY supports exchanges here.

Calculation issues also needs to be investigated further to determine the methods used for release currency adjustments. Finally, a better approach can be used when correcting issues such as a missing balance. Automatically adding a profit realisation with a cost base of 0 can lead to tax overpayment.

Review us

Get your crypto tax report now!
Simple Crypto Accounting, Unmatched Precision
No Credit Card Required
Related Articles

Check out other blogs that relate to How Does Our Crypto Tax Reports Compare to CoinTracker.Io?...

How does Chainometry compare with other tax calculators?

How Does Our Crypto Tax Calculator Compare to CoinTracking.Info?

The Best Crypto Tax Software: A Koinly Alternative.

The Ultimate Guide for Choosing the Best Crypto Tax Software