South African Short-Term Rental Tax and Rates

General information, not advice. Cape Town’s Short-Term Letting By-Law is in draft, open for comment until 5 October 2026. Tax thresholds and rates change. Nothing here is legal, tax or accounting advice — take professional advice on your own position.

Read the proposal: the full draft by-law (PDF) · the City’s executive summary (PDF) · how to comment before 5 October

The decision in front of you

Cape Town’s draft by-law proposes reclassifying a property as Business & Commercial once it is listed as available for short-term letting more than 50% of its annual room-nights. The companion piece covers how that maths works and how to stay under it.

This piece is for the hosts on the other side of the line — the ones who look at the threshold and think: that’s not a problem, that’s a description of my business.

If letting is what the property does, being rated as a commercial operation is not an insult. It’s a cost, and a fairly predictable one. The real risk isn’t the rates bill. It’s that a lot of people cross into operating a business while still keeping records like someone with a spare room.

What actually changes when you’re commercial

Four separate things, and they’re governed by four different bodies. Conflating them is where the trouble starts.

1. Municipal rates

Cape Town’s 2026/27 residential rate is R0.006428 per rand of municipal valuation (0.6428 cents in the rand), with the first R500,000 of a home’s value reported to be rates-free. The business and commercial rate is reported at R0.015106 in coverage of the draft rates policy and around R0.0128 in coverage of the draft budget, with no exclusion. On a R3 million property the gap is roughly R22,000 to R29,000 a year. Whether that is worth paying is a sum you can do: stay under, or go commercial?

It’s a cost of trading, and like any cost of trading it is deductible against your rental income. Which only helps if you’re actually claiming it, apportioned correctly — and that requires records.

2. Income tax

Short-term letting income is taxable and goes on your ITR12. Nothing about that is new or specific to Cape Town.

What people get wrong is the expenses side, in both directions. Under-claiming is the more common error: hosts declare gross platform payouts and forget that commission, cleaning, laundry, consumables, insurance, levies, rates, municipal services, repairs, and the interest portion of the bond are all potentially deductible against that income.

Over-claiming is the more dangerous one. Where a property — or part of it — is used both privately and for letting, expenses must be apportioned. Typically by floor area for the space, and by time for the period it was let. A cottage let for six months of the year does not carry twelve months of deductible interest. Costs incurred exclusively for the let portion, like advertising or a repair to the guest bathroom, are fully deductible without apportionment.

Two apportionments, two different bases, applied to a dozen expense lines, across a year. This is the arithmetic nobody does properly by hand in February.

3. VAT

The threshold is R1 million in taxable supplies in any consecutive twelve-month period. Not a tax year — any rolling twelve months.

Cross it and registration is compulsory, and short-stay accommodation is charged at 15%. That changes your pricing (you are either absorbing 15% or passing it on), your invoicing, and your filing obligations.

The trap is the word rolling. You do not find out at year end. You cross it mid-year, and if you notice late you may owe VAT on supplies you already made without charging it. Anyone whose annual letting income has a 7 in front of it should be watching this monthly, not annually.

4. Capital gains

The least-discussed and most expensive one.

The primary residence exclusion shelters a substantial slice of the gain when you sell your home. But where part of the property was used for trade, that exclusion is apportioned — you only get the residential share of it.

So letting the garden cottage for years doesn’t just create income tax while you own it. It reduces the exclusion when you sell. And apportionment depends on how much of the property was used for trade and for how long — facts you will need to evidence years after the event, from records you either kept or didn’t.

That’s the real argument for proper tracking, and it isn’t about this year’s tax return. It’s that the evidence you need at sale is being created right now, and it is not recoverable later.

The problem: the admin, not the intent

Almost no host disputes that they should keep proper books. They don’t, for an entirely rational reason: the admin is worse than the tax.

The honest version of the manual process is that every booking generates the same facts — guest, dates, property, gross, platform commission, net payout, currency — and those facts get transcribed by hand into a spreadsheet, then into accounting software, then reconciled against a payout that doesn’t match either of them because the platform netted its fee off first. Per booking. All year.

So people do the minimum. They declare the payout as income, which understates both their revenue and their costs, loses the commission deduction entirely, and leaves them with no defensible apportionment when it matters.

The answer isn’t more discipline. It’s removing the transcription.

What Airflow does about it

This is what the product is actually for, so let me be specific and stay inside what’s live.

The booking email becomes the record. A confirmation from a channel, or a booking through your own page, is read into a structured record — guest, dates, property, gross, fees, currency — without you typing it. Automated Accounting covers the chain.

