"How much does a website cost?" It's the first question every business asks and the one most agencies dodge with "it depends" or ranges so wide they're meaningless. R20,000 to R200,000 for "a website" tells you almost nothing.
This pricing opacity hurts everyone. Businesses can't budget properly, agencies compete on who can be the vaguest, and too many projects end in sticker shock halfway through. This guide pulls back the curtain on what web development actually costs in South Africa, what drives those costs, and how to tell whether a quote represents fair value.
What You're Actually Paying For
A website quote bundles several distinct disciplines together. Understanding each one helps you evaluate whether a price makes sense or whether you're being overcharged (or underserved).
Discovery and Strategy (10-15% of total)
Stakeholder interviews, user research, competitive analysis, technical requirements, and content strategy. This phase typically costs R8,000-R45,000 depending on complexity. It feels like an expense you can skip, but every R1 spent on discovery tends to save R3-R8 in development rework. Skipping it is like building a house without an architect — possible, but you'll pay for the mistakes later.
Design (25-35% of total)
Mood boards, wireframing, high-fidelity mockups, design system development, responsive designs, and interactive prototypes. Template customisation runs R5,000-R15,000. Fully custom design ranges from R40,000-R120,000. The gap reflects the difference between adjusting someone else's work and creating something original from scratch.
Development (40-50% of total)
Frontend and backend development, CMS implementation, responsive build, performance optimisation, security hardening, and third-party integrations. Basic WordPress builds run R10,000-R30,000. Custom coded sites (using frameworks like Astro, Next.js, or SvelteKit) range from R60,000-R200,000+. The development method has the biggest impact on long-term maintenance costs and site performance.
Content, Testing, and Launch (remaining 10-20%)
Professional copywriting adds R15,000-R50,000 if you don't supply your own content. QA testing runs R8,000-R25,000 for thorough cross-device, cross-browser testing. Launch and deployment costs R5,000-R15,000 for DNS setup, SSL configuration, hosting migration, and post-launch monitoring.
Hidden Costs That Catch People Off Guard
The quoted price is rarely the full picture. Watch for these common extras that inflate the real cost of ownership:
- Hosting markups: Some agencies charge R500-R800/month for hosting that costs them R100-R200 on the open market. Ask what hosting platform they use and compare the retail price yourself.
- Mandatory maintenance contracts: R2,000/month for "maintenance" that amounts to running WordPress updates once a month (15 minutes of work). Maintenance is valuable when it includes security monitoring, performance checks, and content updates. Ask exactly what's included.
- Per-change pricing: R500 to change a phone number or update a paragraph. If your CMS doesn't let you make basic text edits yourself, something is wrong with the setup.
- Revision traps: Some contracts count each individual tweak as a "revision" rather than grouping feedback into revision rounds. Three rounds of revisions should mean three rounds of consolidated feedback, not three individual text changes.
- Stock photo and domain markups: Charging R400-R800 for stock photos that cost R50-R150 on Shutterstock, or R800/year for a .co.za domain that costs R75-R150 to register directly.
- "SEO setup" fees: R8,000 for installing Yoast SEO and filling in a few meta descriptions. That's 20 minutes of work, not a service worth thousands.
South African Pricing Context
Several factors make the SA web market unique compared to international pricing guides:
- Exchange rate exposure: Many premium tools, hosting platforms, and SaaS integrations bill in USD or EUR. When the rand weakens, your monthly hosting and software costs rise even though nothing changed on your end. A R150/month hosting bill can become R250/month purely on currency movement. Factor in a 10-15% buffer for exchange rate fluctuations on any USD-denominated recurring costs.
- Skills scarcity: South Africa has fewer senior developers per capita than markets like the UK or US, which drives up rates for experienced talent. This is especially true for modern frameworks. Finding a WordPress developer is straightforward; finding someone who can build a performant Astro or SvelteKit site narrows the pool considerably.
- Regional pricing differences: Cape Town and Johannesburg agencies tend to charge 15-30% more than agencies in Durban, Pretoria, or smaller cities. Remote work has narrowed this gap, but it still exists, partly because of higher operating costs in CT and JHB, and partly because that's where many enterprise clients are based.
- Load shedding considerations: Reliable hosting infrastructure matters more in SA than in markets with stable power grids. Local hosting can offer lower latency for SA visitors, but international CDN-based hosting (Vercel, Netlify, Cloudflare) provides better uptime guarantees. This trade-off affects both hosting choice and cost.
Fair Pricing Benchmarks (2026 ZAR)
These ranges reflect quotes from reputable agencies across South Africa's major metros:
- Small business website (5-10 pages): Template-based R15,000-R35,000. Custom WordPress R35,000-R65,000. Custom coded R50,000-R90,000.
- Medium business (10-20 pages): Custom WordPress R60,000-R120,000. Custom coded R90,000-R180,000.
- E-commerce: Shopify R20,000-R150,000. Headless (custom frontend + Shopify/Medusa backend) R180,000-R350,000.
The True Cost of Going Cheap
Here's a pattern that plays out regularly in the SA market: A business pays R15,000 for a "custom" website. What they receive is a generic WordPress theme with their logo dropped in. Mobile experience is clunky. Page speed scores below 40. No SEO foundations. No analytics setup.
Within 6 months, they're spending money on fixes: R5,000 for a "speed optimisation" plugin that doesn't help much. R8,000 for "SEO setup" that should have been included. R3,000 for mobile responsiveness patches. R15,000 for a redesign when they realise the template doesn't reflect their brand.
By the end of year one, the R15,000 website has cost R46,000 in total — and still underperforms. A R65,000 quality build done right the first time would have cost less over the same period and actually delivered results from day one.
Cheap isn't always expensive, but in web development, suspiciously cheap almost always is.
How to Evaluate Whether a Quote Is Fair
Three practical tests you can apply to any quote:
- The hourly gut check: Take the total quote and divide by the agency's average hourly rate (ask them directly). The result is the implied number of hours. Does that feel realistic for the scope? A 10-page custom site in 20 hours isn't feasible. A simple WordPress site in 200 hours is padded.
- The itemised breakdown: Ask for a cost breakdown by project phase (discovery, design, development, testing, launch). If they can't or won't break it down, that's a yellow flag. Transparency goes both ways.
- The market comparison: Get 3-5 quotes for the same scope. Throw out the highest and lowest. The middle cluster gives you a realistic market rate. If a quote is 3x higher than the cluster without clear justification (enterprise security requirements, complex integrations), it's overpriced. If it's 50% below the cluster, ask yourself what corners are being cut.