You never touched cash. You simply swapped 1 ETH for SOL on a decentralized exchange — one token in, another token out. So no profit was realized, right? Wrong, and it is an expensive misunderstanding: in both accounting and (in most countries) tax terms, a token-to-token swap is a sale followed by a purchase.
The moment you gave up your ETH, you locked in whatever gain or loss it was carrying. The SOL you received starts a brand-new investment with its own cost basis. Treating the swap as a single blurry event is how people miscalculate their profit by the full amount of the first leg.
Here is the two-leg framework, a worked example with real numbers, the fee and slippage traps that shrink the result, and how to log swaps so your records stay clean.
A swap is two transactions, not one
Leg 1 — the disposal: you "sell" token A at its market price at the moment of the swap. Your realized profit or loss is that price minus your original cost basis for token A. This leg is final: the gain or loss is locked in whether token B moons or collapses afterward.
Leg 2 — the acquisition: you "buy" token B with the proceeds. Your new cost basis in token B is its market price at swap time (minus fees, covered below). From here, token B's future performance is measured from this price — not from what you originally paid for token A. If you bought in multiple batches before swapping, our guide to calculating profit across multiple batches shows how to establish leg 1's cost basis.
This two-leg view also matches how most tax authorities see it: disposing of crypto for other crypto is generally a taxable event, even with no fiat involved. Our overview of what counts as a taxable event covers the reporting side.
Worked example: 1 ETH becomes 20 SOL
You bought 1 ETH at $2,800. Months later you swap the full 1 ETH for SOL when ETH trades at $3,400 and SOL at $170:
| Metric | Value |
|---|---|
| ETH cost basis (leg 1) | $2,800 |
| ETH price at swap (sale price) | $3,400 |
| Realized gain on ETH | $600 (21.4%) |
| SOL received | 20 SOL |
| New SOL cost basis (leg 2) | $170 per SOL |
The $600 gain on ETH is realized and final — it does not change no matter what SOL does next. Your 20 SOL now carry a $170 cost basis each. If SOL later rises to $220, your SOL profit is ($220 − $170) × 20 = $1,000, measured from the swap — not from the $2,800 you once paid for ETH. Mixing the two legs is the classic error: it either double-counts the ETH gain or pretends it never happened.
Key takeaway: the swap freezes your profit on the outgoing token and restarts the clock on the incoming one — judge each leg against its own cost basis, never blended together.
The traps: fees, slippage, and partial swaps
Real swaps are less clean than the example. A DEX charges a swap fee (often 0.3%), the network charges gas, and on large swaps slippage — the price moving against you mid-trade — takes another slice. All of it comes off leg 1's proceeds: if fees and slippage total $45, your realized ETH proceeds are $3,355, not $3,400, and your SOL cost basis per token rises accordingly. The Uniswap documentation explains how pool fees and slippage mechanics work, and CoinGecko gives you the reference prices to check your execution against.
Partial swaps and FIFO
Swapping only half your ETH? Then only half the cost basis is disposed of. With 2 ETH bought at different prices, decide your accounting method up front — first-in-first-out is the default in many jurisdictions — and apply it consistently, because the method changes which cost basis leg 1 uses.
Key takeaway: subtract swap fees, gas, and slippage from the realized proceeds first — on small swaps these costs can erase the entire gain before it exists.
How to log swaps cleanly
Record every swap as two linked lines: "Sold X of token A at $P (cost basis $C, fees $F)" and "Bought Y of token B at $Q." Never log it as a single "ETH → SOL" line with no prices — six months later you will not remember the execution prices, and neither will your spreadsheet. Do this at swap time; reconstructing prices afterward is the tedious part everyone regrets skipping.
Conclusion
A token-to-token swap feels like one action but behaves as two: a sale that locks in your profit on the token you gave up, and a purchase that sets a fresh cost basis on the token you received. Split every swap into its two legs, subtract the full cost of execution, and your profit math — and your tax records — will finally be honest.
Run your numbers: plug your deposit, prices, and fees into our free crypto profit calculator to see your true net profit.
Disclaimer: This article is for educational purposes only and is not financial advice. Cryptocurrency investing involves substantial risk, including the possible loss of your entire investment. Always do your own research (DYOR) and consider consulting a qualified financial advisor before making investment decisions.
This article was created with AI assistance and reviewed by the Crypto Profit Calculator editorial team.
Comments
No comments yet. Be the first to share your thoughts.
Leave a comment