Longstop Software

In development

Your broker exports in. A Capital Gains computation you can check, out.

GainPool is a desktop application for macOS and Windows that works out UK Capital Gains Tax from the transaction files your broker already gives you — applying HMRC's matching rules in full and showing the working behind every figure.

Your trading history is read and computed on your own machine.

The GainPool interface: a summary showing tax due for 2024/25, whether HMRC reporting is required and remaining planning headroom, above import slots for taxable, ISA and SIPP exports, and a tax-year breakdown of proceeds, net gain, annual exempt amount, taxable gain and the rate-band split.
The single-window interface, dark theme. Figures shown are sample data. This is the current design build; details will change before release.

How it works

Three steps, and no account to create.

There is no sign-up, no upload and no waiting on a server. You open the application, point it at your files, and read the result.

01

Export from your broker

Download your transaction history as CSV — the same file your broker already offers for your own records.

02

Add your files

Taxable accounts, ISAs and SIPPs go into separate slots, so tax-free wrappers never get pooled in with taxable holdings.

03

Analyse

See the estimated Capital Gains position, whether you have to report to HMRC, and how much more gain you could realise before the allowance runs out.

The matching rules

Applied in HMRC's order, not approximated.

Which purchase a sale is matched against decides the gain. HMRC prescribes the order, and getting it wrong is the most common way a self-calculated return goes astray.

Rule oneSame-day matching
Shares sold are first matched against any of the same security acquired on the same day, regardless of the order the trades appear in your export.
Rule twoThe thirty-day rule
Anything left over is matched against acquisitions in the following thirty days — the "bed and breakfasting" rule. Sell at a loss and buy back within the month and the loss is deferred rather than claimable, which is easy to miss and expensive to get wrong. GainPool names the trade and the amount deferred.
Rule threeThe Section 104 pool
Whatever remains comes out of the Section 104 holding: one running pool per security, carrying a single average cost that every acquisition and disposal adjusts. GainPool keeps the whole timeline, so you can see how the average cost reached the figure used against a particular sale.

Showing the working

Every figure traces back to the trades behind it.

The design test for the whole application is whether you can hand the output to an accountant and have them nod — which means no number appears without the evidence that produced it.

A disposals table listing date, security, quantity, proceeds, allowable cost and gain or loss for each sale, with a column naming the HMRC rule that matched it, followed by an open-holdings table showing pool cost and average cost per security.
Each disposal names the rule that matched it. Sample data.
Per-disposal detail
Date, security, quantity, proceeds, allowable cost, gain or loss, and which matching rule applied to that particular sale.
Pool timelines
The full acquisition and disposal history of each Section 104 holding, with the running quantity and average cost after every event.
SA108 figures
Proceeds, allowable costs, gains and losses, presented as the boxes of the Capital Gains summary pages rather than as a total you have to decompose yourself.
A computation pack
The workings as a document you can keep with your records or send to an accountant, rather than a figure copied out of a screen.
Rows it could not read
Anything unparsed is named with its line number and the reason, never quietly skipped. An import that cannot be handled correctly fails loudly.

What it handles

The awkward parts, not just the simple case.

Most of the difficulty in a real return is not the arithmetic. It is the transactions that do not fit the tidy example.

Broker formats

Built-in profiles cover Trading 212, Freetrade, Hargreaves Lansdown, AJ Bell, interactive investor, Vanguard UK, DEGIRO, Interactive Brokers and Coinbase.

Anything else goes through a column-mapping step that can save itself as a reusable profile, so an unsupported broker is a few minutes of work rather than a dead end.

ISAs and SIPPs

Gains inside these wrappers are not chargeable. GainPool recognises those exports and keeps them out of the computation, while still reporting what it saw, so a mis-filed export is visible rather than silently taxed.

Foreign-currency trades

Trades priced in a foreign currency but settled in sterling are handled explicitly rather than being converted on a guess.

Manual adjustments

Opening holdings from before your export begins, omitted reorganisations, excess reportable income, rights and scrip issues, and negligible-value claims can all be entered — so a fixable gap becomes a correct return instead of an abandoned one.

Rate changes and bands

The rate change of 30 October 2024 is applied by disposal date, and your taxable income sizes the basic-rate band so gains are split across bands correctly. Leave income blank and the higher rate is assumed — a deliberate over-estimate rather than an optimistic one.

The capital-loss ledger

Losses are tracked by the year they arose, carried forward, and flagged against the four-year window in which a claim has to be made.

Looking forward

Not only what you owe, but what you can still do.

Allowance headroom

How much of the annual exempt amount is left, and how much further gain you could realise before crossing into the higher rate.

Unrealised position

Supply current prices and see the gain sitting in each holding at today's value, against its pooled average cost.

Thirty-day warnings

Where a recent repurchase means a sale you are considering would be matched against it rather than against the pool.

Your data

The input is your entire trading history, so it stays where you put it. Files are read from disk and computed locally. There are no accounts, no telemetry, and no server of ours that receives your transactions. Saved sessions are encrypted at rest using Argon2id key derivation and AES-256-GCM, so a working file left on a laptop is not a readable list of your holdings.

One honest qualification: the application is built on the operating system's own web view component, and that component contacts its vendor on its own account, as it does for any application that embeds it. That traffic carries none of your data, but it is not nothing, and we would rather state it than claim the machine goes silent.

Scope and limits

What it deliberately does not do.

A narrow scope that is right beats a broad one that is subtly wrong. These limits are stated in the application itself, before any figures appear, and in the exported pack.

  • It does not file anything. Nothing is submitted to HMRC on your behalf.
  • It covers UK-resident individuals — not companies, trusts, partnerships or non-resident computations.
  • It covers listed shares, funds and supported crypto disposals — not property, which has its own rules and its own reporting deadline.
  • It handles explicitly supported corporate actions. Anything else has to be entered as a manual adjustment.
  • It does not cover the more specialised reliefs.
  • It is not tax advice, and it is not a substitute for an accountant where your affairs warrant one.

GainPool is in development and is not yet available to buy. It produces an estimated Capital Gains position from the records you give it. The estimate is only as good as those records: if an export is incomplete, or a holding predates it and no opening position is supplied, the figures will be wrong in ways the application cannot always detect.

Filing deadlines and allowances are set by HMRC and change. Check the current position at gov.uk/capital-gains-tax.

Availability

Where it has got to.

The tax engine is built and under automated test. The remaining work before a public release is the apparatus around it: code signing, automatic updates, licensing and support.

Broker profiles are being validated against real exports ahead of launch. If you file your own Capital Gains and would be willing to run an early build against your own broker files, we would like to hear from you — that testing is worth more to the product than any amount of internal sample data.

Get in touch about early testing