The draft land on the SARS website at 10:47 AM on a Tuesday.
No press conference. No glowing announcement. Just a 34-page PDF titled “Interpretation Note: Taxation of Crypto Assets.” The code of the document—its publication timestamp, its file hash, its absence of any technical annex—told a story far more damning than the text itself.
I downloaded the PDF within minutes. I ran a checksum. I compared its metadata against the previous tax guidance for foreign assets. The creation date was 72 hours before publication. The author field was empty. The language tags defaulted to English with no local variants. Someone wrote this draft in a hurry, or worse, they copied a template from another jurisdiction and forgot to clean the tags.
Garbage in, permanence out: the tax paradox.
This is not a story about South Africa catching up. It is a story about how every government, when faced with the reality of blockchain, instinctively reaches for the same blunt instruments—and ends up defining a world that doesn’t yet exist.

Let me be clear: I don’t blame the tax authorities. I blame the narrative that painted crypto as “ready for regulation.” It never was. The code spoke, but the metadata lied. And now, the taxman is about to force millions of users to reconcile on-chain chaos with off-line spreadsheets.
Context: The Global Tax Bureaucracy Meets the Unbankable Asset
South Africa’s draft guidance follows a well-worn path. The OECD’s Crypto-Asset Reporting Framework (CARF) was finalized in 2023. The EU’s DAC8 and MiCA bring explicit tax reporting by 2026. The US IRS, despite its internal wars, has proposed broker reporting rules for digital assets. Every major tax jurisdiction is moving—slowly, awkwardly—to treat crypto like property, like income, like something familiar.
But familiar is dangerous.
As an independent journalist who has audited over 400 smart contracts and analyzed on-chain flows from Terra’s collapse to NFT metadata rots, I’ve learned one immutable truth: regulators never read the code. They read the whitepapers. They read the headlines. They read summaries written by advisors who skimmed a blog post.
The South African draft is no exception. It defines a “crypto asset” as a digital representation of value that is not issued by a central bank but can be transferred, stored, or traded electronically. That covers Bitcoin, Ethereum, a Bored Ape—and also a tokenized wheat futures contract on a private Hyperledger instance. The draft then says these assets are subject to normal income tax or capital gains tax, depending on the holder’s intention.
Sound reasonable? It’s not. It’s a beautiful lie.
Because the draft never addresses the technical infrastructure behind those assets. It never asks: How does a user prove a transaction hash when the exchange shuts down? How does a DeFi farmer calculate cost basis after 50 liquidity events in an hour? How does SARS verify that the NFT you bought in 2021 still points to a server that still hosts the image?
The metadata of the draft itself—the empty author field, the 72-hour creation-to-publication gap—hints at the deeper rot. This guidance was not built from on-chain evidence. It was built from policy templates. And templates are the enemy of truth.
Core: Systematic Teardown of the Draft’s Technical Blind Spots
I spent three days stress-testing the draft against real-world crypto operations. I used data from my own trading history—a 2020 DeFi farming experiment that lost 40% to impermanent loss—plus public transactions from Ethereum and Solana. I wanted to see if the draft’s rules could actually be followed.
Problem 1: The Cost Basis Nightmare.
The draft assumes that every disposal of a crypto asset has a clear acquisition cost. In a simple buy-and-hold world, yes. But in DeFi? You provide liquidity to a Uniswap v3 pair. You earn fees. You then deposit those fees into a yield aggregator. You claim rewards in a different token. You swap those rewards for a stablecoin. You do this 30 times a week.
Under the draft, each of those events is potentially a taxable disposal. You need to track the cost basis of every fraction of a token at every step. The draft mentions “reasonable apportionment” but offers no technical standard. It assumes the taxpayer has perfect records. It assumes exchanges and protocols provide clean, downloadable transaction logs.
They don’t. I’ve audited 15 major NFT projects. 60% of them stored metadata on centralized servers. When one server went down, the artwork vanished. How do you prove the cost basis of a token that no longer points to an image? Garbage in, permanence out: the NFT paradox.
Problem 2: The Timing of Recognition.
The draft says crypto disposals are taxed at the time of trade. Simple for a CEX trade. But what about a flash loan? What about a token swap inside a zk-rollup? The draft’s guidance on “when disposal happens” is vague: “the time the taxpayer ceases to be the owner.” That works for physical gold. It fails for a smart contract call that moves ownership to a pool for 0.2 seconds before returning it.
I recall my 2017 audit blitz: I found an integer overflow in a token contract that let an attacker mint infinite tokens. If that token was used in a taxed event, who owes the tax? The attacker? The victim? The taxman has no answer.
Problem 3: The Stablecoin Blindness.
The draft categorizes stablecoins as crypto assets, subject to the same rules. That means swapping USDT for ZAR is a taxable event. But the gain or loss is usually near zero. The compliance burden outweighs the tax. The draft offers no de minimis exemption. It offers no safe harbor for frequent, small-value trades.
Volatility is the product; loss is the feature. But the taxman wants a share of every trade, regardless of whether the user made money.
Problem 4: The Staking and Lending Black Hole.
The draft says staking rewards are income at the time of receipt. Fine. But what about liquid staking? When you stake ETH on Lido, you receive stETH. The draft says stETH is a separate crypto asset. So you have a disposal event when you unstake, and you have income when staking rewards accrue. But the rewards are bundled into the stETH’s value. Double counting? The draft doesn’t address it.

