Moonscape
Synthetic client data · Ready for CPA review
Workpaper version 1.5

Sample Crypto Tax Reconstruction Workpaper

Tax year 2024 · US Federal. This is the workpaper a reviewing CPA receives — the full eight-page document is below as a PDF. The portfolio is entirely synthetic, but every figure on this page is pipeline output, not an illustration.

Taxable disposals
1,037

2,707 Form 8949 lot rows

Net gain
$59,341.25

Crypto-only, before other items

Exception flags
753

89% auto-matched · 3 need review

Cost-basis method
FIFO

Universal scope · USD · UTC

Sample report — synthetic portfolio. Not a filed return and not tax advice; final classifications remain subject to CPA review.
MoonscapeReviewer summary · Tax year 2024

What came back

Six sources, 13,613 raw records across all years, 3,680 of them normalized into 2024 transactions. 180 duplicates removed. What a reviewer wants to know first is not the gain — it is how much of this the software decided on its own, and how loudly it said so.

Ready for review 753 exception flags across 750 unique records, in 4 categories — 673 (89%) auto-matched or auto-resolved; 3 wrapped conversions genuinely need manual review. None silently assigned cost basis or tax treatment.
Engagement statistics
6
Sources imported
13,613
Raw records (all years)
3,680
Normalized 2024 txns
180
Duplicates removed
1,037
Disposals (2,707 lot rows)
240
Income transactions (2024)
292
Transfer candidates
4
Exception categories
Tax summary — 2024Figures are pipeline-computed, not placeholders
CategoryProceeds (gross)Cost basisGain/(loss)Disposals (8949 rows)
Short-term$281,677.56$244,831.39$36,457.16713 (2,031)
Long-term$93,425.07$70,401.99$22,884.09335 (676)
Total capital disposals$375,102.63$315,233.38$59,341.251,037 (2,707)
Other income (staking, mining, airdrops)$7,550.74240

All 1,037 disposals are included, reported as 2,707 Form 8949 lot rows — one sale consuming three FIFO lots is three rows on the form. 11 disposals span both terms, so the term counts sum to 1,048.

Methodology. Cost basis FIFO · scope Universal (pooled across all wallets and exchanges) · reporting currency USD · timezone UTC. Price source is the exchange-reported trade price wherever the transaction has a direct fiat or stablecoin leg, with a CoinMarketCap historical snapshot as fallback for cross-asset and on-chain legs that carry no quoted price. Acquisition fees are capitalized into basis; disposal fees are deducted in the gain and proceeds are stated gross.
MoonscapeSource & completeness · Tax year 2024

The file we were handed

Four wallets, two exchanges, one of them dead. The FTX export stops in October 2022, which is the interesting part: there is no 2024 activity on it, but the cost basis it establishes is what makes the 2024 lots computable at all.

SourceConnectionCoverageRecords (2024)Records (all years)Status
CoinbaseAPIJan 2022 – Dec 20241,6875,319Complete
FTXHistorical exportJan – Oct 202202,365Collapsed Nov 2022 — basis history retained
Ethereum Wallet 1On-chainJan 2022 – Dec 20245811,759Complete
Ethereum Wallet 2On-chainJan 2022 – Dec 20244351,227Complete
Solana WalletOn-chainJan 2022 – Dec 20246111,819Complete
Bitcoin WalletOn-chainJan 2022 – Dec 20243661,124Complete
MoonscapeExceptions · 4 categories

What needed a decision

Every flag below is something the pipeline could have quietly guessed at and did not. 89% carry a proposed treatment ready for bulk approval under whatever policy the firm has already agreed; the rest are named individually with the reason.

5
Historical reconstruction
Earlier disposals (2022–2023) whose cost basis had to be rebuilt from the FTX export before the 2024 lots could be valued. Resolved, and the basis carries forward — not excluded.
292
Wallet-to-wallet transfers
Transfer candidates, all 292 matched with a proposed self-transfer treatment on a confidence hierarchy. Ready for bulk approval.
379
Wrapped-token conversions
376 matched to the proposed non-disposal rule on a clean 1:1 value match. 3 genuinely need a reviewer to look at them.
77
Incomplete records
Missing timestamp, asset, quantity or fee on the source row. Mostly informational; each one is listed with the field that is absent.
Three wrapped conversions did not clear the 1:1 value match and are the only records in the engagement that a reviewer has to form a view on unaided. They are listed with both readings and the effect of each on page 4 of the workpaper.
MoonscapeAudit trail · One traced disposal

One disposal, traced end to end

Every number on the filing forms traces back to a specific source row. This is a single LINK sale that consumed three separate FIFO acquisition lots — three rows on Form 8949 for one transaction, which is the shape that gets lost when a tool reports at the transaction level instead of the lot level.

Form 8949 result · 17.952826 LINK sold in one transaction, matched to 3 FIFO lots · disposed Feb 11, 2024, all short-term · proceeds $446.87 gross · basis $416.90 · disposal fee $0.67, deducted in the gain · gain $29.29 as the three lot rows report it.
Acquisition lots (FIFO order)
LotAcquired (UTC)Trade IDQuantityCost basisDays held
12023-03-31T07:00:15Z5152141c…6.712905 LINK$135.65316
22023-04-02T19:01:13Z572ed124…5.344832 LINK$145.16314
32023-04-02T23:35:04Zfef5e229…5.895089 LINK$136.09314
Total17.952826 LINK$416.90
Disposal — single sell, 3 matched lots
LotQuantityAllocated proceedsCost basisFeeGain/(loss)
16.712905 LINK$167.09$135.65$0.25$31.19
25.344832 LINK$133.04$145.16$0.20($12.32)
35.895089 LINK$146.74$136.09$0.22$10.42
Total17.952826 LINK$446.87$416.90$0.67$29.29

Lot 2 shows a loss because that specific lot was bought slightly higher than lots 1 and 3 — FIFO still allocates it its own true cost rather than an average. The three lot gains sum to $29.29; computed on the unrounded disposal it is $29.30. The one-cent difference is lot-level rounding at two decimals, and the lot rows are what reach the form. That note is in the workpaper too — a reviewer should never have to discover a rounding convention by tying out a total themselves.

MoonscapeNext step

If you want this on a real file

Two routes, both of which keep you clear of §7216 — no client data has to leave your firm for either one.

Run your own portfolio through it
Most crypto CPAs have one worth untangling, and it is your own data, so there is no 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 — generated for this demonstration and run through the real import and tax pipeline. It is not any client's data and never was. 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 report — synthetic portfolio · Workpaper v1.5Not a filed return · Not tax advice