CoinTracking February 8, 2026 | 12 min read

CoinTracking Tax Report: Understanding and Fixing Warnings

Robert Thorn, Co-Founder TX-Partner
Robert Thorn

Co-Founder & Documentation Specialist · · Updated:

★★★★★ Trustpilot
500+ Cases of experience
8Years Professional experience
Understanding and Fixing CoinTracking Tax Report Warnings

Key Takeaways

  • ✓ In the tax report you essentially see only one warning, in CoinTracking's own wording: "This sale is not linked to any purchase transaction." The cost basis is then 0 and the gain is reported too high
  • ✓ Behind it are two symptoms: negative balances and missing transactions. Neither is visible in the tax report itself, only through other reports
  • ✓ The two symptoms have five typical causes: missing exchange and wallet imports, incorrect transaction types, scam tokens and wrong tickers, DeFi errors, duplicates
  • ✓ It's not the report that calculates wrong, the data behind it is incomplete or misclassified
  • ✓ You don't fix the report directly: you fix the crypto documentation, then the report is correct on its own

You generate your CoinTracking tax report and see warnings: unrealistically high gains and sales without a cost basis. The first instinct is that CoinTracking is at fault. But the cause almost always lies deeper, in the transaction history itself. This article shows you what the warning really means, which two symptoms sit behind it, which five causes trigger them, and how to fix them one by one.

01 The Problem: What the Warning in the Tax Report Really Is

CoinTracking generates the tax report based on your imported transaction data and calculates gains and losses automatically. If the report contains warnings, it almost never means the tool calculates wrong. It calculates correctly, but only with the data that's available.

How to find the warnings. They sit in the Gains and Losses Report (capital gains report). Open the tax report, scroll to this report, and at the top you'll see "Warnings in this report: X" plus a "Show warnings" button. The warning itself has no name of its own. You recognise it by the warning symbol in the "Cost basis in EUR" column, which then shows 0.00. CoinTracking's legend describes the warning exactly like this:

This sale is not linked to any purchase transaction.

For each entry you see the date, coin, amount, the affected exchange or wallet, and the gain the warning causes. That's the entire visible part: a sale with no acquisition costs against it, so the full proceeds count as gain. What you don't see directly in the report are the actual problems behind it: negative balances and missing transactions. We'll look at those next.

Concrete Example:

Your tax report shows 250,000 euros in profit, although that can't be true. The cause: three exchanges your coins ran through were never imported. Through the resulting unlinked transfers, the cost basis is lost. When such a tranche is later sold, CoinTracking calculates with 0 euros acquisition cost for lack of a purchase transaction, and every sale becomes full profit. The fix isn't to adjust the report, but to add the missing imports.

02 The Two Symptoms Behind the Warning

At first glance there's only one kind of warning: a sale without a cost basis. What differs isn't the message, but what triggers it. In practice there are two symptoms. Understand these two, and you understand how the numbers in the report come about.

Symptom 1: Negative balances

You hold amount X of a coin, but CoinTracking sees an outgoing amount Y that is larger than X. This can happen directly on an exchange when not all historical purchases are imported. It can also arise on a wallet, for example when DeFi transactions weren't imported correctly, and carry over via a transfer to other accounts, then with wrong acquisition costs. Which exchange or wallet holds a negative balance is shown in the "Balance per Exchange" report.

Symptom 2: Missing transactions

A deposit or withdrawal that CoinTracking cannot match to a counterpart. This only happens when one of the two sides isn't imported: a transfer from Bitpanda arrives in MetaMask, but the MetaMask address is missing in CoinTracking. The tool sees only the withdrawal, not the deposit. Verifiable under Analysis → Checks → Missing Transactions.

The shared consequence: cost basis 0

Both symptoms lead to the same result. CoinTracking finds no matching purchase transaction for the sold tranche and calculates with 0 acquisition cost. Nothing offsets the proceeds, so the full sale price counts as gain. That's what then shows up as an inflated gain in your tax report.