Gross is recorded as gross, and commission as a cost. This is the single most valuable correction for a commercial host. The payout is not the income: the guest total is your revenue and the platform fee is a deductible expense. Booking the net payout as revenue is the most common error in short-term-let bookkeeping, and it makes your business look smaller and your costs look lower than they are. One detail that matters here: channel commission is charged on a commissionable amount, not the booking total — on one real reservation, a total of 1,560 carried a commissionable amount of 1,533.56 and commission of 230.03. Rate times total would have been wrong. More in Track OTA Commissions as Expenses.

A draft invoice per stay, in Xero. Raised from the booking, in the right currency, dated to the stay. Your accountant gets a clean per-stay trail instead of a bank statement and a shrug. Xero + Short-Term Rentals covers the chart of accounts to put behind it.

A clean P&L per property. If you own more than one, this is the difference between knowing which property earns and guessing. Multi-Property STR Accounting covers it.

Costs pulled back from your books, so the picture is net rather than just income.

And the availability record, which is now doing double duty — it’s how you’d evidence the 50% question, and it’s the time-apportionment basis for your expense claims.

What it doesn’t do

Airflow is not a tax product. It does not compute your VAT liability, decide your apportionment percentages, track your R1 million rolling threshold, calculate capital gains, or file anything with SARS or the City. It produces accurate, itemised, per-property records and puts them in your accounting software, where your accountant does that work with real data instead of a reconstructed spreadsheet.

That distinction is the point. The thing that makes South African short-term-let tax painful is not the rules. It’s arriving at your accountant with a payout total and no itemisation.

Setting it up

None of this is worth much as advice, so here is the actual sequence. About twenty minutes.

1. Open an account and add the property. Set the bedroom count while you’re on the Listing tab — the Cape Town rule is counted in room-nights and the maths needs it.

2. Connect your accounting. Xero, QuickBooks, Sage or FreshBooks. Do this before importing anything, and send one booking through to check the invoice number and the currency come back right. A connection can be perfectly authorised and still produce invoices in the wrong denomination, which you’d otherwise discover with real invoices already in your books. There’s a one-booking test built for exactly this.

3. Connect your mailbox and your channel calendars. Forwarded booking emails become structured records — guest, dates, gross, fees, currency — without you typing them. The calendar feeds make your availability the union across platforms rather than one platform’s slice.

4. Import what you already have. A CSV or Google Sheet of past bookings. Every row lands as an availability block: nothing is invoiced, nobody is emailed, no credits are spent. Then you choose, deliberately, which of them should become financial records — the closed years usually shouldn’t. Import Airbnb Booking History into Xero covers which to leave out and why.

5. Switch on the letting limit. Block Dates → Letting limit → Cape Town (draft 2026). From that day Airflow records what the property offered, every night. It shows where you are, forecasts the date you’d cross, proposes which unbooked nights to close, and emails you when the band changes. It will not tell you whether you comply — it reports a measurement against the threshold you set.

It also shows you, as a picture, that the nights it closed were the cheap ones: every night in the window sorted by nightly rate, with closures crowding the low end and peak season left open. If you would rather it maintained the limit for you week to week, it can, ranking by your own seasonal rates and never touching a booked night or the next 90 days. The threshold post walks through it.

6. Add your registration number when the City issues one. It renders on your booking page automatically, which is what the draft by-law requires.

From then on the per-stay records build themselves, and the two things you’ll need later — a defensible availability record and an itemised set of books — are being created as a by-product of taking bookings rather than as a job you have to remember.

What comes out of it

  • A draft invoice per stay in your accounting software, gross as revenue and commission as an expense, so you stop under-claiming.
  • A clean P&L per property.
  • A day-by-day availability statement you can export as a CSV for your accountant or the City, including how much of it was observed rather than reconstructed.
  • The time-apportionment basis for your expense claims — the same daily record, doing a second job.

Where to start

  1. Work out which side of the 50% availability line you’re on, and decide deliberately rather than drifting.
  2. If you’re commercial, stop declaring net payouts. Gross as revenue, commission as expense, from the next booking onward.
  3. Set your apportionment basis now — floor area and let-period — and record it, while you can still remember how the property was used.
  4. Watch the rolling twelve-month total against R1 million if you’re anywhere near it.
  5. Get the per-stay record automated, because the reason this doesn’t get done is the typing, and that’s the part a machine should do.

The change coming out of Cape Town makes a lot of hosts commercial operators on paper. The ones who’ll be fine are the ones already keeping commercial records — and doing that has got a great deal cheaper than it used to be.

Related: Accounting for Short-Term Rentals: The Complete Guide, Your Short-Term Rental Chart of Accounts, Cleaning Fees, Damage Deposits & Taxes, and Staying Under Cape Town’s 50% Letting Threshold.