Moonscape
Synthetic data · UK tax year 2025/26
Workpaper version 1.0

Sample UK Crypto Tax Reconstruction Workpaper

UK tax year 2025/26 (6 April 2025 – 5 April 2026). This is the workpaper a reviewing accountant receives — the full eight-page document is below as a PDF. The portfolio is entirely synthetic data, but every figure on this page is pipeline output, not an illustration.

Disposals 2025/26
1,079

2,996 disposal rows

Net gain before AEA
£15,333.37

Crypto only, before other capital items

Miscellaneous income
£5,407.52

236 receipts · 0 unpriced

Matching & currency
S104 · GBP

Same day, then 30 day, then Section 104 · UTC

Sample workpaper — synthetic data. Not a filed return and not tax advice; final treatment remains subject to the reviewer's decision.
MoonscapeReviewer summary · Tax year 2025/26

What came back

Six sources, 13,686 source rows normalised across three tax years (6 April 2023 to 4 April 2026), of which 2025/26 is the sample year. Pre-2025/26 history is loaded so the Section 104 pools carry into the year rather than starting empty. 180 Coinbase rows arrived twice and were de-duplicated on trade id. Two source rows were excluded at import, and they are named here rather than left silently absent.

Prepared for review Seven exception categories for decision, 85 flagged rows, every one attributed — the pre-send validator ran against this year and returned 0 failures, 6 informational items and 2 explained. No row was given a cost, a price or a treatment it did not have in the source.
Engagement statistics
6
Sources imported
13,686
Source rows (three years)
1,079
Disposals in 2025/26
180
Duplicate rows de-duplicated
2,996
Disposal rows behind them
236
Income receipts (2025/26)
7
Exception categories
2
Rows excluded at import
SA108 figures — 2025/26Prepared for the reviewer, not ready to file
FigureAmount
Number of disposals1,079
Disposal rows behind them2,996
Disposal proceeds£286,329.79
Allowable costs — acquisition£270,594.48
Allowable costs — incidental costs of disposal£401.94
Gains before losses£36,820.88
Losses in the year(£21,487.51)
Net gain£15,333.37
Annual exempt amount applied(£3,000.00)
Taxable gain after the annual exempt amount£12,333.37
Losses carried forward£0.00

All 1,079 disposals are included, reported as 2,996 disposal rows — a sale matched across several acquisitions is several rows, because each same-day, 30-day and Section 104 leg carries its own cost. The traced sale below is twelve. Acquisition cost and incidental costs of disposal are stored in separate columns and both are shown, so the reviewer decides how they are combined on the form. Net gain is positive, so the £0.00 carried forward is a computed result, not an unfilled line.

Miscellaneous income — staking and airdrops. 236 receipts, £5,407.52 in 2025/26. None unpriced, none valued at an approximate price. Reported separately from capital gains and not netted against them. One further airdrop, TXN-41629, was pooled as a capital acquisition rather than recognised as income, so it is not in this figure.

Method. Matching same day, then 30 day, then Section 104, in that statutory order · pooling Section 104, across all wallets and exchanges · reporting currency GBP · timezone UTC. Every leg is valued from the stored dated fiat rate row for its own date, at full precision, and printed to the penny. 3,232 priced 2025/26 rows, none approximate and none stale.
MoonscapeSource manifest · Tax year 2025/26

The file we were handed

Four wallets and two exchanges, one of which stops. The FTX export ends on 28 February 2024, which is the interesting part for a reconstruction: nothing it holds is disposed of inside 2025/26, but the cost it establishes flows into the Section 104 pools the 2025/26 disposals draw on. A reconstruction that started at 6 April 2025 would price those disposals against an empty pool.

SourceConnectionCoverageSource rowsRe-imported as fileStatus
CoinbaseAPI + CSV export2023-04-06 – 2026-04-045,352180De-duplicated
FTXHistorical export2023-04-06 – 2024-02-282,3620Stops mid-history
Ethereum Wallet 1On-chain2023-04-06 – 2026-04-041,7630Continuous
Ethereum Wallet 2On-chain2023-04-06 – 2026-04-041,2330Continuous
Solana WalletOn-chain2023-04-06 – 2026-04-031,8510Continuous
Bitcoin WalletOn-chain2023-04-10 – 2026-04-041,125040 receipts unmatched

Row counts are of normalised source transactions across all three tax years, not of disposals: 13,686 in total, 6 April 2023 to 4 April 2026. Being fully imported is a statement about coverage of the period, not about whether every row carries enough evidence to be taxed. Those are separate questions and the pack answers them separately.

MoonscapeExceptions · 6 categories

What needed a decision

Every item below is something the pipeline could have quietly guessed at and did not. Four of the pack's six categories are shown here; the register in the workpaper carries all six, each with the evidence behind it, the handling we propose, and a decision column that is deliberately blank. A row that says matched means two records were tied to each other. It does not mean a treatment was approved.