Why this gets expensive at tax time. Whenever the transaction flow is broken or runs negative, it affects the crypto tax tool's calculation, differently in Germany and Austria. Important: this describes how the tool calculates with incomplete data, not how your case should be assessed for tax. The tax assessment belongs to your tax advisor.

  • In Austria, crypto-to-crypto trades are generally not taxable. With a cost-basis-0 warning, the tool interprets the swap as a sale against a zero basis and reports a gain that wouldn't actually be taxable.
  • In Germany, the acquisition date and acquisition costs are lost along with the cost basis. The holding period can then no longer be calculated, and a sale that would actually be tax-free (held beyond the holding period) is reported as taxable.

Not just a tax issue. Missing transactions become a compliance problem on a different level when banks ask about the source of funds: anyone who can't show how coins moved between wallets and exchanges has a gap that no longer has anything to do with the tax report. A complete transaction history solves both at once.

03 The Five Causes Behind the Symptoms

The two symptoms almost always have the same causes. There are five that show up in nearly every transaction history. By far the most common: missing or incompletely imported sources. For a compact overview of all typical CoinTracking error patterns, see our CoinTracking hub.

Cause 1: Missing Exchange and Wallet Imports

By far the most common cause, and it affects exchanges as much as wallets. Two mechanics overlap. First: anyone who has traded on multiple exchanges over the years (Binance, Kraken, Coinbase, Bitpanda, Gate.io) often forgets older accounts, and just as often forgets to import all their own wallets. Second, and this is less well known: exchanges themselves often don't deliver all historical data via the API, nor all the transaction types possible on the platform. What you see in the exchange's web interface doesn't necessarily land 1:1 in CoinTracking. If a purchase transaction is missing, CoinTracking then sets the acquisition costs of the affected coins to zero.

Cause 2: Incorrect Transaction Types

CoinTracking distinguishes between Deposits, Withdrawals, Trades, Mining, Staking, and many other types. If a type is recognised wrongly, the calculation is off. Typical cases from practice: a withdrawal is interpreted as a (tax-free) spend. A deposit isn't recognised as an airdrop. A staking reward lands as a plain deposit among the unlinked transactions. Correctly classifying every transaction is crucial, because a wrong classification breaks the pairing logic and thus creates missing transactions.

Cause 3: Scam Tokens and Wrong Tickers

Here the problem lies in the ticker, not the value. CoinTracking can assign a scam token called "USDC" the same value as the real USDC. The two can only be told apart by the contract address, and the scam token has to be recognised and deleted. The same applies to token versions: CoinTracking often holds several variants of a token (Pepe2, Pepe3, Pepe4). If you receive a reward from a liquidity pool and the tool uses the wrong variant, false income arises, or the token flow breaks because a transfer from USDC to USDC2 isn't recognised as belonging together.

Cause 4: DeFi Not Correctly Captured

LP tokens, yield-farming rewards, bridge transfers between chains, bridge swaps, and wrapped tokens: DeFi activities generate complex transaction chains that aren't always depicted correctly in a blockchain import. With bridges in particular, CoinTracking often fails to recognise the two halves of a movement as a pair: you send USDC from Ethereum to Polygon, and in CoinTracking it lands as two separate transactions, on one side as USDC, on the other under a different token name. No automatic pair. Missing or misassigned DeFi transactions are thus a common source of negative balances and missing transactions, which then lead to false gains.

Cause 5: Duplicates Through Multiple Imports

Anyone who imports the same exchange multiple times, or uses API and CSV at the same time, creates duplicates. Duplicate purchases double the cost basis, duplicate sales double the gain. CoinTracking has duplicate detection, but it doesn't catch every case, especially with slightly different timestamps or when the exchange changes its internal trading IDs. Then the tool doesn't recognise that the same transactions are already imported. Duplicates also cause a deposit to exist twice and therefore go unlinked, or the same withdrawal to appear twice, which again creates negative balances.

The Logic at a Glance

Visible in the report

One warning: a sale without a cost basis (0), and therefore a gain that's too high.

Two symptoms behind it

Negative balances and missing transactions. Visible via "Balance per Exchange", the Transaction Flow Report, and the "Missing Transactions" check.

Five causes underneath

Missing exchange and wallet imports, incorrect transaction types, scam tokens and wrong tickers, DeFi errors, duplicates.

