Crypto tax calculator

Paste your history and this works the gain out the way HMRC does, applying the same day rule, the 30 day rule and the section 104 pool in the right order. It also tells you which rows are wrong and how to fix them, which is usually where the money is.

Nothing is uploaded anywhere. The whole calculation runs inside your browser, there is no account and no email.


Value is the sterling value of the whole transaction, not the unit price. A swap of one coin for another is a disposal of what you gave up, so use the Trade type or enter it as a sell and a buy at the same value. Moving coins between wallets you own is not a disposal, so record both sides as transfers and the calculator will leave your cost basis alone.

Paste a CSV or add transactions above, then choose Calculate.

Disposals0
Proceeds£0
Allowable costs£0
Gains£0
Losses£0
Net position£0
Income received in crypto£0

£

Decides how much of the gain sits in the 18% band.

£

Only losses you have already notified to HMRC count.
Brought forward losses used£0
Annual exempt amount£0
Taxable gain£0
Taxed at 18%£0
Taxed at 24%£0
£0
estimated capital gains tax, 2026 to 2027

Why a crypto gain is not proceeds minus what you paid

HMRC does not let you choose which coins you sold. Every disposal is matched against your acquisitions in a fixed order set out in CRYPTO22200 and sections 105 and 106A of the Taxation of Chargeable Gains Act 1992. Same day first, then anything bought in the 30 days after the disposal, then the section 104 pool, which holds every remaining unit of that token at one weighted average cost.

The 30 day rule runs forwards, not backwards, which catches nearly everybody out. It exists so that selling and immediately buying back cannot manufacture a loss, and it applies whether or not that was your intention.

The rules this calculator applies

Pooling and matching. One section 104 pool per token, across every wallet and exchange, because the pool follows the beneficial owner rather than where the coins sit.

NFTs are not pooled. CRYPTO22200 treats them as separately identifiable, so no matching rules apply to them at all. Most calculators pool NFTs with everything else, which can invent a loss that is not there.

Crypto for crypto is a disposal. Swapping one token for another disposes of the one you gave up at its sterling value, even though no pounds moved.

Income becomes your cost. Staking, mining and airdrop receipts are taxed as income on the value at receipt, and under section 37 that same value is the base cost of the tokens, so you are not taxed twice on it.

Allowable costs. Per CRYPTO22150 and section 38, the sterling consideration, transaction fees, and professional or valuation costs are deductible. Mining equipment and electricity are not, and neither is anything already deducted against profits for Income Tax.

Gifts. To a spouse or civil partner it is no gain no loss under section 58, and they inherit your cost. To anyone else it is a disposal at market value under section 17, even though you received nothing. To a charity it is no gain no loss under section 257.

Lost or stolen coins. Losing a private key is not a disposal, because per CRYPTO22400 the tokens still exist. You need a negligible value claim before any loss can be crystallised, and the calculator says so rather than quietly writing the loss off for you.

Forks. New tokens get their own pool, with the original cost split on a just and reasonable basis under section 52(4).

The checks are the point

Most reports we are asked to correct are not wrong because the arithmetic failed. They are wrong because the data underneath was incomplete, and the software priced it anyway. A transfer between two of your own wallets, with only one side exported, gets read as a sale on one end and a nil cost purchase on the other. The pool loses its cost basis and every later disposal looks more profitable than it was.

So this tool refuses to guess. Where a row cannot be placed it says so, tells you what the consequence is, and tells you what to add. That is the same review we do by hand when someone sends us a finished report and asks whether the number is real.

What it does not do

It does not fetch market prices, so the sterling value of each row is yours to supply. It does not connect to exchange APIs, which would mean holding your API keys on a server, and a browser cannot call those endpoints directly in any case. It assumes you are investing rather than trading, a question decided by the badges of trade. It uses England, Wales and Northern Ireland thresholds. Treat the working paper as a properly reasoned computation on the data you gave it, not as a filed return.

Rates used are 2026 to 2027, a £3,000 annual exempt amount, 18% and 24%, with the basic rate band ending at £50,270 of total income.

Flagged something you cannot fix?

Missing cost basis and unpaired transfers are exactly what we rebuild. Send the working paper over and we will tell you what the pool should actually look like.

Get a free review