Designing for the South African internet requires pragmatism. While Johannesburg offices have 1Gbps fibre, a massive section of affluent buyers are browsing on fluctuating 4G networks from the back of an Uber, or experiencing micro-disconnects during loadshedding stage transitions. If your site isn't built for latency, you lose.

The Latency vs Bandwidth Lie

A common misconception is that because smartphones are fast, and 5G is rolling out, bloated websites are acceptable. But mobile browsing is constrained by latency (the time it takes for a request to reach the server and return), not just bandwidth (the size of the pipe).

Every time your website calls an external font from Google, a tracking script from Facebook, and a chat widget from Zendesk, it creates a new latency round-trip. On a fluctuating SA mobile network, 50 requests can easily take 6 seconds to complete before the page even renders.

"You cannot mask terrible architecture behind a caching plugin. Real speed requires shipping less code."

Engineered for the Local Edge

To deliver a sub-2-second experience under local conditions, we enforce strict architectural rules:

  • Local Edge Caching: We deploy sites to global CDNs with strong physical presences in Johannesburg and Cape Town (like Cloudflare or AWS CloudFront), ensuring the bits have the shortest possible physical distance to travel.
  • Zero Builder Bloat: We strip away WordPress visual builders completely. We write raw semantic HTML and CSS, which the browser renders instantaneously.
  • Self-Hosted Assets: Instead of fetching fonts and critical scripts from external domains (which requires costly DNS lookups), we bundle them and serve them directly from the main domain.

The Cost of a Megabyte

Consider the data cost for low-income brackets. If your homepage is 6MB (due to uncompressed videos and images), you are actively penalising a segment of your audience simply for clicking your link. Treat data usage as a user experience constraint.

Interaction Time (INP)

Speed is not just how fast the page appears, but how fast it reacts. Interaction to Next Paint (INP) measures how quickly your site responds to a tap or click. If an SA user clicks "Submit Quote" and nothing happens for 400ms due to heavy JavaScript blocking the main thread, they will tap the button three more times, breaking the form submission.

By keeping JavaScript payloads minimal, the browser's main thread stays clear, allowing for snappy, instantaneous interactions.