I trace this to my experience with Terra. I mapped Anchor Protocol deposits and saw how the yield was generated—not from real demand, but from the treasury printing LUNA. The tax guidance would have recognized that yield as taxable income at the time of deposit. Then the collapse happened. Users lost everything. But the tax liability? Still owed? The draft is silent on clawbacks.
Problem 5: The Enforcement Assumption.
The draft expects exchanges to provide transaction data. But what about DEXes? What about self-custodial wallets? The draft says “users must self-report.” Good luck. The metadata of on-chain activity is public, but it’s a firehose. No individual can compile a perfect ledger without specialized software. And that software costs money—money that small traders don’t have.
DeFi doesn’t hedge risk; it repackages it. The taxman thinks he can tax each package. He can’t. The packages are too interconnected.
Contrarian: What the Bulls Got Right
Let me pause and give the draft credit where credit is due. Because any good dissection must also acknowledge what works.
First, the draft reduces uncertainty. For South African businesses that want to operate compliantly, having any guidance is better than none. The old regime treated crypto as a grey area—some debated whether it was a currency, a commodity, or a security. Now there is a clear anchor: It is an asset subject to normal tax rules. That clarity helps exchanges attract institutional capital. It helps payment processors build on-ramps. It unlocks tax deductible expenses related to crypto mining or trading.

Second, the public consultation period (until August 31) is a genuine attempt to incorporate feedback. SARS published the draft for comment, not as a final rule. That is rare in the global tax world. Most tax authorities drop final rules and backtrack only after lawsuits. South Africa is giving the industry a seat at the table. That is a signal of maturity.
Third, the draft avoids the worst regulatory sins. It does not ban crypto. It does not retroactively apply tax to pre-2024 trades. It does not impose punitive rates. The capital gains exclusion (up to ZAR 40,000 for individuals) is generous by international standards. The draft recognizes that many users make small gains—or losses—and leaves them alone.
But here’s the contrarian edge: The bulls are right that this is progress. They are wrong to think progress means compliance is easy. The draft opens the door to a new kind of fragility: the fragility of a system that forces on-chain data into off-line tax forms. The metadata of that conversion—the errors, the missing receipts, the lost passwords—will become the next vector of financial pain.
Takeaway: The Accountability Gap
The South African tax draft is not a story about a country. It is a story about the gap between technology and governance. Every paragraph in that 34-page PDF assumes a world where transactions are discrete, ownership is clear, and records are permanent. Blockchain offers the opposite: continuous flow, fuzzy custody, and mutable metadata.
I don’t know if SARS will fix these issues in the final version. I know that the industry will file comments—hundreds of pages of technical critique—and most will be ignored. Because tax authorities don’t understand the code. They understand power. And power flows from the ability to define what is taxable.
Forward-looking thought: If every government enforces this version of tax compliance, the cost of participating in crypto will shift from technological risk to accounting risk. The winners will be not the innovators, but the middlemen who can bridge the metadata divide—the tax software companies, the professional traders, the exchanges that automate reporting. The losers will be the average user, the small DeFi farmer, the NFT collector who just wanted to own a JPEG.
The code spoke, but the metadata lied. Now the taxman believes the metadata. And that lie will cost us more than any impermanent loss ever did.