How HMRC calculates the cost of shares you sell — and how Omnicogi handles it automatically.
Under HMRC's rules (Section 104 of TCGA 1992), all shares of the same class in the same company that you hold are treated as a single pool. Each time you buy more, the new cost is added to the pool. Each time you sell, the allowable cost is calculated as a proportional slice of the current pool — not the original purchase price.
This is fundamentally different from US-style FIFO (first-in, first-out) cost basis. Many UK investors — and even some broker platforms — incorrectly use FIFO, which produces the wrong CGT figure.
Building the Section 104 pool for Company XYZ
| Event | Qty | Price | Pool qty | Pool cost | Avg cost |
|---|---|---|---|---|---|
| Buy Jan 2021 | +100 | 200p | 100 | £200.00 | 200p |
| Buy Aug 2022 | +200 | 250p | 300 | £700.00 | 233.3p |
| Sell Mar 2023 | −100 | 300p | 200 | £466.67 | 233.3p |
Using FIFO instead would give an allowable cost of £200 (the first 100 shares) and a gain of £100 — a different and incorrect CGT figure for UK purposes.
Every time you add a buy transaction, Omnicogi updates the Section 104 pool for that security: adding the quantity and cost, and recalculating the average. Every sell automatically uses the current pool average to compute the HMRC-compliant chargeable gain (or allowable loss).
This happens for all GIA portfolios. ISA and SIPP portfolios don't generate CGT, so pooling is tracked but CGT isn't calculated for those wrappers.
HMRC's bed-and-breakfast rules override the Section 104 pool in two situations:
Omnicogi applies these rules in priority order: same-day first, 30-day second, Section 104 pool last. This matches the HMRC-prescribed matching order.