Koinly is the most popular crypto tax tool globally. Here's how it compares to ChainTax for UK users filing with HMRC.
Best for Simple exchange trades
Both — with a catch
Both classify exchange buys and sells correctly. But Koinly requires manual UK-mode setup, and Box 51 for 2024/25 is only auto-computed in ChainTax.
Best for DeFi activity
ChainTax
33 protocol-specific classifiers vs heuristic matching. LP positions, bridges, and staking classified correctly.
Best for HMRC compliance
ChainTax
Native Section 104, same-day & B&B matching, SA108 boxes 13.1-13.8, and Box 51 split-year CGT.
Side-by-side on the features that matter for UK crypto tax.
Exchange CSV import
Koinly
ChainTax
Exchange API sync
Koinly
ChainTax
Protocol-specific classifiers
Koinly
ChainTax
LP position handling
Koinly
ChainTax
Bridge detection
Koinly
ChainTax
Staking reward detection
Koinly
ChainTax
Confidence indicators
Koinly
ChainTax
Section 104 pooling
Koinly
ChainTax
Same-day + B&B matching
Koinly
ChainTax
SA108 box mapping
Koinly
ChainTax
Box 51 split-year CGT
Koinly
ChainTax
Show Working per disposal
Koinly
ChainTax
Tax loss harvesting
Koinly
ChainTax
NFT portfolio tracking
Koinly
ChainTax
UK-built company
Koinly
ChainTax
Both tools offer tiered pricing. ChainTax gives more transactions per tier and never charges a subscription.
| Tier | Koinly | ChainTax | |
|---|---|---|---|
| Free | 10,000 txs (no report) | 200 txs (full report preview) | Downloadable preview |
| Newbie | $49 · 100 txs | £49 · 2,500 txs (Light) | 25× more transactions |
| Hodler | $99 · 1,000 txs | £99 · 10,000 txs (Active) | 10× more transactions |
| Trader | $199 · 3,000 txs | £99 · 10,000 txs (Active) | ~3× more txs at half the GBP price |
| Top | $279 · 10,000+ txs | £99 · 10,000 txs (Active) | Same headroom, less than half the price |
| Higher volume | Plans extend above 10,000 | Concierge sync · email for quote | Quote-first, run by ChainTax |
| Currency | USD (regional pricing) | GBP (no FX surprises) | GBP-native |
Pricing as of April 2026. Koinly prices from koinly.io. ChainTax prices at chaintax.co.uk/pricing.
Where the differences actually matter — real scenarios, real outcomes.
What happens when you interact with DeFi protocols
Uniswap V3 LP add
Koinly
Capital GainOften classified as a sale — creates phantom capital gain on tokens deposited into the pool.
ChainTax
LiquidityClassified as cost basis change — deposited tokens exit S104 pool, LP token enters. No taxable event.
Hop bridge (ETH to Arbitrum)
Koinly
Capital GainMay be classified as a disposal of ETH and acquisition of new ETH — creates a taxable event where none exists.
ChainTax
TransferClassified as non-taxable transfer. Cost basis carries across chains automatically.
Lido staking (ETH to stETH)
Koinly
Mostly correctUsually correct for the initial stake, but rebase rewards are hard to detect from transaction history alone.
ChainTax
DisposalInitial stake correctly classified as capital gain — ETH→stETH is a token swap (disposal of ETH, acquisition of stETH) under HMRC guidance (CRYPTO40100), not a simple deposit. Rebase detection is a known limitation for both tools.
Aave supply / withdraw
Koinly
Usually correctGenerally correct for simple deposit/withdraw cycles.
ChainTax
Transfer — High confidenceClassified as non-taxable transfer at high confidence. aToken interest is a known limitation for both tools.
Verdict: For simple swaps, both tools work. For LP positions, bridges, and complex multi-step DeFi interactions, ChainTax's protocol-specific classifiers produce more accurate results.
How each tool applies UK-specific tax calculations
Cost basis method
Koinly
Must configureSupports Section 104 as an option alongside FIFO, LIFO, and others. UK users must select the correct method.
ChainTax
S104 nativeSection 104 is the only method — it's what HMRC requires. No risk of selecting the wrong one.
Same-day rule
Koinly
BasicImplemented, but the interaction with B&B matching and S104 can produce different results than HMRC guidance.
ChainTax
Full HMRC orderApplied first in strict HMRC priority order: same-day, then 30-day B&B, then S104 pool. Working shown for each.
2024/25 split-year CGT
Koinly
Not supportedDoes not compute Box 51. Users must manually split disposals by the 30 October 2024 boundary and calculate the blended rate.
ChainTax
Auto-computedAutomatically splits disposals at the 30 October 2024 boundary. Box 51 adjustment computed and included in the SA108 report.
Loss carry-forward
Koinly
SupportedSupported — carries losses to offset future gains.
ChainTax
HMRC-preciseSupported — losses reduce net gain to the annual exempt amount only, not below, matching HMRC rules.
Verdict: Koinly supports UK tax rules but was built for a global audience. ChainTax was built exclusively for HMRC from day one — Section 104, same-day, B&B, and Box 51 are native, not bolted on.
If you're only on Coinbase, Binance, Kraken — here's what changes
Coinbase report vs. actual HMRC gain
Koinly
Must configureKoinly supports Section 104 but requires you to configure UK mode. Default cost basis method selection errors — many UK users file with FIFO or LIFO by mistake because the default differs by region.
ChainTax
S104 nativeSection 104 is the only method — matches what HMRC requires automatically. No region setting, no chance of wrong-method filing.
Multi-exchange S104 pooling (Coinbase + Binance)
Koinly
CorrectKoinly pools across exchanges — handled correctly when both are imported.
ChainTax
TransparentSame pool behaviour. Plus every disposal shows which source exchange fed the pool, and the per-disposal Section 104 snapshot before and after.
CARF data reconciliation (2027+)
Koinly
Meets specKoinly will update for CARF-format reports when HMRC publishes the schema. No special reconciliation view planned.
ChainTax
RoadmapChainTax is designing a CARF-matched view that highlights discrepancies between what HMRC received and what you are filing. Roadmap item for 2027 filing season.
Box 51 split-year CGT (2024/25)
Koinly
Not supportedKoinly does not auto-compute Box 51. Whether you are on Coinbase, DeFi, or both, you manually split disposals at the 30 October 2024 boundary and calculate the blended rate.
ChainTax
Auto-computedAuto-computed regardless of exchange/DeFi mix. Box 51 is on the PDF report ready to transcribe.
Verdict: Exchange-only users get more than 'both handle this well' — Box 51 is missing in Koinly across the board, S104 is easier to get wrong when the tool lets you pick, and Show Working still matters when your accountant asks how a £10k gain was computed.
What you and your accountant can verify
Per-disposal breakdown
Koinly
Summary onlyShows gain/loss per transaction. No detail on which matching rule was applied or how the cost basis was derived.
ChainTax
Full workingEvery disposal shows: matching rule (same-day, B&B, or S104), the pool snapshot before and after, the price source, and a confidence rating.
Price sources
Koinly
OpaqueUses market data but does not expose which source was used per transaction.
ChainTax
Source + confidenceEvery event shows its price source (DefiLlama, CoinGecko, or manual) and whether the price is high, medium, or low confidence.
Accountant review
Koinly
Trust-basedThe accountant receives a report with final numbers. Verifying the methodology requires trusting the tool.
ChainTax
Fully verifiableThe accountant can trace every disposal from raw transaction to final gain — matching rule, S104 pool state, price source. Nothing is a black box.
Verdict: If your accountant needs to sign off on your return, Show Working is the difference between "I trust this tool" and "I can verify every line."
Already set up on Koinly? You don't need to start from scratch.
Go to Transactions → Export → Download CSV. This includes all your exchange and on-chain history.
Upload the CSV on the Import page. ChainTax auto-detects the Koinly format and separates on-chain from exchange rows.
On-chain transactions are re-fetched and classified by our 33 protocol-specific classifiers. Exchange rows are imported directly. One unified report.
No tool is perfect for everyone. Here's where Koinly has the edge.
Koinly connects directly to 700+ exchanges via API — no CSV export needed.
ChainTax supports CSV import from Coinbase, Binance, and Kraken — the three largest exchanges used by UK traders. Most users import once per tax year.
Koinly identifies unrealised losses you could harvest before the tax year ends.
ChainTax tracks all your S104 pools and realised losses, so your accountant can advise on harvesting strategy. A dedicated feature is planned.
Koinly tracks NFT acquisitions and builds cost basis for NFT disposals.
ChainTax tracks ERC-721 and ERC-1155 (single + batch) cost basis via FIFO lot matching, with manual entry for pre-sync / LooksRare / X2Y2 holdings. OpenSea, Blur, and Treasure marketplace transactions are classified automatically.
If you file taxes in multiple countries, Koinly supports 20+ jurisdictions.
ChainTax is built exclusively for HMRC — which means UK-specific features like Box 51 and SA108 are native, not compromises for multi-jurisdiction support.
It depends on your activity. For exchange-only traders, both tools handle buys and sells correctly. For DeFi users, ChainTax has 33 protocol-specific classifiers that correctly identify LP positions, bridges, and staking — where Koinly often misclassifies. ChainTax is also built natively for HMRC rules including Section 104 pooling, same-day and B&B matching, and SA108 Box 51.
Koinly generates a tax report compatible with SA108, but does not auto-compute Box 51 (the split-year CGT rate adjustment for 2024/25). ChainTax automatically calculates Box 51, splitting disposals by the 30 October 2024 rate change boundary.
Yes. You can export your transaction history from Koinly as a CSV and import it directly into ChainTax — the Koinly CSV format is fully supported. On-chain transactions from the CSV are re-fetched and classified by our engine for accuracy.
ChainTax caps self-serve at £99 per tax year (Active tier, 10,000 transactions); higher-volume portfolios use the Concierge service. Koinly caps at $279 per tax year (Pro tier, 10,000+ transactions, ≈£221 at current FX). Both tools price per tax year — Koinly plans remain valid for ten years, ChainTax purchases never expire — but ChainTax includes 25× more transactions at the entry tier (2,500 vs 100) and matches the top tier at less than half the price, in GBP. Koinly charges in USD with regional localization.
Yes. ChainTax supports CSV imports from Coinbase, Binance, and Kraken. The format is auto-detected, and every trade, reward, and conversion is classified automatically.
ChainTax handles both in one report. Import your exchange CSVs and connect your DeFi wallets — all transactions feed into the same tax engine with unified Section 104 pools, HMRC matching, and a single SA108-ready report.
Also compare
Export your Koinly CSV, upload it to ChainTax. On-chain rows get re-classified by 33 deterministic classifiers. Exchange rows import directly. One unified report. Free up to 200 transactions.
200 transactions free · From £49 per tax year · No subscriptions ever