Count mismatch, when our number differs from your source
Checked against app build 2026-08-26-01-41 on 2026-08-26.
Your old tool or exchange says one transaction count, gains.tax shows another. Before assuming loss, know that the app printed the explanation at import time.
Why does gains.tax show a different transaction count?
Because the causes come in five kinds, and the first one accounts for most of them.
One, rows versus tax events, the usual answer. Files count lines, the engine counts events that matter to tax. Transfers pair two rows into one linked move, money-only rows are set aside, swaps count both sides. The import report prints this as a literal equation, source rows in, tax events out, difference itemised, covered fully in the reconciliation count.
Two, refused rows, each shown with its reason. Rows the import could not honestly use, deleted inside the source app, bank money only, no sent or received amount, are listed at import with the reason per row, first rows open by default. Nothing was guessed at. Re-open Import and read the refusal list, the count difference is usually sitting right there, and the wording of each refusal is in error messages.
Three, duplicates were caught. Overlapping exports deduplicate at preview, so two files describing the same trade become one row here while your source counted both, see duplicates.
Four, quarantined spam. Spam airdrop tokens moved to quarantine leave the counts and the computation entirely. Koinly and friends often keep counting them.
Five, a scan hit its page cap. Very deep on-chain histories read in passes, and the app says so when it happens, rescan to continue, already-held rows are skipped, see wallet scanning.
Where do I look first?
At the import report, not at the totals.
The reconciliation line and the refusal list were both printed when the file went in, and between them they explain almost every difference without any further investigation. Re-open Import and read them before doing anything else.
What if the difference survives all five checks?
Then something real may be missing, and the direction of the difference tells you where to go.
If your source’s count is still higher than ours, go to missing acquisitions, because units the engine never saw acquired overstate your tax. If the count is lower here than it should be, check the refusal list again before anything else.