All articles
|10 min read

How UK Crypto Tax Calculators Work (and Why FIFO Fails)

Most crypto tax calculators default to FIFO, but UK CGT needs Section 104 pooling. Why that mis-states your gain, and what a UK calculator must do differently.

Searching for a crypto tax calculator is the easy part — there are dozens. Picking one that actually produces a number HMRC will accept is where most UK investors come unstuck. The tool can look polished, import your exchange history in seconds, and still hand you a capital gain that is simply wrong for the UK.

The single thing that separates a UK-correct calculator from a US-built one is the cost-basis method. HMRC requires Section 104 pooling— a weighted-average cost per token. Most crypto tax tools default to FIFO (first in, first out), because that is the US norm. Run FIFO on UK disposals and your gain is mis-stated from the first sale.

This guide is about choosing and sanity-checking the tool, not re-teaching the rule. It covers why so many calculators default to FIFO, what that does to your number, the checklist a UK-correct calculator has to satisfy, and the red flags that tell you a tool isn't ready for an HMRC return. For the mechanics of the pooling rule itself, we'll point you to the deep-dive rather than repeat it.

Why most crypto tax calculators default to FIFO

Most of the well-known crypto tax calculators were built for the United States first. Under US rules, individuals can use FIFO or specific identification to choose which lot they are selling. So the default cost-basis engine in those tools is FIFO — and the UK is handled, if at all, as a regional setting bolted on afterwards.

The UK does not work that way. HMRC treats cryptoassets as fungible and requires you to poolall your holdings of the same token into a single Section 104 holding at average cost (CRYPTO22200, s104 TCGA 1992). FIFO and LIFO are not valid methods for individuals. A calculator that quietly applies FIFO — or applies it because nobody flipped it into UK mode — is answering a question HMRC never asked.

You see the same default in the exchanges themselves. The built-in “tax report” most platforms give you is FIFO-based and per-platform. That is why Coinbase's FIFO report has to be re-pooled for HMRC before it's safe to file — the export is accurate for what it is, just answering the wrong country's rules.

What FIFO vs Section 104 does to your number

The gap isn't academic — the two methods can produce very different gains on the exact same disposal. Here is a deliberately short illustration with two acquisitions and one sale (and no same-day or 30-day matching in play, to keep it clean):

Scenario: two ETH buys, one sale

Jan: buy 1 ETH at £1,000

Jun: buy 1 ETH at £3,000

Later: sell 1 ETH for £3,500

Section 104 (HMRC-correct):

Pool average cost = (£1,000 + £3,000) ÷ 2 = £2,000/ETH

Gain = £3,500 − £2,000 = £1,500

Chargeable gain: £1,500

FIFO (US default, wrong for the UK):

Matches the oldest lot — cost £1,000

Gain = £3,500 − £1,000 = £2,500

Chargeable gain: £2,500

Same sale, £1,000 more gain under FIFO — roughly £240 of extra CGT at the 24% higher rate you don't actually owe. (In a falling market FIFO swings the other way and understates, which is just as wrong.) Across hundreds of disposals the drift compounds.

That is the whole point of pooling — one average cost, not a guess about which coin you sold. The full rule is more involved than this illustration: HMRC checks a same-day rule and a 30-day Bed & Breakfast rule before the pool, and gets the London-timezone day boundary right near 5 April. We cover all of that, with worked examples, in the Section 104 pooling rule explained and the same-day & 30-day Bed & Breakfast rules. For choosing a calculator, the takeaway is simpler: if it runs FIFO, it's running the wrong rule.

What a UK-correct crypto tax calculator must do

