Crypto Tax Calculator
Capital gains tax on disposals, staking rewards as income, and the HMRC matching rules. Estimate your UK crypto tax bill with a simplified Section 104 pool average: a starting point for planning, not a figure to file.
Crypto tax in the UK — the short version
The UK taxes cryptocurrency in two main ways: Capital Gains Tax (CGT) on most transactions when you dispose of your crypto, and Income Tax when you receive crypto as a reward or benefit.
Capital Gains Tax applies when you: Sell crypto for GBP, swap one crypto for another (yes — crypto-to-crypto is a disposal), pay for goods or services with crypto, or gift crypto to anyone except your spouse (spousal transfers are no-gain-no-loss). You pay CGT at 18% (basic rate) or 24% (higher rate) on gains above £3,000 AEA per tax year.
Income Tax applies when you: receive staking or mining rewards (taxed at their sterling value when received: trading income if the activity amounts to a trade, otherwise miscellaneous income), airdrops received in return for a service or other action (not ones received for doing nothing), or DeFi returns that have the nature of income (some DeFi returns are capital instead). These count as income in the year received.
The matching rules: same-day, 30-day, Section 104
Same-day rule (first): Disposals on a given day are matched against acquisitions on the same day first. If you bought 1 BTC for £30,000 and sold 0.5 BTC for £20,000 on the same day, the sale is matched with half of that day's purchase (cost £15,000), so the gain is £5,000.
Bed-and-breakfast / 30-day rule (second): Any remaining disposal quantity is next matched against acquisitions in the following 30 days. This stops a sale followed by a quick buy-back ("bed and breakfasting") from creating a gain or loss for tax. If you sold 1 BTC on 1 Feb and bought 1 BTC on 15 Feb, the 15 Feb purchase is matched to the 1 Feb disposal, not the other way around.
Section 104 pool (third): Everything else goes into a pooled average. The "pool" tracks total GBP cost ÷ total units held. When you dispose, you use the pool's average cost basis. This is the most common situation. Over time, as you buy and sell, the pool's cost per unit changes.
Crypto-to-crypto swaps are disposals
Many people mistakenly think crypto tax only applies when you cash out to GBP. That is wrong. When you swap ETH for USDC on a DEX, that is a disposal of the ETH at its GBP market value on the day of the swap. You crystallise a gain or loss. The USDC is then acquired at that same GBP value. This applies to DeFi swaps, exchange trades, and atomic swaps. Keep detailed records of every swap.
When you owe income tax instead (or as well)
Staking rewards: When you stake 1 ETH and earn rewards, each reward is income at its GBP value on the date received. If you stake on a platform and they send you tokens daily, each day is a separate income receipt. Unless your activity amounts to a trade, HMRC taxes it as miscellaneous income, less any appropriate expenses.
Mining: Mined tokens are taxed at their sterling value when you receive them. HMRC decides whether mining is a trade by looking at the degree of activity, organisation, risk and commerciality; if it is not a trade, the rewards are miscellaneous income, less any appropriate expenses. Report them on a Self Assessment tax return.
Airdrops: An airdrop received without doing anything in return, and not as part of a trade, is usually not income when it arrives, but selling it later can still give rise to a chargeable gain. An airdrop received in return for, or in expectation of, a service (completing a task, for example) is income when received.
DeFi returns: HMRC says a return from lending or providing liquidity is income if it rewards you for a service (an agreed rate, paid periodically, for example) and capital if it comes from the growth in value of an asset you own. It depends on how the arrangement is structured, so take advice for large positions.
Your inputs
Crypto tax breakdown
| Item | Amount |
|---|---|
| Total sale proceeds | £0 |
| Less: total cost basis (pool average) | £0 |
| Gross gain on disposals | £0 |
| Less: Annual Exempt Amount (£3,000) | £0 |
| Plus: other gains this year | £0 |
| Taxable gain | £0 |
| Staking/mining income | £0 |
| Airdrop income (service) | £0 |
| Total income (crypto) | £0 |
| Total income (all sources) | £0 |
| Basic rate band left for gains | £0 |
| Taxable gains in basic band @ 18% | £0 |
| Tax at 18% | £0 |
| Taxable gains in higher band @ 24% | £0 |
| Tax at 24% | £0 |
| Total CGT | £0 |
| Income tax on crypto income (at your marginal rate) | £0 |
| TOTAL TAX (CGT + INCOME) | £0 |
Worked example: the three matching rules
Here's how HMRC's matching rules work in practice. Suppose you own ETH and transact as follows:
1 Jan: Buy 1 ETH at £1,500 cost (pool: 1 ETH, £1,500 cost)
15 Feb: Sell 0.5 ETH for £2,000 (same-day rule: no same-day buy, so move to 30-day rule)
20 Feb: Buy 0.3 ETH at £1,800 per ETH, so £540 (30-day rule: the 15 Feb sale matches here first)
30 Mar: Sell 0.2 ETH at £1,800 per ETH, so £360 (no same-day or 30-day buy; use pool)
Cost allocation: The 15 Feb sale of 0.5 ETH matches the 20 Feb buy of 0.3 ETH (30-day rule). So 0.3 ETH @ £1,800 cost = £540 cost, gain = (£2,000 × 0.3 / 0.5) − £540 = £1,200 − £540 = £660. The remaining 0.2 ETH @ 15 Feb uses the pool: average cost was (£1,500 / 1) = £1,500 per ETH initially, so 0.2 ETH = £300 cost, gain = (£2,000 × 0.2 / 0.5) − £300 = £800 − £300 = £500. After 15 Feb the pool holds 0.8 ETH with a cost of £1,200. The 0.3 ETH bought on 20 Feb never joins the pool, because the 30-day rule has already matched it to the 15 Feb sale. So the 30 Mar sale of 0.2 ETH uses the pool average of £1,500 per ETH: cost = 0.2 × £1,500 = £300, gain = £360 − £300 = £60. The pool is left with 0.6 ETH and a cost of £900.
In this example the gains are £660 + £500 + £60 = £1,220. Always track every transaction in date order.
This tool uses the Section 104 pool average for all disposals — it does not apply same-day or 30-day matching. For an actual tax return, you must manually match each disposal and apply the three rules in order. Use detailed transaction records or crypto tax software. Any disposal in the year must match against acquisitions in this order: (1) same day, (2) next 30 days, (3) pool. Misapplying the rules can lead to under-reporting of gains and penalties from HMRC.
Record-keeping: you need every transaction
Keep records of every purchase, sale, swap, reward, and airdrop. For each, note the date, amount, value in GBP at the time, and counterparty (exchange, wallet, etc.). Many exchanges provide export functions; use them. For off-exchange or DeFi activity, manually log transactions from blockchain explorers or your wallet. GOV.UK says to keep Self Assessment records for at least 22 months after the end of the tax year, or at least 5 years after the 31 January filing deadline if you are self-employed.
Claiming losses — use them to offset gains
If you sold crypto at a loss, the loss is real from a CGT perspective. Losses are set against your gains in the same tax year first. If you have more losses than gains, the excess can be carried forward to future years (once claimed, which you can do up to 4 years after the end of the tax year of the loss), but never against income. Losses brought forward are only used to bring a later year's gains down to the £3,000 annual exempt amount.
Lost, stolen, or worthless crypto
If a token you still own becomes worthless (the project dies, for example), you can make a "negligible value" claim. It treats the whole pool of that token as sold and immediately bought back at the value you state (which can be nil) on the date you state, so the loss is crystallised. HMRC says the same claim could be made if you lose your private keys and there is no prospect of recovering them. Theft is different: HMRC does not treat theft as a disposal, because you still own the tokens and have a right to recover them, so victims of theft cannot claim a capital loss. Keep evidence, and take advice before making a claim.
Crypto tax becomes painful when combined with many small transactions. Every swap is a taxable event. Consider consolidating DeFi positions less frequently, and always tag transactions for later reporting. Use a spreadsheet or dedicated crypto tax tool to simplify the calculation when it's time to file your return.
Sources
- HMRC Cryptoassets Manual: CRYPTO22200, pooling and the same-day and 30-day rules (updated 17 November 2025), CRYPTO21200, staking, CRYPTO21150, mining, CRYPTO21250, airdrops, CRYPTO61214, DeFi returns, CRYPTO22400, lost private keys, CRYPTO22450, fraud and theft and CRYPTO22500, negligible value (all checked 3 October 2026).
- GOV.UK, Capital Gains Tax rates, allowances and losses (2026 to 2027, checked 3 October 2026).
- GOV.UK, Income Tax rates and Personal Allowances (2026 to 2027), keeping your pay and tax records and business records if you are self-employed (checked 3 October 2026).
Not tax advice — crypto tax is evolving
HMRC's crypto guidance is still developing. The rules described here reflect current practice as of 2026/27, but tax law changes. Income tax on staking, the treatment of airdrops, and DeFi yield are still areas of interpretation. This calculator is educational. For large holdings or complex positions, consult a tax adviser or accountant who specialises in crypto. Do not file a self-assessment return based solely on this tool.
How UK Tax Drag holds itself to account
Pages are checked against the primary sources listed on each page and reviewed by the Editor; corrections are logged in the changelog. Pages are drafted with the help of AI tools (how AI is used). No affiliate revenue. No sponsored content. No paid placements.
UK Tax Drag is an independent publication by Finsolve Consulting Limited, not affiliated with or endorsed by HMRC, GOV.UK or any government body.