If you bought, sold, swapped, earned, or spent crypto while living in South Africa, SARS wants to hear about it. Not because crypto is special, but because it isn't. SARS treats a crypto asset as exactly that, an asset, not a currency, and the ordinary income tax rules that apply to any other asset apply here too.
That single classification decision drives everything on this page. It means a profit on crypto can be taxed, a loss on crypto can sometimes be used, and "I never cashed out to my bank" is not the shield people hope it is. SARS has said plainly that taxpayers must declare crypto gains or losses as part of taxable income in the year they are received or accrued, and that failing to do so can attract interest and penalties. Declaring is not optional. It's the law, and it applies whether or not anyone has come knocking yet.
This guide is the long version. It covers how SARS decides whether your crypto is taxed as capital or as income, the rand figures for both the year you're filing now and the year that has already started, every event that counts as a disposal, a worked calculation you can follow line by line, and the reporting changes coming through CARF that most articles still get wrong. Where a topic deserves its own deep dive, there's a link to it. By the end you should know roughly where you stand and what to pull together before you file.
Capital or revenue: the question that decides your rate
SARS does not tax all crypto the same way. Before any number gets calculated, your activity has to be sorted into one of two boxes: capital or revenue. Get this wrong and you can either overpay by treating trading profit as a capital gain, or underpay and hand SARS a reason to raise penalties later.
There is no crypto-specific rule that makes the call for you. No holding period flips you automatically from one box to the other. You may have read about a "three-year rule" that turns gains capital once you've held long enough. That rule exists for certain share investments, not for crypto, so please don't lean on it here. For crypto, SARS looks at the facts of what you actually did.
The deciding factor is intention. Did you buy the asset to hold as a long-term investment, or to trade it for short-term profit? Because intention is hard to see from the outside, SARS reads it through your behaviour: how often you trade, how long you hold, and how business-like the whole operation looks. Someone who buys Bitcoin once and sits on it for four years looks like an investor. Someone running dozens of trades a week, watching charts and chasing spreads, looks like they're carrying on a trade. Most people land somewhere in between, which is exactly why this gets decided case by case rather than by a formula.
Here's how the two treatments compare.
| Aspect | Investor (capital) | Trader or earner (revenue) |
|---|---|---|
| Typical intent | Hold as a long-term investment | Buy to sell for short-term profit, or earn crypto as income |
| How gains are taxed | Capital gains tax | Full profit added to taxable income |
| Annual exclusion | R50,000 applies (2027 year) | None |
| Portion that's taxed | 40% of the net gain, after the exclusion | 100% of the profit |
| Top effective rate | 18% | 45% |
| Losses | Offset capital gains, unused portion carries forward | Treated as revenue, different rules apply |
The gap between an 18% ceiling and a 45% ceiling is the whole reason this matters. It's also why you can't just pick whichever box gives the smaller bill. SARS decides the classification from your actual conduct, and if the two of you disagree, you're the one who has to prove your version.
The numbers for 2026 and 2027
Two years of assessment matter right now, and it's easy to mix them up. The return most people are filing during Filing Season 2026 is for the 2026 year of assessment, which ran from 1 March 2025 to 28 February 2026. The year already under way, 1 March 2026 to 28 February 2027, is the 2027 year of assessment, and Budget 2026 changed one of its numbers.
Here are both years side by side so you use the right figure for the right return.
| Item | 2026 year (1 March 2025 to 28 February 2026) | 2027 year (1 March 2026 to 28 February 2027) |
|---|---|---|
| What it's for | The return you file now, in Filing Season 2026 | The year in progress, filed next season |
| Annual exclusion (individuals) | R40,000 | R50,000 |
| CGT inclusion rate | 40% | 40% |
| Maximum effective CGT rate | 18% | 18% |
| Top marginal income tax rate | 45% | 45% |
The R50,000 exclusion is worth a closer look. It's the first time this figure has moved since 2017, so if you've been filing crypto gains for a few years, this is the first bit of extra headroom you've had in a while. Two things to hold in mind. It only applies from the 2027 year onward, so the return you file now still uses R40,000. And it is not a crypto allowance. The annual exclusion is a single amount that covers all your capital gains for the year across every asset you own, so if you sold crypto, unit trusts, and a second property in the same year, they share the one exclusion between them, not R50,000 each.
The 18% figure isn't a separate rate SARS sets. It falls out of the other two numbers. For an individual, 40% of your net capital gain gets added to taxable income, and the most that income can be taxed at is 45%. Multiply the two and the highest effective rate on a capital gain works out at 18%. You only reach that ceiling if you're already in the top income bracket. Everyone below it pays less. Those are the individual figures, by the way. Companies and trusts have their own effective CGT rates, but this guide sticks to individuals throughout.
Budget 2026 also nudged the personal income tax brackets up by 3.4% for inflation, the first such adjustment since the 2023/24 year, with the primary rebate sitting at R17,820. You don't need the full bracket table to use this page. The point is just that your marginal rate is what a revenue profit, or the included portion of a capital gain, ultimately gets taxed at.
What counts as a taxable event
A "disposal" is the moment SARS is interested in. You'd expect selling to your bank account to count, and it does, but several events surprise people because no rand ever moves.
| Event | Tax treatment |
|---|---|
| Sell crypto for rand | Disposal. Capital gain or revenue profit, depending on your classification |
| Swap one crypto for another | Disposal at the rand market value of what you received at the moment of the swap, even though no rand touched your bank |
| Spend crypto on goods or services | Treated as a barter transaction, so it counts as a disposal at market value |
| Earn crypto (mining, staking, airdrops, yield, payment for work) | Income at its rand value on the day you received it. That value then becomes your base cost for the next disposal |
| Transfer between your own wallets or exchanges | Not a disposal. Nothing to tax |
That last row is where a lot of returns go wrong, and it's usually not because anyone's cheating. When you move Bitcoin from Luno to your own hardware wallet, or from one exchange to another, nothing has been disposed of and no tax arises. The trouble is that a raw exchange export often can't tell the difference between "you sent this coin to yourself" and "you sold it". Each side of the transfer shows up as a withdrawal on one account and a deposit on another, and if the two are never matched back together, software (or an accountant working from spreadsheets) can read the withdrawal as a sale and invent a gain that never happened. Matching those transfers is one of the fiddliest parts of getting crypto tax right, and it's a big reason a plain CSV download is not a tax report.
A worked example
Numbers make this concrete. Say you're an investor rather than a trader, and during the 2027 year of assessment you sell some crypto you'd held for a while. Across all your disposals for the year, your total gains minus your total base costs and losses come to a net capital gain of R120,000. Here's how that becomes a tax figure.
- Start with the net capital gain: R120,000.
- Subtract the annual exclusion for the 2027 year, R50,000. That leaves R70,000.
- Apply the 40% inclusion rate. 40% of R70,000 is R28,000. This is the amount added to your taxable income for the year.
- That R28,000 is taxed at your marginal rate. Say your income puts the next rand in a band taxed at 36%. 36% of R28,000 is R10,080.
So on a R120,000 gain, the actual tax is R10,080. Notice what happened along the way. The exclusion knocked off the first R50,000, the inclusion rate meant less than half of what remained was taxable, and only that slice met your marginal rate. That's why the effective rate on a capital gain sits well below the headline income tax rates. A trader making the same R120,000 as revenue profit would have the whole amount added to income with no exclusion at all, which is a very different bill. Same money, different box, and the box was decided long before the calculator came out.
Earning crypto: staking, mining, airdrops
Not all crypto tax is about selling. If crypto lands in your wallet as a reward rather than something you bought, SARS generally treats it as income the moment you receive it. Mining rewards, staking rewards, airdrops, interest-like yield, and crypto you're paid for work all sit here. You take the rand market value on the day it arrives, and that amount forms part of your income for the year, taxed at your marginal rate.
There's a second half people forget. The rand value you declared as income becomes the base cost of those coins. So when you later sell or swap them, you only get taxed on the movement in value since you received them, not on the full amount all over again. Get the receipt value right and you save yourself from being taxed twice on the same coins.
The mechanics differ between mining run as a business, casual staking, and a surprise airdrop, and the timing of "receipt" can get genuinely thorny for locked or vesting rewards. We've written that up on its own in Staking, mining and airdrops tax in South Africa.
SARS can see more than you think: CARF
Here's where a lot of what you've read online is either out of date or slightly wrong, and it's worth getting right because it changes the risk calculation.
South Africa has adopted the Crypto-Asset Reporting Framework, or CARF, the global standard for exchanges to report crypto activity to tax authorities. It took effect here on 1 March 2026. From that date, crypto-asset service providers with a South African footprint (exchanges, brokers, and custodial wallet providers that are resident, incorporated, or run from here) have to collect reportable information on their users and their transactions.
Collecting is not the same as reporting, and the timeline is the part most articles skip.
| Milestone | When |
|---|---|
| Providers start collecting your data | 1 March 2026 |
| First reporting period | 1 March 2026 to 28 February 2027 |
| Providers submit their first CARF returns to SARS | By 31 May 2027 |
| First automatic exchange of data between countries | September 2027 |
A couple of things follow from that. You don't file anything under CARF, so there's no new form for you. The obligation sits entirely with the service provider. And the September 2027 exchange is the part offshore users should note, because that's when data about South Africans using platforms in other participating countries starts flowing back to SARS.
Now the correction. You'll see plenty of articles claiming exchanges "already report everything to SARS". Under CARF specifically, the first provider returns don't reach SARS until 31 May 2027, so that line is overstated. What's true today is already reason enough to get your history straight. Providers have been collecting since 1 March 2026, SARS can already pull exchange data through other channels like formal information requests and its third-party data powers, and every trade you make on a South African exchange from 1 March 2026 onward is being recorded for a CARF return that is coming. The direction of travel is not in doubt. Cleaning up now, calmly, beats explaining a gap under pressure later.
The full breakdown, including who counts as a reportable person and what offshore users should do, is in SARS, CARF and crypto reporting in South Africa.
Behind on past years: the VDP
If you're reading this with a few undeclared years behind you, there's a proper route back, and it beats hoping. SARS runs a Voluntary Disclosure Programme, the VDP. If your application is accepted, the understatement penalties are waived and you get protection from criminal prosecution for the default you're disclosing. What it doesn't do is wipe the slate. The tax itself stays payable and the interest is not remitted, so this is relief from penalties, not a discount on what you genuinely owe.
The reason to move before SARS does is stark. Outside the VDP, understatement penalties can climb as high as 200% of the tax in the worst cases. Come forward first and, in exchange, they fall away.
There are conditions. The disclosure has to be voluntary, which means you get in before SARS notifies you of an audit or otherwise discovers the default. It must be full and complete in all material respects, cover behaviour of the kind the Tax Administration Act lists, not repeat a similar default from the previous five years, and it can't be a route to a refund. You also have to go back to when the default first began rather than stopping at a convenient five years. Applications go through SARS eFiling on the VDP01 form.
We walk through the process, including how to size up what you owe before you apply, in The crypto Voluntary Disclosure Programme with SARS.
Deadlines for Filing Season 2026
The season is open. Which window is yours depends on whether SARS auto-assessed you and whether you're a provisional taxpayer.
| Who | Window |
|---|---|
| Auto-assessment notices | 1 to 12 July 2026 |
| Non-provisional individuals, not auto-assessed | 13 July to 23 October 2026 |
| Provisional taxpayers | 13 July 2026 to 22 January 2027 |
One trap catches people every year, so it's worth stating flatly. An auto-assessment is built from third-party data SARS already holds, mostly from employers, banks, and retirement funds. Crypto activity is generally not in that data yet. So if SARS auto-assesses you and the figure ignores your crypto entirely, that is not SARS telling you the crypto is fine. It just means SARS didn't have the information. If you had crypto disposals or crypto income during the year, an auto-assessment that leaves them out is not clearance. You may need to reject or edit it and file properly.
Two related reads. If your trading has tipped you into provisional tax, the payment dates and estimate rules work differently, and we cover them in Provisional tax for crypto traders in South Africa. When you're ready to actually capture the numbers, How to declare crypto on your ITR12 in eFiling walks through the return wizard section by section.
Records SARS expects you to have
Whatever your numbers turn out to be, you have to be able to back them up. SARS can ask for the supporting detail when it assesses or audits a return, and "the exchange had it" is no answer once an account is closed. For every crypto year, hold on to:
- Your complete transaction history from every exchange and wallet you've used, including accounts you've since closed
- The date and rand value of each transaction at the time it happened
- Fees paid on trades, deposits, and withdrawals
- Records of transfers between your own wallets and exchanges, so a genuine disposal can be told apart from a move
- The calculation method you used and the workings behind your final figures
Keep all of it for at least five years from the date you file. If a dispute or audit is running, keep it longer, until that's fully wrapped up. The single most common reason a crypto return falls apart under questioning is a gap in the early history, an old exchange nobody exported before it shut down. The time to gather records is before you file, not when SARS asks.
How Coinfig fits in
Everything above is doable by hand if you've got a couple of clean disposals. It stops being doable the moment your history is spread across a few exchanges, a wallet or two, some old CSVs, and a pile of transfers you can barely remember making. That reconciliation is the job Coinfig was built to do.
You connect Luno, VALR, or Kraken with read-only API keys, or upload a CSV from anywhere else, and Coinfig turns the lot into a South Africa-focused crypto tax report using FIFO. The keys are read-only by design, so Coinfig can read your history but can never place a trade or move a cent. Before you trust the numbers, a completeness check flags missing history, unmatched transfers, and balance changes that don't add up, and the transfer matching keeps your own-wallet moves from being counted as phantom sales. When it's done you get capital gains summaries, transaction schedules, an income breakdown, and a hand-off export for your accountant with the assumptions shown, so nobody has to guess how a figure was reached.
The free plan covers a full report for up to 100 transactions, which is plenty for a lot of people. Past that, Starter is R190 a year and Pro is R1,500 a year, and both lift the data limits. A fair word on what this is: Coinfig does the calculating and the reporting, and it leaves the advice to a human. It won't tell you how to treat a borderline case or file the return on your behalf, so a qualified practitioner should still weigh in on anything genuinely uncertain.
Ready to see your own numbers? Start at coinfig.tax. If you're on a single exchange, the exchange guides are the quickest way in: Luno, VALR, and Kraken.
Frequently asked questions
Do I owe tax if I never withdrew to my bank account?
Possibly, yes. SARS taxes disposals, and a disposal includes swapping one coin for another or spending crypto, not just cashing out to your bank. You can trigger a taxable gain without a single rand ever reaching your account.
Is swapping one crypto for another taxable?
Yes. Swapping, say, Bitcoin for Ethereum counts as disposing of the Bitcoin at its rand market value at the moment of the swap. If that value is higher than what the Bitcoin cost you, the difference is a gain you may be taxed on, even though you never touched rand.
How much tax will I pay on crypto?
It depends on whether your activity is capital or revenue and on your marginal rate. As an investor, 40% of your net gain, after the annual exclusion, is added to your taxable income, giving a maximum effective rate of 18%. As a trader, the full profit is added to your income and taxed at your marginal rate, up to 45%.
What if I made an overall loss?
A capital loss isn't wasted. It offsets capital gains you made in the same year, and any unused portion carries forward to reduce capital gains in future years. It does not reduce ordinary income like your salary, and you still need to declare it for the carry-forward to count.
Do Luno or VALR report my trades to SARS?
Under the CARF rules, South African exchanges have been collecting reportable data since 1 March 2026, and their first returns go to SARS by 31 May 2027. SARS can also already request exchange data through its existing information-gathering powers. So even before the first CARF return lands, the safe assumption is that your activity is visible.
Do I need to declare small amounts?
There's no minimum below which crypto gains stop being reportable. The annual exclusion may mean a small capital gain attracts no actual tax, but that's the exclusion doing its job after you've declared, not a licence to leave the activity off your return. Earned crypto is income from the very first rand.
Can SARS see wallets outside exchanges?
A wallet you hold the keys to yourself has no provider reporting it the way an exchange account does. That doesn't make those coins exempt, though. The tax rules apply to them just the same, and the moment they move onto an exchange or an offshore platform, that activity can be reported.
What happens if I just don't declare?
SARS treats undeclared crypto as undeclared income, which can bring interest and penalties, and understatement penalties alone can reach as high as 200% of the tax in serious cases. With exchange data increasingly flowing to SARS, non-declaration is a shrinking bet. If you're behind, the Voluntary Disclosure Programme is a far cheaper way to fix it than waiting to be caught.
This article is general information, not tax advice. Crypto tax outcomes depend on your specific circumstances. For complex situations, consult a qualified tax practitioner.