Pooling is necessary but not sufficient. A calculator you can file from has to handle the whole HMRC pipeline, not just the average cost. Hold any tool against this checklist:

  • Section 104 pooling at average cost— one pool per token, weighted average cost basis. Not FIFO, not LIFO.
  • Same-day then 30-day Bed & Breakfast matching — applied in HMRC's exact priority order before the pool is consulted, with the tax-year boundary computed in the Europe/London timezone.
  • Gas fees as an allowable cost— gas on an acquisition adds to the pool cost; gas on a disposal reduces the gain (CRYPTO22400). At scale this materially changes the bill.
  • Cross-platform pooling— HMRC pools the same token across every exchange and wallet you use, so your Coinbase ETH and your on-chain ETH share one pool. A tool that calculates each platform in isolation gets the cost basis wrong on anything you moved between them.
  • SA108 boxes 13.1–13.8— the dedicated cryptoasset boxes introduced for 2024/25. The output has to map onto them, not just give you a single headline number.
  • Box 51 for the 2024/25 split year— disposals before 30 October 2024 are taxed at 10%/20% and those from 30 October at 18%/24%. The calculator has to apportion by disposal date and fill Box 51, or you over- or under-pay on that year.
  • Show Working per disposal— the matching rule used, the pool snapshot before and after, the cost basis and the price source. Without it, neither you nor your accountant can check the number.

That last point is the one investors skip and accountants insist on. A figure with no derivation is impossible to defend in an HMRC enquiry. This checklist is exactly what a UK crypto tax calculator built for HMRC should do for you automatically — pooling, matching, gas, the SA108 boxes and the split-year adjustment, with the working shown for every line.

Red flags that a calculator isn't UK-ready

You can usually spot a tool that will let you down before you pay for it. Watch for these:

Red flagWhy it matters for HMRC
FIFO by default, no UK modeWrong cost-basis method — the gain is mis-stated from the first disposal
No 30-day or same-day matchingSkips the anti-avoidance rules that override the pool — loss harvesting and rebuys come out wrong
No Box 51 / split-year handlingCan't apply the 30 October 2024 rate change correctly on a 2024/25 return
Per-platform onlyWon't pool the same token across exchanges and wallets, so transfers corrupt the cost basis
No per-disposal workingA black-box total you can't verify or defend in an enquiry

Bridging and wrapping are a useful tell too. Moving USDC from Ethereum to Arbitrum, or wrapping ETH to WETH, is not a taxable disposal under HMRC rules — the cost basis carries across. A calculator that books those as sales invents phantom gains. If you want to see how the main UK tools line up on exactly these points, we maintain a side-by-side breakdown: Best Crypto Tax Software UK.

How ChainTax calculates UK crypto tax

ChainTax starts from HMRC's manual, not a US default. When you scan a wallet or import an exchange CSV, the engine:

  1. Pools at average cost, never FIFO. Every token gets one Section 104 pool, built across all your wallets and exchanges, so a transfer between platforms never corrupts the cost basis. Categorised as a disposal only when there is a genuine change of beneficial ownership.
  2. Applies the matching rules in order.Same-day, then the 30-day Bed & Breakfast rule, then the pool — with the day boundary in the Europe/London timezone so disposals near 5 April land in the right tax year.
  3. Classifies DeFi correctly.Deterministic detectors for Uniswap, Aave, Lido, Curve, 1inch and more read each transaction's intent — so LP adds, bridges, wraps and staking rewards are handled as a disposal, transfer or income as the rules require, not bucketed as phantom gains the way most crypto tax tools do.
  4. Fills SA108 and Box 51.Results map straight onto boxes 13.1–13.8, and the 2024/25 split-year rate adjustment is computed for you — the part nearly every other tool leaves you to apportion by hand.
  5. Shows the working on every disposal.The matching rule, the pool before and after, the cost basis and the price source with a confidence rating — the audit trail an accountant can sign off, and the kind of detail a single cross-platform pool needs to reconcile.

You can calculate your crypto CGT free for up to 200 transactions, including the full report preview, and only pay when you download the SA108-ready report.

See your gain calculated the HMRC way

Section 104 pooling, same-day and 30-day matching, gas as an allowable cost, SA108 boxes and the 2024/25 split-year adjustment — with the working shown on every disposal. Free for up to 200 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: s104 TCGA 1992 (pooling), s106A TCGA 1992 (Bed & Breakfast), CRYPTO22200 (Section 104 pooling), CRYPTO22400 (allowable costs). CGT rates: 18% basic / 24% higher from 30 October 2024 (Autumn Budget 2024); 10%/20% before. Annual exempt amount £3,000 for 2024/25 and 2025/26.

Related articles