Please update KOINLY with a proper Liquidity Pool in/out routine!

I’ve been going through every possible post on here and been back and forth with support.

The current ‘solution’ (yes, in quotes, bc there is none) is mind-blowingly inadequate. Considering that the Defi place is expanding and more and more people explore other options than just the plain ol’ ‘let’s take it to one of the big exchanges’ should be an incentive for the Koinly Team to get onto this.

One Koinly Team member mentioned they’re working on something. Do you guys have a timeline of sorts? This is becoming so frustrating.

Thank you


Could you explain what kind of improvements you would like to see for liquidity transactions?
Koinly will automatically detect most LP tokens and treat the liquidity transactions as such. You also have the option to treat liquidity transactions as non-taxable events in your settings.

Best regards,

HI Petur,

with pleasure:

Here are a couple of examples.

This is the transaction on Etherscan:

It’s a swap and deposit in one step via Sushiswap/

this is what it looks like in Koinly, with no chance to mark it as a pool nor to reflect the nature of this transaction…

there are many many more instances where Koinly simply doesn’t reflect what’s actually happened. Sending Cardano to Yoroi Wallet for example also doesn’t work (As per CSV/API import) bc it doesnt show the two addresses that an ADA transaction sometimes gets split up into etc…Feel free to contact me directly if you’d need more data and insights.

thank you


Here is another example, apart from the fact that we cannot add or change the liquidity in/out tag (we can remove it but we cannot add it), is how Zerion for example beautifully creates ONE entry bc it is ONE trade to us and then lists the swap and the liquidity pair within the transaction.

and the same thing in Koinly:

or this one, three entries in Koinly vs one transaction in reality…and btw why not use ONE icon for costs instead of 20 different ones. That way one can spot and get an overview rather easily


and also, I cannot see my assets at work (staking) in the dashboard over view. They are not showing up. It’s important for us to know WHERE and HOW MANY assets are in pool/stakes/farms etc at a glance:

these here are nowhere to be found on my dashboard:

Screen Shot 2021-06-27 at 12.33.44 PM

And this is a way how I would hope our assets would be represented within Koinly:

Edit: It’s not so clear but this reply is only referring to the CRV + ADA issues.

This transaction is only a trade, there is no deposit/transfer according to etherscan.
Is it possible that the deposit that you mention is actually listed as a separate transaction (with a separate TxHash)?
I believe that is probably the case.
The CRV to cvxCRV is then treated correctly but can be tagged as a Swap if you believe that this does not constitute a taxable event.
The Withdrawal of cvxCRV can then be tagged as a ‘Sent to pool’ which tells Koinly that these are still your tokens, even though they are leaving your wallet. If you tag these withdrawals appropriately, you will see the tokens and their values listed on your dashboard.

Your Cardano issue is also a common one. I would recommend exporting the complete transaction history from your Yoroi wallet as that currently works better than the API if you have multiple addresses. We will be looking for better ways to sync Cardano but it’s not so simple since their system is totally unique (compared to BTC, LTC etc. that all use the same system).


A good place to start would be to allow us to properly designate Liquidity In/Out instead of relying on the platform to recognize it properly. For example, Balanced.Network / ICX additions the the liquidity pool do not get caught by the platform, and I cannot designate them as such.


Koinly splits all Liquidity transactions in two if two coins were sent/received from the liquidity pool.
This makes it easier for Koinly to track and calculate.
The fee will be shown separately unless you are sending ETH.


All your staked assets will be included in your overview if you tag them appropriately.
If Koinly is showing Withdrawals that were actually just transferred to a staking address should be tagged as ‘Sent to pool’ (ie. your cvxCRV tokens). This also applies to any LP tokens that are being farmed.
When the tokens are returned to your wallet, you can tag them as ‘Received from pool’.


I have problems with some liquidity adds/removes because the token address for the LP tokens isn’t indexed by Koinly so I can’t select it. I’m going to have to manually add these transactions with “NULL” tokens to get it right.


Hi RB,

Which LP token is this (either ticker or contract address)?
If it’s not being treated as an LP token then we just need to change that.

