This setting affects the way your transfer fees are handled i.e. when you transfer 1 BTC from Coinbase and receive 0.95 BTC on Coinbase, the 0.05 BTC fee can be taxed differently, you can read more about this on how fees are handled in Koinly on this blog post.
When this toggle is ON:
Every transfer fee is considered as a disposal: as if the tokens used to pay for the fee were sold on that exact day, at the current market value
ℹ️ Note how there’s a small gain on every transfer - that’s because there’s practically a sale of 0.05 ETH on every transfer
For more information on this, see our article 'Transfers between my own wallets are showing gains (or losses)' 📖
When the toggle is OFF:
Transfer fees are still disposals, but not instant
They “accumulate” in the lot they are taken from
And the disposal of the transfer fees happens when the lot is completely sold
ℹ️ The small gains disappear (expected), but the loss on the sale on Binance on June 27th is bigger - that’s because, apart from 0.1 ETH, the accumulated 0.15 ETH from transfer fees were sold on that day as well
Additional notes when this toggle is OFF
The final disposal might be way larger than expected because those transfer fees have been accumulating inside the lot - they 'stick' to it until it's completely disposed of
Transfer fees accumulate in the sending wallet - they don’t travel with the transferred amount. That’s why the Binance withdrawal is affected, while the one from MetaMask is exactly the same