CleanUp · Missing transactions

Fix negative holdings and missing transactions

A negative holding almost always means a buy, a transfer or a whole wallet is missing. Other tools keep calculating anyway. Tax offices do not accept a report with negative balances.

Why do balance discrepancies appear?

Typical causes: a forgotten old exchange, a CSV only for 2024 even though you bought in 2021, a transfer to a wallet you never connected, or a chain that was never imported. The tool then sees a sale without inventory — and the balance goes negative.

What this means for tax

Without a full history you get phantom gains: sales without a source look like income from nowhere. Transfers between your own wallets become taxable trades. That is exactly what tax offices should not see. A consistent balance is the prerequisite for FIFO, LIFO and the one-year holding period.

How chain.report finds the gaps

1. Show the discrepancy per wallet

CleanUp compares expected and imported holdings. You see which wallet and which asset is short — not just a global error.

2. Reload the missing source

Depending on the gap you connect the forgotten exchange via API, upload an older CSV or enter the missing deposit. chain.report matches transfers between your own wallets automatically once both sides are present.

3. Close the balance, then export

Only when holdings add up is the report internally consistent. That is the basis for the tax office not asking where the coins came from.

FAQ on balance discrepancies

Does the difference really have to be zero?

Yes, before you file. A permanently negative holding means buys or transfers are missing. That is the first thing an audit notices.

The exchange is already gone — how do I import history?

You often still have email exports, tax CSVs or on-chain data from the withdrawal address. CleanUp shows which asset and period is missing so you can search with intent.

Are transfers between my own wallets taxable?

No, if both sides are fully imported and recognised as self-transfers. If one side is missing, it is wrongly treated as a sale.

Fix these problems next

Close the gaps instead of forcing the report

Start by importing every exchange and wallet. CleanUp shows where the balance breaks — and what you still need to reload.

Start for free