Recap has a comprehensive integration with Solana that makes it easy to manage your crypto tax calculations. Add your Solana public address to Recap to import your full history and automate your taxes. From 2026, tax authorities are widening the automatic reporting of crypto under frameworks such as the OECD's Cryptoasset Reporting Framework (CARF), so keeping an accurate record matters more than ever.
Disclaimer
The information provided in this content does not endorse Solana. Furthermore, it does not constitute tax advice. If anything financial or tax-related is unclear, speak to a qualified tax professional. You can also share your Recap account with your accountant or tax adviser directly.
Why Solana tax can be difficult to calculate manually
A Solana account gives you a complete record of your activity, but it is raw on-chain data rather than a tidy statement. That is exactly what makes the tax side hard to work through by hand. A few things tend to trip people up:
Common pitfalls
- Transfers between your own accounts are not disposals. Moving crypto between accounts you control is not a taxable event, but it is easy to mistake for one, or to miss the trades hidden among the transfers.
- On-chain swaps are disposals. Swapping one token for another, including trades through decentralised apps, is a disposal even though no ordinary money changes hands.
- Network and gas fees. A fee paid in crypto is a disposal of the crypto you spend, and it also attaches to the transaction it relates to as an allowable cost, so getting the numbers right means picking up both sides rather than ignoring them.
- Rewards and airdrops. Staking rewards are income at the value they arrive at, and they enter your pool at that same value, so only later growth is a gain. Airdropped tokens are an acquisition rather than income, so what matters is the cost basis they carry. Both are easy to leave sitting in the account and overlook.
How to import your Solana data into Recap
Solana imports into Recap from your account. Add your public address, and Recap reads your on-chain activity automatically, including receipts, sends, swaps and fees. Recap classifies and values every entry with our fair-market valuation engine and applies the tax rules for your jurisdiction, turning raw on-chain data into a clear set of gains and losses.
How are Solana transactions taxed?
Tax treatment depends on the transaction type and where you are tax resident. Here is how the main Solana activities are generally treated:
Solana tax table
| Transaction type | CGT disposal | CGT acquisition | Income |
|---|---|---|---|
| Receiving crypto into your account | CGT disposal: no. The receipt itself is not a disposal. If the account signed and paid SOL gas on the incoming transaction, that gas is recorded as a fee disposal; where the fee is in the same asset as the amount received, Recap nets it off the deposited amount instead of emitting a separate fee. | CGT acquisition: no. Recap records an inbound movement as a plain Deposit (or a multi-asset deposit when several assets arrive), which creates no acquisition on its own: the tokens keep the cost basis they already had. Recategorise the transaction in Recap (for example as Income, Airdrop or Gift received) if it was genuinely new crypto rather than your own funds arriving. | Income: no |
| Sending crypto from your account | CGT disposal: no. An outbound movement is recorded as a Withdrawal, which by default disposes of nothing: only the SOL network fee is recorded as a fee disposal. If the crypto actually left your ownership (a spend, a gift or a sale off-chain), recategorise the transaction in Recap so it is treated accordingly. | CGT acquisition: no | Income: no |
| Swapping one token for another | CGT disposal: yes. Each token sent out of the account is recorded as a disposal at the swap's valued proceeds, allocated proportionally across the outbound legs. | CGT acquisition: yes. Each token received enters its section 104 pool at the same swap value. Where a leg cannot be priced, Recap's default (for portfolios created after 18 June 2026) is to value it from the residual value of the swap rather than at zero; this is the 'Allocate residual swap value to unpriced assets' setting. | Income: no |
| Selling crypto for a stablecoin | CGT disposal: yes. Selling a token for USDC/USDT on Solana is recorded as the same on-chain swap: a disposal of the token sold, valued at the swap proceeds. | CGT acquisition: yes. Recap treats stablecoins as crypto assets, not fiat, so the stablecoin received is also an acquisition entering its own section 104 pool at the swap value. | Income: no |
| Network and gas fees | CGT disposal: yes. SOL paid as a network or priority fee is recorded as a disposal of that SOL at market value. Where the fee belongs to another transaction it is also attached to that transaction as an allowable cost. Two Solana-specific behaviours: a SOL outflow that accompanies a token movement is folded into the fee line (router/MEV/Jito tips), and a same-asset fee on an incoming transfer is netted off the amount received rather than emitted separately. Failed transactions produce a fee-only row. | CGT acquisition: no | Income: no |
| Staking or reward tokens received | CGT disposal: no. Delegating and withdrawing SOL from a stake account are recorded as balance-neutral Stake and Unstake movements within the same account, so no disposal of the staked principal arises; only the transaction fee is a disposal. Recap's configurable staking-principal and staking-return treatments apply to the generic stake-start/stake-end transaction types, not to Solana's native staking rows. | CGT acquisition: yes. Each reward also enters the SOL section 104 pool at that same market value, so it is not taxed twice on a later sale. | Income: yes. Recap emits one staking reward per epoch (plus one for third-party deposits into a stake account, typically validator MEV or tip rebates), recorded as income at market value on the date received. Unstaking returns only the principal portion, because the reward portion was already counted at each epoch. Configurable: 'Deduct fees from income' (default off) deducts a same-asset fee from the amount before valuing it. |
| Transferring between your own accounts | CGT disposal: no. When Recap matches the outgoing and incoming sides across two of your accounts it records a single transfer: no disposal and no acquisition of the principal. The SOL network fee is still recorded as a fee disposal. If the amount received differs from the amount sent, the difference is recorded separately (an excess received is an acquisition at market value; a shortfall is a zero-value disposal). | CGT acquisition: no | Income: no |
This table shows how Recap classifies each transaction type by default. Some treatments — such as the acquisition cost used for airdrops — are configurable in Recap. This is general information, not tax advice; consult a qualified tax professional about your circumstances.
This table shows Recap's default classification for common Solana transactions. It is not an exhaustive schedule or a ruling. Treatment depends on your circumstances and jurisdiction, and you can recategorise any transaction where yours differ. Confirm your position with a qualified tax adviser.
Swapping one token for another, including trades into stablecoins, is both a disposal of the token you give up and an acquisition of the token you receive, each measured against your cost-basis pool. Moving crypto between your own accounts is not a disposal, but a network or gas fee paid in crypto is: the fee is a disposal of the crypto spent, and it also counts as an allowable cost of the transaction it relates to. Staking and reward tokens received on-chain are generally treated as income at the value you receive them and enter your pool at that value, so any later disposal can also create a capital gain.
Refer to our tax guides for a more detailed look at crypto tax rules.
What's in your Solana tax report
Recap turns your Solana activity into a single tax report: on-chain swaps treated as the disposals they are, transfers between your own accounts excluded, fees accounted for, capital gains and losses and income worked out under the rules for your jurisdiction, and a clear year-by-year summary you can file yourself or hand straight to your accountant.
Common Solana tax challenges and how Recap solves them
Account data produces a few recurring tax problems. Here is how Recap handles each one:
How Recap handles them
- Telling transfers from disposals. Moving funds between your own accounts is not taxable, but a swap is. Recap tells them apart so nothing is mislabelled.
- On-chain swaps. Each token-for-token swap is a disposal. Recap reads it and calculates the gain or loss automatically.
- Fees and gas. Fees paid in crypto are easy to overlook. Recap treats each one as a disposal of the crypto you spent and attaches it to the parent transaction as an allowable cost.
- Rewards and airdrops. Reward tokens land as income events, and Recap values each one at the point you receive it so it enters your pool at that value too. Airdrops come in as acquisitions rather than income, with their cost basis set for you.
Why Solana users choose Recap
Solana users often choose Recap because raw account data, full of transfers, swaps, fees and rewards, is slow and error-prone to reconcile by hand. Rather than reading it transaction by transaction, you can bring it into Recap and see your gains and losses reconciled in one report, ready to file or share with your accountant.

Auto Sync with Solana 