04 How to Fix Warnings and Tax Report Errors

The error never sits in the report, it sits in the data, whether a missing import, a wrong classification, or a CSV import error. So you work from diagnosis to cause, not the other way round.

Step 1: Export the Warnings

Export the warnings from the Gains and Losses Report (CSV or Excel). For each entry you need: which coin, which amount, which exchange or wallet, which date, and the gain reported. This list is your reference to measure progress after corrections.

Step 2: Diagnosis 1, find negative balances

Under Analysis → Checks → Transaction Flow Report you see, per coin, inflows, outflows, the resulting balance, and when a balance went negative. Via "Balance per Exchange" you also see which exchange or wallet holds the affected coin in the negative. Together, they pin down where and from when the problem arises. More on the causes of negative balances.

Step 3: Diagnosis 2, find missing transactions

Check under Analysis → Checks → Missing Transactions whether there are still unlinked transfers for the coin with the warning. If so, use on-chain research to clarify whether an exchange or wallet is missing or whether only the classification is wrong. More on this in the article about missing transactions in CoinTracking.

Step 4: Fix the cause

Depending on the finding, a different solution applies:

  • Missing exchanges or wallets: import them and reconstruct the history.
  • Incorrect transaction types: if they show up in the "Missing Transactions" report, use on-chain analysis to determine the right type and add it.
  • Scam tokens and wrong tickers: mark and delete them in the Spam Center, and assign consistent, correct tickers.
  • DeFi errors: as with transaction types, analyse on-chain and classify correctly, add missing steps manually and document them.
  • Duplicates: reconcile API and CSV imports and remove duplicate entries.

One rule from practice across all five: always work with the data imported by the tool, or with official CSV exports straight from the exchange. Manual entries are the last resort, not the first. Anyone who overwrites manually builds the next error into the next API re-sync. When the source is added, CoinTracking usually reclassifies correctly on its own.

Step 5: Regenerate the report and verify

Regenerate the report and compare it with your list from Step 1. Have the warnings disappeared? Are the gains plausible? If not, repeat the diagnosis for the remaining entries.

The process in brief:

1.

Export the warnings

Note coin, amount, exchange/wallet, date, and the reported gain.

2.

Diagnosis: negative balances

Transaction Flow Report and "Balance per Exchange": where and from when does the balance go negative.

3.

Diagnosis: missing transactions

"Missing Transactions" check plus on-chain research: is a source missing or only the classification.

4.

Fix the cause

Import sources, correct types, clean up scam tokens, classify DeFi, remove duplicates.

5.

Regenerate the report

Compare numbers with your list from Step 1, solve remaining entries iteratively.

05 Scam Tokens in the Tax Report

Scam tokens aren't a core symptom like negative balances or missing transactions, they're more like noise in the report. But this noise often causes great uncertainty: when an otherwise tax-free inflow like an airdrop suddenly shows several million, it's usually because the wrong ticker was used and CoinTracking assigns a wrong market price. That's why the topic belongs here, even if it's rarely the main cause.

Why Scam Tokens Are Dangerous

The real problem is the value and ticker assignment. A scam token that imitates a real ticker is given its market price. With a handful of tokens that's manageable, but when dozens of such tokens land in your wallet, each with thousands of units, the fictional amounts in the report add up. CoinTracking doesn't automatically distinguish a real token from an imitated one, that only works via the contract address.

How to Distinguish Real Airdrops from Scams

Real airdrops come from projects you actively used: Uniswap, Arbitrum, Jupiter, Hyperliquid, and the like. They have a traceable distribution criterion. Scam tokens, however, appear unsolicited, often have no functioning smart contract, and their ticker imitates known projects. A quick check: Is the token listed on CoinGecko or CoinMarketCap? Does the project have an active community? If not, it's most likely a scam.

Two Solutions in CoinTracking

  • Mark the contract as scam: in the Spam Center, mark the contract as scam. CoinTracking then removes the token from the tax calculation entirely. The cleanest way when the token is clearly a scam.
  • Correct or rename the ticker: set the correct ticker or rename it (e.g., to SCAM_tokenname). This cleanly separates the token from the real position.

06 The Logic Chain: Report Is Not the Cause

