Follow the money, the maintenance and the audit record through time. Read the trajectory alongside the reporting gaps, then trace each figure to its source.
Build your historical viewFinancial years end in June. The year entered is the ending year.
Verified revenue & spending coverage: 2008/09–2024/25. Individual years and municipalities may have gaps.
A municipality code through time. Boundary changes, formation and retirement can limit the comparable record. Missing years are shown as gaps; they do not prove that a municipality existed in that year.
Reported cohort: 1 codes selected. Reporting populations can change from year to year; inspect the coverage below.
Historical reporting policyReportedReported populations may differ between years
Read this view with care
National and provincial sums across all categories include overlapping local and district mandates; these are not population-normalised measures.
Financial and audit records inform scrutiny but do not establish service quality, corruption or political causation.
Money through time
Reported revenue. Reported spending.
Annual revenue & spending
Nominal ZAR · June-end years
View exact figures
Financial year
Reported revenue
Reported spending
2022/23
Not reported
Not reported
2023/24
R 226,9M
R 310,1M
2024/25
R 251,5M
R 350,5M
Each total uses the municipalities reporting that value in that year. Changes in reporting coverage affect the totals. These are nominal rand amounts, without inflation adjustment.
The operating balance
Percent of paired operating revenue
View exact figures
Financial year
Paired operating balance
2022/23
Not reported
2023/24
-36,64%
2024/25
-39,344%
This ratio uses only municipalities with both revenue and spending inputs. It is an aggregate of matched amounts, not an average municipal rating.
Cash available for operations
Months · matched cash & spending
View exact figures
Financial year
Paired cash coverage
2022/23
Not reported
2023/24
3,301
2024/25
3,25
A liquidity indicator calculated from matched cash and operating spending records. Missing inputs are not replaced with zero.
The population behind the trend
Reporting coverage, year by year.
Counts show available matched records against selected codes. They are not counts of municipalities known to exist historically. A missing value is never treated as zero.
Amounts are nominal rand, with no inflation adjustment.
Revenue and expenditure totals show independently reported observations; the operating balance percentage uses only municipalities with both operands.
Maintenance is 100 × summed repairs / summed reported asset bases for matched municipalities; a non-positive aggregate denominator has no ratio, not the average of percentages. Cash coverage similarly uses matched cash and expenditure.
Missing rows, missing operands and explicit source nulls remain gaps; a reported zero is retained.
Clean audit means exact opinion code unqualified. Emphasis-of-matter and unfamiliar reported opinion codes remain distinct from clean and from missing.
The consistent cohort is the intersection of topic-reporting municipalities across every selected year.
Current geography is applied to national/provincial history. Historical boundary changes may prevent like-for-like comparison. Archived municipalities can be inspected individually.
Verified legacy 2009–2019 mappings and current v2 mappings from 2023 use separate source item codes. The unverified 2020–2022 transition remains a gap. Legacy revenue includes capital transfers while current revenue excludes them; legacy operating balance percentages are withheld pending verified normalisation. These are reported nominal totals, not identical definitions over time.
Money is nominal ZAR. No inflation adjustment or historical financial resilience rating is calculated in this view.
Source retrieved 07 Oct 2026. Retrieval date and financial reporting period are different.