15
Missing acquisition history
15 BTC disposals priced against an exhausted Section 104 pool, carrying nil allowable cost and £3,416.20 of gain between them. Traces to 40 BTC receipts with no acquisition record, which starve the single cross-exchange pool. Reported at nil cost rather than at an assumed cost, and listed row by row in the pack.
2,882
Same-day and 30-day matches
2,882 of the 2,996 disposal rows match an acquisition on the same day or within the following 30 days; the remaining 114 draw on the Section 104 pool. The order is statutory, not chosen. One sale, TXN-48255, consumes all three rules across twelve legs and is traced leg by leg below.
2
Rows excluded at import
TXN-42481 sell of 214.876173 MATIC, Ethereum Wallet 1, 15 Mar 2026 · TXN-53163 sell of 277.100401 MATIC, Ethereum Wallet 1, 31 Jan 2026. Neither has a resolvable offline price, so neither carries a price, a Section 104 pool entry or a taxable event, and neither contributes proceeds, cost or gain to any figure here. Both need client evidence. A third scenario row, the ARB airdrop TXN-41629 of 120.794087 units, was priced at £14.99 and pooled as a capital acquisition with no income recognised — an open treatment question, not an exclusion.
94
Incomplete source rows
78 rows carry no timestamp and were excluded at preprocessing; 16 more carry a zero quantity on both sides. Both counts are the pipeline’s own. Excluded rather than estimated — a row with no date cannot be given one without inventing it — and nothing here moves a 2025/26 figure.
Nil cost is what the evidence supports, not an assumption we are comfortable with. If the client can produce the acquisitions behind those 40 BTC receipts, the pool is re-based and every capital gains figure above moves. That is the single largest open item in the pack.
MoonscapeAudit trail · One traced disposal

One disposal, traced end to end

Every figure traces back to a specific source row. This is a single ARB sale that consumes all three UK matching rules in the statutory order — twelve legs for one sale, which is the shape that gets lost when a tool reports at the transaction level instead of the leg level.

Matching result · 1,094.601276 ARB sold on Coinbase, 28 May 2025 at 02:35:14 UTC, trade id 5ed59305… · matched under Same Day, then Bed & Breakfast, then Section 104 across 12 legs · proceeds £2,028.35 · allowable cost £1,471.67 · incidental costs of disposal £3.03 · gain £553.65.
Acquisition legs — first three of twelve, in matching order
RuleAcquisitionAcquired (UTC)QuantityAllowable costDays after sale
Same DayTXN-431842025-05-28 08:0051.413111 ARB£95.550
Bed & BreakfastTXN-527552025-05-30 23:35136.813680 ARB£160.142
Bed & BreakfastTXN-457032025-06-02 02:0439.269120 ARB£74.445
All 12 legs1,094.601276 ARB£1,471.67
Disposal — single sale, 12 matched legs
RuleQuantityProceedsAllowable costFeeGain/(loss)
Same Day51.413111 ARB£95.27£95.55£0.14(£0.42)
Bed & Breakfast136.813680 ARB£253.52£160.14£0.38£93.00
Bed & Breakfast39.269120 ARB£72.77£74.44£0.11(£1.78)
Disposal total — 12 legs1,094.601276 ARB£2,028.35£1,471.67£3.03£553.65

These are the first three of twelve legs; the remaining nine are set out on page 6 of the workpaper. Two of the three show a loss because those acquisitions cost slightly more than the sale realised — each same-day and 30-day leg is costed at its own acquisition cost rather than at an average, while the two Section 104 legs share the pooled average of 1.178557 £/ARB. Proceeds − allowable cost − incidental costs = gain holds on every leg above, and on all 2,996 disposal rows in the year, with 0 rows failing and a maximum residual of 0.0000. That note is in the workpaper too — a reviewer should never have to discover a convention by tying out a total themselves.

MoonscapeNext step

If you want this on a real file

Two routes, and neither needs client data to leave your firm.

Run your own portfolio through it
Most accountants working in crypto have one worth untangling, and it is your own data, so there is no client consent question to answer. You get the same workpaper back.
Your client connects read-only themselves
They link their own accounts; nothing changes hands through your firm. You review the output.
About the data on this page. The portfolio is entirely synthetic data — generated for this demonstration and run through the real import and tax pipeline. It is not any client's data and never was, and it proves nothing about any real client's figures or about any other year. The 2024/25 figures in the pack appear only to show that the Section 104 pools carry across the year boundary. For real engagements: data is encrypted, deleted on request, and we will sign an NDA if you want one. Questions to hello@moonscape.app.
Sample workpaper — synthetic data · Workpaper v1.0Not a filed return · Not tax advice