To sustainably solve tax report errors, understanding the dependency between the three levels helps:

The Sequence:

1.

Crypto Accounting

The crypto documentation in the crypto tax tool: all exchanges, wallets, DeFi activities. The foundation for everything.

2.

Tax Calculation

CoinTracking calculates gains and losses based on the available crypto documentation. The tax report is the result.

3.

Compliance

The tax return is based on the report. If the crypto accounting is faulty, everything after it is faulty.

Anyone wanting to correct the tax report must correct the crypto accounting. The report is just the output. The input, namely the transaction history, determines the result. There's no shortcut.

Correcting a faulty report means correcting the transaction history. Not the report.

07 What Warnings Mean for Your Tax Assessment

Warnings in the CoinTracking tax report aren't a pure software issue, they have direct tax-law consequences. Anyone who submits a flawed report to the tax authority reports wrong figures and, with unresolved warnings, often ends up worse off than necessary.

Concrete risks from unresolved warnings:

Finding Tax Impact Risk
Cost basis 0 (sale without purchase) Fictional inflated gains in report Excess tax burden or correction by tax authority
Negative Balances Incomplete transaction history Estimation by the tax authority
Missing Transactions Non-traceable fund flows Supplementary requests from tax authority
Scam token / wrong ticker Fictional taxable or tax-free inflows Tax on non-existent value

Especially critical since DAC8 became active in January 2026: Crypto exchanges automatically report transaction data to tax authorities. The tax authority can compare reported data with your tax return. If the CoinTracking tax report doesn't match DAC8 reports, a supplementary request from the tax authority is only a matter of time.

08 When Professional Help Makes Sense

Many tax report warnings can be solved independently with the steps described above. But there are cases where complexity quickly rises:

  • Hundreds of warnings across multiple coins and years
  • DeFi activities on multiple chains with LP tokens, bridges, and wrapped assets
  • Closed exchanges where export is no longer possible
  • Years-postponed documentation that must now be caught up
  • Tax authority inquiries requiring reliable documentation

TX-Partner corrects crypto accounting, not the report. The result is a clean tax report as a consequence of clean data. No symptom treatment, but cause correction.

Tax report warnings in CoinTracking can in most cases be fixed yourself with some patience. When complexity rises, when data from closed exchanges is missing, or DeFi activities go beyond what the tool can handle, Robert or Johannes will look at it in the free Data Check and give an honest assessment of where you can keep going with the tool and where professional rework makes sense.

Robert Thorn

Co-Founder & Documentation Specialist

Robert Thorn is Co-Founder of TX-Partner. Brings experience from over 500 documented crypto portfolios, from simple Bitcoin trading to six-figure DeFi setups across multiple chains and years. Closes the gap between raw data and clean documentation for tax and banks.

Ready?

Get the tax report clean.

30 minutes that make the difference.

Book Data Check 30 min · Free · No commitment

500+ cases of experience · 15+ years of crypto experience

Frequently Asked Questions About CoinTracking Tax Reports

A warning in the Gains and Losses Report means a sale is not linked to any purchase transaction. CoinTracking then sets the cost basis to 0 and reports the full proceeds as gain. The cause almost always lies in the transaction history (missing imports or misclassification), not in the report itself.
It appears as a warning symbol in the "Cost basis in EUR" column, described in the legend as "This sale is not linked to any purchase transaction." CoinTracking finds no matching purchase transaction for the sale and calculates with 0 acquisition cost. Behind it sits one of two symptoms: a negative balance or a missing transaction.
Two ways: mark the contract as scam in the Spam Center (the token is removed from the calculation entirely) or correct the ticker. The key is to spot a scam token that imitates a real ticker (for example a fake USDC) via its contract address, otherwise CoinTracking assigns it the real market price.
No. The report is generated from the transaction data. To correct it, you correct the crypto documentation: import missing exchanges and wallets, link transfers, adjust classifications, clean up scam tokens.
Anyone who submits a report with cost-basis-0 errors reports gains that are too high. Since DAC8 (January 2026), tax authorities automatically reconcile exchange-reported data. Discrepancies can lead to supplementary requests, additional assessments, or estimations.