In the UK, there are three main rules for calculating capital gains when you cash out or dispose of crypto. The rule you use depends on the timing of your transactions:
Same-day rule
Bed and breakfasting (30-day) rule
Section 104 pooling rule
In this article, you’ll find a detailed explanation and example for each rule.
Same-day rule
If you buy and sell the same cryptocurrency on the same calendar day, your gains or losses are calculated using the cost and sale prices from that day. In particular:
if you make multiple purchases or sales of the same coin on the same day, group all buys together and all sells together
the cost basis and sale price are calculated as a weighted average if transactions occur at different times during the day
If you sell more than you bought on the same day, the excess must be calculated using the next rule.
Example
Time | Type | Quantity and Asset | Transaction Value | Unit Price |
9am | BUY | 0,50 BTC | £ 10.000,00 | £ 20.000,00 |
2pm | BUY | 1,00 BTC | £ 19.000,00 | £ 19.000,00 |
4pm | SELL | -1,00 BTC | £ 20.500,00 | £ 20.500,00 |
7pm | SELL | -0,50 BTC | £ 10.500,00 | £ 21.000,00 |
Applying the same-day rule, the calculation will be:
weighted average cost
[(0,50 × £20.000,00) + (1,00 × £19.000,00)] / 1.5 = £19.333,33weighted average sale price
[(1,00 × £20.500,00) + (0,50 × £21.000,00)] / 1.5 = £20.666,67gain/loss
(1,50 × £20.666,67) – (1,50 × £19.333,33) = £2.000,02
Bed and breakfasting (30-day) rule
Yes, your explanation is mostly correct and clear, but it can be made even more precise:
the 30-day rule (also called "Bed and Breakfasting") applies when you first sell crypto and then buy the same crypto within the following 30 days
the cost basis for the coins you sold is matched to the cost of coins you buy within that 30-day window, in the order you purchase them (FIFO)
If you sell more than you buy within 30 days, the remaining amount is calculated using the next rule.
Example
Date | Type | Quantity and Asset | Transaction Value | Unit Price |
01 Jan | BUY | 4,00 BTC | £ 40.000,00 | £ 10.000,00 |
05 July | SELL | -0,50 BTC | £ 10.000,00 | £ 20.000,00 |
10 July | BUY | 1,00 BTC | £ 19.000,00 | £ 19.000,00 |
12 July | BUY | 1,00 BTC | £ 20.500,00 | £ 20.500,00 |
The sale on 05 July does not meet the criteria for the same-day rule, so we need to check if the 30-day rule applies. In this case, it does, because there is a purchase of ETH within the 30 days following the sale.
The gain for the 0.5 BTC sold is based on the 10 July purchase:
(0,50 × £ 20.000,00) – (0,50 × £ 19.000,00) = £ 500,00
Section 104 pooling rule
If neither of the above rules applies, you must use the Section 104 pool. This works like an average cost basis: you pool all your purchases together and calculate an average cost per crypto.
Example
Date | Type | Quantity and Asset | Transaction Value | Unit Price |
21 May | BUY | 1,00 ETH | £ 1.500,00 | £ 1.500,00 |
12 June | BUY | 0,25 ETH | £ 250,00 | £ 1.000,00 |
04 July | BUY | 2,00 ETH | £ 2.200,00 | £ 1.100,00 |
02 Aug | SELL | -0,25 ETH | £ 450,00 | £ 1.800,00 |
09 Sept | BUY | 2,00 ETH | £ 2.800,00 | £ 1.400,00 |
To calculate the gain or loss from the sale on 2 August, we need to apply the Section 104 pooling rule because:
no ETH was purchased on the same day as the sale
no ETH was purchased within the following 30 days
Therefore, the calculation is as follows:
ETH pool before the sale
3,25 ETH, total cost £ 3.950,00 (average price £ 1.215,38 per ETH)
gain/loss
£ 450,00 (sale proceeds) – (0,25 × £1.215,38) = £450,00 – £303,85 = £146,15
new pool after the sale
3 ETH, average price £1.215,38 per ETH
How the Rules Interact
All three rules can apply to the same set of transactions, in this order: Same-Day Rule, then 30-Day Rule, then Section 104 Pool.
Example
Date | Type | Quantity and Asset | Transaction Value | Unit Price |
10 Jan | BUY | 2,00 BTC | £ 44.000,00 | £ 22.000,00 |
2 Feb | BUY | 2,00 BTC | £ 42.000,00 | £ 21.000,00 |
15 Sept | BUY | 1,00 BTC | £ 20.000,00 | £ 20.000,00 |
15 Sept | SELL | -3,00 BTC | £ 63.000,00 | £ 21.000,00 |
22 Sept | BUY | 1,00 BTC | £ 19.000,00 | £ 19.000,00 |
30 Oct | BUY | 2,00 BTC | £ 9.000,00 | £ 18.000,00 |
Let's try to calculate the capital gain/loss generated by the sale of 3,00 BTC on 30 September:
Check if same-day rule can be applied
On 15 September, there is both a purchase and a sale of BTC, but only 1 BTC is bought and 3 BTC are sold, so we must apply the same-day rule only to 1 BTC.
Proceeds of 1 BTC: £ 63.000,00 / 3,00 BTC = £ 21.000,00
Cost of 1 BTC: £ 20.000,00 (the cost of the buy on the same day)
Gain on 1 BTC: £ 21.000,00 - £ 20.000,00 = £ 1.000,00
We still have to calculate the capital gain for 2 BTC sold on 15 September.
Check if 30-day rule can be applied
On 22 September, 1 BTC was bought within the 30 days following the sale, so we can apply the 30-day rule to 1 of the 2 BTC we still need to calculate the capital gain on.
Proceeds of 1 BTC: £ 63.000,00 / 3,00 BTC = £ 21.000,00
Cost of 1 BTC: £ 19.000,00 (the cost of the buy in the 30-day window)
Gain on 1 BTC: £ 21.000,00 - £ 19.000,00 = £ 2.000,00
We still have to calculate the capital gain for 1 BTC sold on 15 September.
Apply the section 104 pooling rule to the rest
The BTC pool is made up of the buys that happened before the sale, in this case 2 BTC on 10 January and 2 BTC on 2 February, for a total of 4 BTC.
Total cost of the pool: £ 44.000,00 + £ 42.000,00 = £ 86.000,00
Average base cost: £ 86.000,00 / 4 BTC = £ 21.500,00 per BTC
Loss on 1 BTC: £ 21.000,00 - £ 21.500,00 = £ -500,00
Total capital gain
To calculate the final capital gain or loss, you need to add together the results obtained from applying all three rules.
Sum of all the results: £ 1.000,00 + £ 2.000,00 + £ -500,00 = £ 2.500,00