CEX vs DeFi — How Your Crypto Is Taxed Differently in the UK
HMRC doesn't care where you traded — all disposals of the same token share one Section 104 pool. But exchange trades and DeFi activity create very different classification challenges. Here's why you need one tool for both.
Most UK crypto investors use both centralised exchanges and DeFi. You buy ETH on Coinbase, bridge it to Arbitrum, swap it on Uniswap, stake it on Lido, and eventually sell some back to GBP on Kraken. That is a completely normal workflow — and it creates a tax calculation problem that no single platform can solve on its own.
HMRC does not care where you traded. All disposals of the same token draw from one Section 104 pool. But the type of activity — exchange trade, swap, LP removal, staking reward — determines whether the event is capital gains, income, or non-taxable. The rules are the same; the complexity is not.
This guide compares how exchange trades and DeFi activity are taxed, explains why using separate tools for each produces wrong numbers, and shows what a correct combined calculation looks like.
The tax basics — same rules, different complexity
UK crypto tax follows two tracks: Capital Gains Tax (CGT) on disposals, and Income Tax on rewards and earnings. Both apply regardless of whether the activity happened on an exchange or on-chain.
| Activity | Exchange (CEX) | DeFi | Tax treatment |
|---|---|---|---|
| Buy crypto with GBP | Buy order | On-ramp (rare) | Acquisition — no tax |
| Sell crypto to GBP | Sell order | Off-ramp (rare) | CGT at 18% / 24% |
| Token-to-token swap | Convert | Uniswap, Curve, 1inch | CGT (disposal of outgoing token) |
| Staking rewards | Coinbase Earn, Kraken staking | Lido rebases, CRV gauge | Income at 20% / 40% / 45% |
| LP position add | N/A | Uniswap, Balancer, Curve | Cost basis change (tokens exit pool) |
| LP position remove | N/A | Uniswap, Balancer, Curve | CGT (disposal of LP token) |
| Bridge transfer | N/A | Hop, Arbitrum, Optimism | Non-taxable (cost basis carries over) |
| Deposit / withdrawal | Send / Receive | Aave supply, WETH wrap | Non-taxable transfer |
Exchange activity is straightforward: buy, sell, convert, earn. DeFi introduces LP positions, protocol-specific staking, bridging, wrapping, and interactions that most tax tools misclassify. The underlying tax rules are identical — the difficulty is in correctly identifying what happened.
Exchange trades — straightforward but not automatic
Exchange trades map cleanly to HMRC tax events. A buy is an acquisition. A sell is a disposal. A convert is both. Staking rewards are income. Deposits and withdrawals between your own wallets are non-taxable transfers.
The catch is that your exchange's tax report uses the wrong cost basis method. Coinbase uses FIFO, Binance offers multiple methods (none of which are Section 104), and Kraken shows raw trade data without any gain calculation at all.
FIFO is not Section 104
Your exchange's tax report uses FIFO (first in, first out). HMRC requires Section 104 pooling (weighted average cost). They produce different gains. Using the wrong method on your Self Assessment is incorrect and could result in penalties.
DeFi — where most tools get it wrong
DeFi transactions are harder to classify because the raw on-chain data does not tell you the intent. A Uniswap V3 LP position involves multiple token transfers, NFT mints, and internal calls — but the tax treatment depends on whether tokens were deposited (cost basis change), removed (disposal), or earned as fees (income).
| DeFi interaction | Correct classification | What generic tools often show |
|---|---|---|
| Uniswap LP add | Cost basis change | Disposal (creates phantom gain) |
| Bridge (Arbitrum, Optimism) | Non-taxable transfer | Disposal (creates phantom gain) |
| WETH wrap/unwrap | Non-taxable transfer | Swap (taxable disposal) |
| Aave deposit | Non-taxable transfer | Disposal or unknown |
| Staking rewards (Lido, CRV) | Income at FMV | Ignored or classified as transfer |
| LP fee collection | Income at FMV | Capital gain or ignored |
Each misclassification has a knock-on effect. A bridge incorrectly classified as a disposal creates a phantom gain and corrupts the Section 104 pool for every subsequent disposal of that token. For more on bridge classification, see is bridging crypto taxable in the UK.
The S104 pool doesn't know where you bought
This is the core reason you cannot use separate tools for exchange and DeFi activity. The Section 104 pool for ETH includes every ETH acquisition you have ever made, regardless of source:
Combined S104 pool example
1. Buy 1 ETH on Coinbase at £1,800 — pool: 1 ETH, cost £1,800
2. Swap 2,000 USDC → 1 ETH on Uniswap (ETH at £2,000) — pool: 2 ETH, cost £3,800
3. Receive 0.1 ETH staking on Lido (ETH at £2,200) — pool: 2.1 ETH, cost £4,020
Average cost per ETH: £4,020 ÷ 2.1 = £1,914.29
Sell 1 ETH on Kraken for £2,500. Gain = £2,500 − £1,914.29 = £585.71
Coinbase only: gain = £2,500 − £1,800 = £700 (wrong)
The £114 difference here is from just three transactions. A user with hundreds of DeFi interactions feeding the same S104 pool will see much larger errors in any single-platform report.
CARF changes everything for exchange users
Under the Crypto-Asset Reporting Framework (CARF), from January 2026 UK exchanges report your transaction data directly to HMRC. Coinbase, Kraken, and other FCA-registered platforms share buy, sell, and income records automatically.
Here is the implication: HMRC will have your exchange data. If your Self Assessment only reports exchange gains but you also have DeFi activity on the same assets, there is a mismatch. HMRC knows you hold ETH (from exchange data). If your Section 104 pool does not include DeFi acquisitions and disposals, the gain calculations on your return will not align with the asset holdings they can see.
The CARF + DeFi gap
Exchanges report to HMRC. DeFi does not. If you only report exchange gains, HMRC may query why your declared disposals do not match the asset acquisitions they can see. A complete return requires both exchange and DeFi data reconciled into one calculation.
Income tax — staking, rewards, and yield
Both exchange and DeFi income are taxed identically: as miscellaneous income at your marginal rate (20%, 40%, or 45%). The difference is detection.
Exchange income is explicit — Coinbase labels it "Coinbase Earn" or "Staking Income". DeFi income is harder. Lido stETH rebases happen at the protocol level without generating a transaction in your history. CRV gauge rewards require decoding the Minter contract logs. LP fee collection on Uniswap V3 is embedded within position management calls.
All income events — exchange and DeFi — enter the Section 104 pool as acquisitions at FMV. This increases your cost basis, which reduces future capital gains. For a full breakdown, see DeFi income vs capital gains.
Gas fees — the DeFi-only allowable cost
When you trade on an exchange, the spread and trading fees are baked into the execution price. These are not separately deductible for CGT purposes.
DeFi transactions are different. You pay gas fees in ETH (or the network's native token) for every on-chain interaction. HMRC treats gas fees as an allowable cost, which means they directly reduce your taxable gain on each disposal.
For active DeFi users, cumulative gas fees over a tax year can be significant — hundreds or even thousands of pounds. Failing to include them as allowable costs means overpaying CGT. This is an advantage DeFi users have that exchange-only users do not.
Why you need one tool for both
The fundamental constraint is that HMRC matching rules operate across all platforms. The same-day and B&B rules match disposals against acquisitions regardless of where they happened. Sell ETH on Coinbase and buy ETH on Uniswap on the same day? Same-day rule applies. Sell on Kraken and swap USDC→ETH on Curve within 30 days? B&B rule applies.
No tool that only sees one side can detect cross-platform matching. And since the Section 104 pool is per-asset (not per-platform), every acquisition and disposal must be in the same calculation for the average cost to be correct.
How ChainTax reconciles exchange + DeFi
ChainTax is built for users who trade across both exchanges and DeFi. The workflow:
- Import exchange CSVs. Upload from Coinbase, Binance, or Kraken. The format is auto-detected and every transaction is classified for HMRC.
- Connect DeFi wallets. Add your wallet addresses across Ethereum, Arbitrum, Optimism, Base, and Polygon. 28 protocol-specific classifiers handle the on-chain activity.
- Unified calculation. All sources feed the same Section 104 pools. Same-day and B&B matching operates across exchange and DeFi transactions. Gas fees are included as allowable costs.
- HMRC-ready output. SA108 boxes 13.1–13.8 are computed from the combined data. Every disposal shows the matching rule used, the S104 pool state, and the full gain working.
You can try the classification engine for free using the transaction explainer — paste any transaction hash to see how it is classified.
Get your complete crypto tax picture
Import your exchange trades and connect your DeFi wallets. ChainTax reconciles everything into one HMRC-compliant calculation — correct Section 104 pools, cross-platform matching, and SA108 boxes auto-filled. Free for up to 75 transactions.
This article is for informational purposes only and does not constitute tax, legal, or financial advice. Tax rules can change, and individual circumstances vary. Always consult a qualified tax adviser before filing your Self Assessment return. HMRC guidance referenced: CRYPTO22000 (capital gains on disposals), CRYPTO61000 (DeFi income), CRYPTO10100 (definition of cryptoassets), s104 TCGA 1992, s106A TCGA 1992 (B&B rule). CGT rates and annual exempt amounts from GOV.UK (2024/25 and 2025/26 tax years).
Related articles
DeFi Income vs Capital Gains — How HMRC Taxes Staking, Swaps, and Yield
Staking rewards are income. Swaps are capital gains. Aave deposits are neither. The classification determines your tax rate, your tax form, and your cost basis — and most tools get it wrong.
Do I Need to Report Crypto to HMRC? The Complete Checklist
Sold, swapped, staked, or earned crypto? You probably need to report it — even if you lost money. Here's exactly when HMRC requires a Self Assessment return, what triggers reporting, and the thresholds that catch most DeFi users.
SA108 Crypto 2024/25 — Boxes 13.1 to 13.8 and Box 51 Explained
2024/25 is the first year with dedicated crypto boxes on SA108 — and it's a split year for CGT rates. Every box explained with worked examples, including the Box 51 adjustment that nobody else covers.