<a class="eb-image-viewport"></a>

#  SA Online Gambling Surges to R1.14-Trillion: A Look at the Industry’s Scale and Impact

  Monday, 14 July 2025

![SA Online Gambling Surges to R1.14-Trillion: A Look at the
Industry’s Scale and Impact](https://www.southafricancasinos.co.za/images/saflag-logo.webp)In just four years, [online gambling in South Africa](https://www.southafricancasinos.co.za/ "online gambling in South Africa") has grown by 550%, reaching a staggering turnover of R1.14 trillion in the 2023/24 financial year. That’s nearly 17% of the country’s GDP. This figure, sourced from officially licensed operators, excludes offshore platforms and therefore doesn’t fully capture the extent of gambling activity.

 Much of this growth has been attributed to a weak regulatory environment, aggressive marketing practices, and an increasingly digitised gambling ecosystem. Lockdowns during the COVID-19 pandemic accelerated the shift online, while platforms like Betway and [Hollywoodbets](https://www.southafricancasinos.co.za/sportsbetting/hollywoodbets.html "Hollywoodbets") have taken dominant positions in the market, reportedly controlling up to 75% of the betting sector.

---

Although this booming industry now rivals major sectors like mining in turnover, it employs far fewer people and is largely extractive in nature, with significant profits flowing to offshore beneficiaries.

## Who Profits from SA’s Gambling Boom?

While South African gamblers collectively risked over a trillion rand in the past financial year, the rewards have largely gone to a small group of offshore-linked entities. Betway, operated under the parent company Super Group, earned nearly R11 billion in revenue from South Africa alone in 2024, according to the group’s own annual report.

A significant portion of these profits ends up with trusts connected to South African expats such as Martin Moshal and Neal Menashe. In 2024, Super Group declared dividends of roughly R1.7 billion, with around R1.1 billion estimated to flow to these trusts. Furthermore, Betway has acquired intellectual property from a related company, Apricot Investments, for over R2 billion—yet another mechanism through which profits are redirected abroad.

[Hollywoodbets](https://www.southafricancasinos.co.za/sportsbetting/hollywoodbets.html "Hollywoodbets"), though privately owned and less transparent in its financial reporting, is estimated to have earned R16 billion in gross gambling revenue. Together, these two firms represent the majority of the [South African online betting](https://www.southafricancasinos.co.za/sportsbetting.html "South African online betting") market.

## Social Consequences and Regulatory Gaps

Despite industry claims of contributing to sports sponsorship, media revenue, and tax income, concerns over the social costs of gambling have grown. Research shows that low-income South Africans are the most vulnerable, with many using gambling as a way to “change their lives” rather than as entertainment. According to one survey, 63% of gamblers spend money they can't truly afford to lose.

Cases like that of Claude Gouws—who was allegedly paid R150,000 by Betway to withdraw a complaint about [gambling addiction](https://www.southafricancasinos.co.za/responsible-gambling-guide.html "gambling addiction")—highlight serious ethical concerns. Although the courts stopped short of labelling Betway's actions criminal, they raised troubling questions about accountability and player protection.
<div data-id="1" 
	class="eb-inst eb-hide eb-custom eb-1 "
	data-options='{"trigger":"onPageLoad","trigger_selector":"","delay":100,"early_trigger":false,"scroll_depth":"percentage","scroll_depth_value":5,"firing_frequency":1,"reverse_scroll_close":false,"threshold":0,"close_out_viewport":false,"exit_timer":1000,"idle_time":10000,"close_on_esc":false,"animation_open":"slideInLeft","animation_close":"fadeOut","animation_duration":0,"disable_page_scroll":false,"test_mode":false,"debug":false,"ga_tracking":false,"ga_tracking_id":0,"ga_tracking_event_category":"EngageBox","ga_tracking_event_label":"Box #1 - Convert Form","auto_focus":false}'
	data-type='popup'
	>

	<button type="button" data-ebox-cmd="close" class="eb-close placement-outside" aria-label="Close">
	<img alt="close popup button" />
	<span aria-hidden="true">&times;</span>
</button>
	<div class="eb-dialog " role="dialog" aria-modal="true" id="dialog1" aria-label="dialog1">
		
		<button type="button" data-ebox-cmd="close" class="eb-close placement-inside" aria-label="Close">
	<img alt="close popup button" />
	<span aria-hidden="true">&times;</span>
</button>	
		<div class="eb-container">
						<div class="eb-content">
				<div class="eb">
<p class="eb-p" style="text-align: center;"><div id="cf_3" class="convertforms cf cf-img-above cf-form-bottom cf-success-hideform  cf-hasLabels   cf-labelpos-top" data-id="3">
	<form name="cf3" id="cf3" method="post" action="#">
				<div class="cf-content-wrap cf-col-16 ">
			<div class="cf-content cf-col-16">
												<div class="cf-content-text cf-col " >
					<p><span style="color: brown; font-weight: bold;">EXCLUSIVE Free Casino Bonus offers delivered to your inbox &amp; mobile! </span></p>				</div>
							</div>
		</div>
				<div class="cf-form-wrap cf-col-16 " style="background-color:none">
			<div class="cf-response" role="status" aria-live="polite" aria-atomic="true" id="cf_3_response"></div>
			
							<div class="cf-fields">
					<div class="cf-control-group " data-key="1" data-name="Name" data-type="text" data-required>
		<div class="cf-control-input">
		<input type="text" name="cf[Name]" id="form3_name"
	
	
			required
		aria-required="true"
	
			placeholder="Enter Your Name"
	
	
	
	
	
	
	
	
	class="cf-input  name_form"
>	</div>
</div>
 <div class="cf-control-group " data-key="0" data-name="Email" data-type="email" data-required>
		<div class="cf-control-input">
		<input type="email" name="cf[Email]" id="form3_email"
	
	
			required
		aria-required="true"
	
			placeholder="Enter Your Email Address"
	
	
	
	
	
	
	
	
	class="cf-input  "
>	</div>
</div>
 <div class="cf-control-group " data-key="9" data-name="Mobile Number" data-type="tel" data-required>
		<div class="cf-control-input">
		<input type="tel" name="cf[Mobile Number]" id="form3_mobile-number"
	
	
			required
		aria-required="true"
	
			placeholder="Mobile Number"
	
	
	
	
	
	
	
	
	class="cf-input  "
>	</div>
</div>
 <fieldset class="cf-control-group .convertforms .cf-control-group{border:0px;}" data-key="10" data-name="checkbox_10" data-type="checkbox" data-required>
		<div class="cf-control-input">
		<div class="cf-list ">
			<div class="cf-checkbox-group  cf-checkbox-group-required ">
			<input type="checkbox" name="cf[checkbox_10][]" id="form3_checkbox10_0"
				value="I am 18+"
				data-calc-value="I am 18+"

				
									required
					aria-required="true"
				
				class="cf-input  "
			>
			<label class="cf-label" for="form3_checkbox10_0">
				I am 18+			</label>
		</div>
			<div class="cf-checkbox-group  cf-checkbox-group-required ">
			<input type="checkbox" name="cf[checkbox_10][]" id="form3_checkbox10_1"
				value="I agree with T&amp;Cs and Privacy Policy"
				data-calc-value="I agree with T&amp;Cs and Privacy Policy"

				
									required
					aria-required="true"
				
				class="cf-input  "
			>
			<label class="cf-label" for="form3_checkbox10_1">
				I agree with T&Cs and Privacy Policy			</label>
		</div>
	</div>	</div>
</fieldset>
 <div class="cf-control-group " data-key="2" data-name="submit_2" data-type="submit" >
		<div class="cf-control-input">
		
<div class="cf-text-left">
    <button type="submit" class="cf-btn cf-width-auto ">
        <span class="cf-btn-text">SUBMIT</span>
        <span class="cf-spinner-container">
            <span class="cf-spinner">
                <span class="bounce1" role="presentation"></span>
                <span class="bounce2" role="presentation"></span>
                <span class="bounce3" role="presentation"></span>
            </span>
        </span>
    </button>
</div>

	</div>
</div>
				</div>
			
					</div>

		<input type="hidden" name="cf[form_id]" value="3">

		<input type="hidden" name="a875a327f991d6add7ffadb90663e196" value="1">
					<div class="cf-field-hp">
								<label for="cf-field-6a680d4c4b067" class="cf-label">Last Name</label>
				<input type="text" name="cf[hnpt]" id="cf-field-6a680d4c4b067" autocomplete="off" class="cf-input"/>
			</div>
		
	</form>
	</div></p>
</div>			</div>
		</div>
	</div>	
</div>
