Concepts & events

Why exchange CSVs lie

Exchange CSV exports are built for operations, not tax. The recurring errors (missing rand values, hidden swaps, mislabelled transfers) and what a defensible record looks like.

Last reviewed: · Reviewed by Johan Pretorius, Registered Tax Practitioner

Why a clean CSV can still be wrong

Exchange CSV exports feel authoritative, but they are built for operations, not tax. Relying on a raw CSV is one of the most common reasons South African crypto tax filings are inaccurate, and inaccurate is exactly what triggers a SARS query under CARF data-matching from 1 March 2026.

The recurring problems

  • Missing rand values. Many exports show only crypto amounts (e.g. "−0.1 BTC, +1.5 ETH"). Tax sits on the rand value of each leg, which the CSV often omits or quotes only in USD.
  • Crypto-to-crypto swaps under-reported. Swaps are disposals, but a CSV may record them as a single "trade" line with no gain calculated.
  • Internal transfers misread as buys/sells. Moving crypto between your own wallets is not a disposal, but CSVs from different venues can double-count or mislabel these.
  • Delisted or defunct tokens and exchanges. History from a closed exchange or a delisted token simply disappears from current exports, leaving gaps.
  • Fees and dust. Network and trading fees, and tiny dust balances, are inconsistently recorded, distorting base cost.
  • Inconsistent timestamps and time zones. Year-end disposals can land in the wrong tax year if timestamps are misread.

What good looks like

A defensible record reconciles every account and wallet, attaches a rand value to every leg on its date, classifies each event correctly, and flags gaps. Coinfig's Data Completeness Score surfaces exactly where the data is incomplete, so you close the gaps before you file, not during an audit.

Not tax advice

Reconcile your data and confirm treatment with a registered tax practitioner.

Frequently asked questions

Why are exchange CSVs unreliable for tax?
They are built for operations, not tax. They often omit rand values, under-report crypto-to-crypto swaps, mislabel internal transfers, and lose history from delisted tokens or closed exchanges.
What makes a crypto tax record defensible?
It reconciles every account and wallet, attaches a rand value to each leg on its date, classifies each event correctly, and flags gaps before filing.
How does Coinfig help?
Coinfig reconciles connected accounts and computes a Data Completeness Score that surfaces exactly where data is missing, so you close gaps before you file rather than during an audit.

Sources

Primary sources for South Africa: browse the official documents