GA4 setup is the process of creating a Google Analytics 4 property, connecting it to your website, and configuring it to measure the actions that actually matter for your business — not just page views. If you are budgeting for a new website or reviewing website costs in South Africa, knowing whether your analytics is set up correctly is as important as knowing whether your hosting is paid for. Most SA small businesses have a GA4 tag installed; far fewer have a GA4 property that is configured to show whether their site is earning its keep.
This GA4 setup guide walks through every stage — property creation, data stream, tag installation, and the three post-install settings that South African businesses most often skip — making it a complete google analytics setup south africa operators can follow without a developer on call. It also covers how to align your setup with POPIA's consent requirements and which events to mark as key events for SA business outcomes. If you already have basic GA4 tracking but want to go further, the guide to tracking AI referral traffic in GA4 covers the next layer.
Quick Answer
A complete GA4 setup for a South African small business has five stages: create a property (with ZAR currency and Africa/Johannesburg timezone), add a web data stream, install the tracking tag via Google Tag Manager or your CMS, change data retention from 2 months to 14 months, and mark the events that reflect your real conversion actions as key events. Under POPIA, consent is the appropriate lawful basis for non-essential analytics tracking on most SA websites — which means your GA4 tag should fire only after a visitor accepts cookies via a compliant consent banner.
Jump to a Section
Not sure if your GA4 is actually tracking the right things?
Send us your GA4 property and we will tell you exactly what is missing — before you spend another month collecting incomplete data.
Get a Free Analytics ReviewWhat a Complete GA4 Setup Actually Covers
A complete GA4 setup has five components: the property (with correct SA regional settings), the data stream, the tag installation, three post-install configuration corrections, and key event mapping for your business outcomes. The tag alone tells you how many people visited; the configuration determines whether you can answer the questions that drive business decisions — which traffic sources bring enquiries, which pages turn visitors into leads, and whether this month's performance is better or worse than last year's.
A complete Google Analytics 4 setup has five stages: create the property with the correct regional settings, add a web data stream, install the tag and verify it fires, adjust the three post-install settings that GA4 gets wrong by default for SA businesses, and mark the events that represent real business outcomes as key events. What takes longer — and what most guides skip — is deciding which events matter to your specific business before you start.
Important: GA4 has no "Enhanced Ecommerce" setting — that feature was part of the retired Universal Analytics platform and does not exist in GA4. Ecommerce tracking in GA4 means implementing Google's recommended purchase and checkout events via your platform integration (WooCommerce, Shopify), gtag, or Google Tag Manager. Any documentation referencing "Enhanced Ecommerce" as a GA4 toggle is written for the older platform and should not be followed.
Step 1 — Create Your GA4 Property
GA4 property setup establishes the reporting container that all your website data flows into, and it sets the timezone and currency that every report uses — get these wrong and your daily report windows will be off by two hours.
Go to analytics.google.com. If this is your first GA4 property, click Start Measuring. Otherwise, go to Admin (bottom-left gear icon), then click Create > Property.
Fill in these fields:
| Field | What to enter for SA businesses |
|---|---|
| Property name | Your business name + "GA4" (e.g. "Acme Plumbing GA4") — makes it easy to identify in multi-property accounts |
| Reporting time zone | South Africa → Africa/Johannesburg (UTC+2) |
| Currency | South African Rand (ZAR) |
| Industry category | Pick the closest match — affects benchmark data |
| Business size | Select honestly — affects the interface experience |
Click Next, select your intended use (most SA small businesses choose "Measure my website"), then Create and accept the Terms of Service. The property is now created but receives no data yet — that happens at step 3.
Setting Africa/Johannesburg as the timezone means your daily session windows reset at midnight South African Standard Time. Using UTC or US/Eastern — the defaults that auto-populate if you do not change them — splits your Tuesday traffic across two reporting days.
Step 2 — Add a Web Data Stream
A web data stream is the channel through which your website sends data to your GA4 property — one property can have multiple streams (web, iOS app, Android app), but most SA small business sites need one web stream.
After creating the property, GA4 will prompt you to add a data stream. Choose Web. Enter your website URL (include the protocol — https://) and a stream name. Leave Enhanced Measurement enabled.
Enhanced Measurement automatically collects these events without any code changes on your part:
- Page views
- Scroll depth (when a visitor scrolls to the bottom portion of a page)
- Outbound clicks (links that leave your site — including wa.me WhatsApp links)
- File downloads
- Form submissions
- Video engagement
Once you click Create stream, GA4 generates your Measurement ID — a string that starts with G- followed by numbers and letters. Copy this; you need it in the next step.
Step 3 — Install the Tracking Tag on Your Website
Installing the GA4 tag connects your live website to the data stream you just created — without this step, no data flows regardless of how the property is configured.
Google provides three installation methods:
| Method | When to use it | What you need |
|---|---|---|
| CMS field | Your CMS has a built-in GA4 or Measurement ID field (Squarespace, Wix, some WordPress plugins) | Just your G- Measurement ID |
| Google Tag Manager | WordPress or any site where you want flexible tag management — recommended for SA small businesses using WordPress | GTM container already installed; Measurement ID |
| Direct <head> tag | Simple static sites or when GTM is not available | Developer access to your theme files |
For WordPress sites using Google Tag Manager: In your GTM container, create a new tag. Choose Google Tag as the tag type, enter your Measurement ID (G-XXXXXXXXXX), and set the trigger to All Pages. Save and publish. Data collection begins within 30 minutes of the tag firing.
Verify the installation using GA4's built-in DebugView (Admin > DebugView). Open your website in the same browser and watch events appear in real time. If you see a page_view event within a few seconds, the tag is working.
Working verification: DebugView shows page_view, session_start, and user_engagement events firing as you navigate your site.
Not working: DebugView shows nothing after 2 minutes. Check that GTM is published (not just saved), the trigger fires on All Pages, and your Measurement ID matches the one in your data stream exactly.
Step 4 — Three GA4 Settings SA Businesses Must Change After Install
GA4's default configuration is built for a global average user — which means three settings work against SA businesses specifically, and fixing them takes less than ten minutes.
1. Data Retention: Change from 2 Months to 14 Months
GA4 defaults to storing user-level and event-level data for 2 months. Standard aggregated reports (your Sessions, Users, and Conversions summaries) are unaffected by this setting and always show historical data. But Explorations — the flexible analysis tool where you build custom funnels, segment comparisons, and path reports — only use data within the retention window. At 2 months, you cannot run a year-over-year funnel comparison in Explorations.
Change this in Admin > Data Settings > Data Retention. Set the dropdown to 14 months. Note that age, gender, and interest data always expires after 2 months regardless of this setting. The change takes 24 hours to take effect after saving.
2. Internal Traffic Filter: Exclude Your Own Visits
If you or your team visit your site regularly, those sessions inflate your traffic data and can distort conversion rates. Excluding internal traffic requires two separate steps in GA4 — a common source of incomplete setups.
Step A — Define the rule: Admin > Data Streams > [your stream] > Configure Tag Settings > Define Internal Traffic. Add your office or home IP address with the value "internal."
Step B — Activate the filter: Admin > Data Filters > Create Filter. Choose "Internal traffic," name it, and set it to Active (leave it in Testing for 24–48 hours first to confirm no external traffic is accidentally caught).
Note: IP-based exclusion does not work reliably if your team browses on mobile data — many SA mobile ISPs use dynamic IPs. For remote workers or mobile-first teams, consider a URL-parameter approach instead.
3. Confirm Your Property Timezone and Currency
If these were set correctly in Step 1, you are done. If you inherited a property someone else created, verify them now: Admin > Property Settings. Timezone should be Africa/Johannesburg; Currency should be South African Rand (ZAR). A property reporting revenue in USD will show your ZAR amounts as the same number but denominated incorrectly in every report.
Data retention, internal traffic filter, and currency/timezone: these three post-install settings determine whether your GA4 data is usable for business decisions. Most DIY setups skip at least one.
Step 5 — Configure Key Events for SA Business Outcomes
Key events are the actions in GA4 that represent meaningful business outcomes — the equivalent of what older versions called "conversions," but now named to distinguish them from Google Ads conversions specifically. Marking an event as a key event tells GA4 to surface it prominently in reports and make it available for advertising optimisation.
You can mark up to 30 events as key events per property. Marking is not retroactive: data collection starts from the moment you toggle the event on, so set these up as soon as possible after installation.
To mark a key event: Admin > Data display > Events. Find the event in the table and toggle Mark as key event. If the event is not yet appearing (because it has not fired on your site yet), use Admin > Events > Create event to define a custom event, then mark that.
| SA Business Outcome | GA4 Event to Mark | How It's Tracked |
|---|---|---|
| Contact form submission | Custom event based on page_view where page_location contains /thank-you/ | Create via Admin > Events; more reliable than form_submit Enhanced Measurement |
| WhatsApp button click | click where link_url contains wa.me | Tracked automatically by Enhanced Measurement's outbound click tracking |
| Phone number click | click where link_url starts with tel: | Tracked automatically via Enhanced Measurement |
| Quote PDF download | file_download | Tracked automatically by Enhanced Measurement |
| Ecommerce purchase | purchase | Default key event; requires ecommerce event implementation via platform or GTM |
Form submissions note: GA4's Enhanced Measurement captures form_submit automatically, but practitioners widely report it can fire even when a form submission fails due to a validation error. The more reliable approach is to create a custom key event triggered by a thank-you page view — which only appears after a genuinely successful submission. If your site does not redirect to a thank-you page after form completion, that is worth fixing for measurement clarity as well as user experience.
Key events are not retroactive. The moment you toggle one on is the moment GA4 starts counting it — so set up your key events on day one, not after you have been running for three months and realise the data is missing.
For ecommerce tracking beyond basic purchase events, see the GA4 ecommerce tracking guide for South African stores, which covers the full recommended event set.
POPIA and Consent Mode — What SA Websites Need to Configure
Every Google Analytics setup in South Africa must account for POPIA — the Protection of Personal Information Act. POPIA section 11(1) sets out six lawful bases for processing personal information, of which consent is one. For non-essential analytics tracking, there is no contractual necessity or legal obligation basis to rely on; consent is the appropriate lawful basis for most SA websites using GA4. This is technical guidance only — your specific obligations depend on your processing activities and are best confirmed with a qualified privacy practitioner.
Where consent is the relied-upon lawful basis for your analytics tracking (as it typically is for non-essential GA4), a POPIA-aligned setup requires three elements:
- A consent banner with clearly labelled Accept All, Reject All, and Manage Preferences options — no pre-ticked boxes, no dark patterns, equal prominence for accept and reject.
- Conditional tag firing — configure your GA4 tag to fire only after a visitor has accepted analytics cookies. In GTM, this means using a consent state trigger rather than the default All Pages trigger.
- Consent records — capture the timestamp, the visitor's choices by category, and the policy version. These records need to be stored for at least 12 months.
Google Consent Mode (currently version 2) integrates with consent management platforms to signal to GA4 and Google Ads whether a visitor has consented. This allows GA4 to model some data for non-consenting visitors rather than losing it entirely — useful in SA where a meaningful share of visitors will reject tracking.
The cookie consent and analytics guide for South Africa covers the implementation options in more detail, including which consent management platforms work well with WordPress and GTM. For any GA4 setup south africa businesses start from scratch, the consent configuration is always the first thing to check — before internal traffic filters, before key events. For context on how analytics fits into the broader cost of running a website, the website running costs breakdown covers annual tool spend including analytics plugins.
Need your GA4 set up correctly for the first time?
Tell us where your site is hosted and what your main conversion actions are — we will assess whether your current setup measures what it should.
Get a Timeline & Fit AssessmentWhy South African Businesses Choose Growth Pulse Media for Analytics and Web Setup
Dirk van Greuning founded Growth Pulse Media after building and scaling a large South African ecommerce business — which means the analytics thinking here comes from someone who has paid for GA4 data that did not answer the right questions, and fixed it. The agency's web design work starts with a measurement plan, not just a visual brief: before a site goes live, the key events are defined, the consent mode is configured, and the data retention is set to 14 months. The web design service includes GA4 setup as part of delivery, not as an afterthought.
Growth Pulse Media works with a limited number of clients at any one time, which means the analytics configuration — property settings, key event mapping, internal traffic exclusion — is handled by the same senior operator who reviews the monthly performance data, not handed off to a junior after onboarding. All work is executed in-house from Johannesburg, Gauteng.
Who This Is NOT For
You already have a working GA4 setup with key events and 14-month retention. If your property is correctly configured and your conversion events are firing, this guide does not add new ground — look at the UTM tracking guide or the ecommerce tracking guide for the next level of measurement.
You want GA4 to replace your accountant. GA4 shows you website behaviour and the traffic sources connected to business outcomes. It does not attribute offline revenue, track quotes that converted in a follow-up call, or replace a proper CRM pipeline for tracking deal value.
You are running an app-only business. This guide covers web data streams. GA4 supports iOS and Android app tracking, but the SDK implementation, event taxonomy, and Firebase integration are a separate topic.
You need legal compliance advice. The POPIA section above reflects published technical guidance — it is not legal advice. If you are unsure whether your consent setup meets your specific obligations, a privacy law practitioner is the right call, not an analytics guide.
Inherited a messy GA4 property from a previous agency?
Share your GA4 Admin access and we will run an audit — checking retention, key events, consent alignment, and data quality — before you make any changes.
Request a GA4 AuditFrequently Asked Questions — GA4 Setup
How long does GA4 setup take for a South African small business?
As a working guide, the core technical installation — creating the property, adding the data stream, and installing the tag — takes most people one to two hours when following a structured checklist. Configuring key events, internal traffic filters, and consent mode correctly adds more time on top of that. You will not have meaningful trend data for at least two to four weeks regardless of how quickly you install; give it a full month before drawing conclusions from traffic patterns.
Do I need Google Tag Manager to set up GA4?
No — GA4 can be installed by pasting the Google tag directly into your website's <head> section, or by entering your Measurement ID in your CMS's analytics field. However, Google Tag Manager is strongly recommended for most WordPress sites because it lets you manage consent triggers, add additional tags, and make changes without touching theme code.
What is the difference between GA4 key events and conversions?
In GA4, a key event is any important action you want to measure on your website — a form submission, a WhatsApp click, a purchase. A conversion is a key event you share with Google Ads to measure and optimise your advertising campaigns. All conversions are key events, but not all key events need to be shared with Google Ads. The distinction matters when you are running paid search or Meta campaigns alongside your organic tracking.
Does GA4 work with POPIA in South Africa?
GA4 can be configured in a POPIA-aligned way, but the tool alone does not make your site compliant. POPIA section 11(1) provides six lawful bases for processing personal information; for non-essential analytics tracking, consent is typically the relevant basis since there is no contractual necessity or legal obligation to collect it. In practice, this means your GA4 tag should only fire after a visitor accepts analytics cookies via a compliant consent banner — not on page load by default. A default GA4 installation with no consent mechanism is not defensible under the Act.
Why does GA4 show different data from my old Universal Analytics?
GA4 and Universal Analytics use different measurement models. GA4 is event-based — every interaction, including a page view, is an event — while Universal Analytics was session-based. This means session counts, bounce rates, and user counts are calculated differently and cannot be directly compared. GA4's "Engaged sessions" is not the same metric as Universal Analytics sessions, and since standard Universal Analytics properties stopped processing new hits on 1 July 2023 and the interface was decommissioned by July 2024, running both side-by-side to validate the gap is no longer possible.
Get Your GA4 Set Up Correctly From the Start
Growth Pulse Media configures GA4 as part of every web design engagement — ZAR currency, Africa/Johannesburg timezone, 14-month retention, key events mapped to your actual conversion actions, and POPIA-aligned consent mode. Based in Johannesburg, working across South Africa.
No obligation — we will get back to you within 24 hours.
Talk to Us About Your Website

