1. What the Index measures
The SA Pool Cost Index publishes turnkey ZAR build cost for residential swimming pools in South Africa, broken down by pool type × metro. “Turnkey” means the shell, plant (pump, filter, chlorination), basic finish and a single coping detail, fully installed and water-tested. It excludes decking, fencing, landscaping, heating, automation and the initial chemical fill — those are itemised separately on each per-cell page.
2. Sample construction
The current edition publishes 15 cells across the eight SA metros with meaningful search demand and contractor density: Johannesburg, Pretoria, Centurion, Cape Town, Durban, Gqeberha, Bloemfontein and East London. A cell is only published once it clears the anti-thin-content gate (§4). We add cells as research catches up — we do not generate templated “city-swap” pages.
3. Source rules
The Index cites only primary or quasi-primary sources. The current edition draws on 8 distinct sources across these categories:
- Regulatory standards — SANS 10134 (private pool safety), SANS 10400-D (public safety / fencing), published by SABS.
- Municipal building control — Cities of Johannesburg, Tshwane, Cape Town, eThekwini, Nelson Mandela Bay, Buffalo City and Mangaung.
- Utility tariffs — Eskom / NERSA published residential tariff schedules.
- Geoscience & environment — Council for Geoscience (dolomite mapping for Gauteng), municipal water-restriction notices.
- Industry registration — NHBRC for builder registration and enrolment requirements.
We do not cite other pool-builder websites, lead-gen directories or PR syndication. Contractor list pricing and quote data is used as input but is not itself a citable source on the page — the cited source is the regulatory or utility document the price ties back to.
4. Anti-thin-content gate
Before a cell is allowed into the Index, an automated validation runs at build time. To ship, a cell must:
- Carry a unique direct-answer opening of at least 30 words (no near-duplicates across cells).
- List at least three location-specific cost factors drawn from soil, water, logistics, loadshedding or municipal approval categories.
- Reference at least one cited source from the source registry.
- Provide a turnkey ZAR price band and a typical figure.
Cells that fail validation log a build warning and are excluded from the sitemap, the matrix index and the Index aggregates. The rule is conservative on purpose — Google's scaled-content policy will bury a templated grid that only swaps a city name.
5. Regional adjustments
The per-cell “regional delta” line is the gap between that metro's typical figure and the national baseline for the same pool type. Drivers we model explicitly:
- Foundations — engineered rafts on expansive clay (Joburg south/west), dolomite zones (Centurion), or breaking surcharges on rock (eastern Pretoria).
- Coastal salt exposure — marine-grade plant within ~1km of the coast adds 8 – 12% to the equipment line.
- Logistics — fibreglass shell freight for inland metros; crane access on sloped Atlantic Seaboard and Berea sites.
- Water restrictions — fill-permission overhead and the cost of borehole/rainwater alternatives.
- Municipal compliance — plan submission fees and SANS 10134 fencing enforcement.
6. Refresh cadence
The Index is refreshed quarterly. The next planned update is 2026-08-19. Each refresh cycle re-checks municipal tariffs, water-restriction status, NERSA-approved Eskom tariffs and any SANS revisions, and re-prices a sample of contractor quotes per metro. The release date and edition label on the Index masthead always reflect the latest refresh.
7. Corrections policy
If you spot a number you can't reconcile against a primary source, please write to hello@swimpoolboulders.co.za. Corrections are logged with a dated note on the affected cell. See our editorial standards for the full process.
8. Licensing
The Index is published under Creative Commons CC BY 4.0. Journalists, researchers and educators are free to quote, chart or republish figures with attribution and a link back to swimmingpoolbuilders.co.za/pool-cost-index.