Best regards,

@poolsidestudios what platform are those screenshots from that you posted? that interface looks pretty slick

Token Token Address Network
SunflowerSwap LP Token SLP 0x74428c82bc9da6c610f7ff33b949edb322c168e7 ETH
SunflowerSwap LP Token SLP 0x28f72434d130029254fd04d772077d3bf08c032a ETH
SunflowerSwap LP Token SLP 0x904304fa84848a886a2e8c9d5c691ceeb42724d3 ETH
SunflowerSwap LP Token SLP 0x1c46a383f7890d69fda0221cf8ab27de5704d30a ETH
SunflowerSwap LP Token SLP 0x66188ff542b2514f78e35c864c3bff9e3fcbabac ETH
SunflowerSwap LP Token SLP 0x5303a6a87fb5b6adfdb182bfc7423cd496d123af ETH
SunflowerSwap LP Token SLP 0xb8c8a742d62f0a8b39f3f0c9e61c6c1f6b9a552b ETH
Ichi LP Token ichiLP 0x4ea9c6793c4931f25d0d08dd5fe357acb54814ba ETH
WallStreetSwap LP Token WLT 0xb4ee26fdc8905327069342799151b78e6ac8ddf2 BNB
Uniswap V2 UNI-V2 0x30f721c3f67503aee664c828e5d6b6b8d39942df ETH

Those are the ones i’ve found so far going through my transactions. The contract addresses aren’t available. They are obviously obscure LP providers. Most of the Uniswap/Pancake show correctly now.

If you receive some kind of reward token while in the Liquidity Pool, you can record that as a deposit into the LP when you claim the reward, and then the token can be withdrawn into you own wallet later
The tax people will regard the claim of reward token as a taxable Income event on thedate that they are claimed


That’s from the excellence of and

check it out. you might find some tokens in your wallet/pools/lends etc that you didn’t know existed lol

Unfortunately I feel like I’ve been expecting too much from Koinly. Bummer, such a potential as they have ALL the data of our assets already… but the fact that you cannot even create individual exchange/portfolio profit and losses just shows how short shortsighted the apps approach seems to be.

Check out the amazingness of and their slick and highly functional interface…THAT’s what I pictured Koinly would be heading towards…good lord one can still dream…

you can even see where you’ve placed your individual order/sells!!!

all done via API…

I personally have many liquidity transactions unrecognized, on bsc and polygon is a bloodbath, it would be much easier to have the possibility to merge more than two transactions and mark them as liquidity in or out, the automatic detection of koinly will never cover them all correctly, we need more freedom on the user side.


yup same here on BSC and Polygon all my Liquidity out, every single one, has the LP token at 0 dollar cost basis and it triggers thousands of dollars in profit for each transaction lol I have a massive profits that aren’t really profits !!! FIX THIS, Also why are Liquidity in triggering profits also I didn’t sell the tokens?


Liquidity in triggers profits because you “sold” your tokens (with massive profits it seems) for LP-tokens. But I wonder why your cost basis for the LP tokens is zero. That’s not the case with my LP tokens.

Hi Petur,
PLEASE can you ask the team to include ANC-UST-LP from the Terra ecosystem? Along with other defi functions like bonded tokens (bLuna) (soon to also include bETH, bSOL, bATOM and so on).
Also please consider Thorchain :frowning: ViewBlock | Thorchain Block Explorer lots of Dex LP action in there.


Case in point of why better handling is needed. Say I pool 500UST + 250ANC. I get my 1000 ANC-UST-LP token. After a few months I withdraw 1000 LP tokens, and unpool, ending up with for example 600UST + 200ANC. Koinly, not handling this well at all and not recognising the LP token too, reports my ANC has now gone to negative 50… legit - impossible… I have brought in many many CSVs and tried to get this to work. What we need is some auto-computation that the LP token creates a swap perhaps or something similar once the LP token is withdrawn and unpooled into it’s counterparts. Not sure how to handle it but yeah, having negative balances shows we need a better way to handle this.