In plain language: We collect what we need to run the game, keep tournaments fair, and process purchases. We never sell your data. You choose your analytics and marketing preferences when you set up your account and can change them any time in Settings — marketing is off unless you switch it on. Rewarded ads are always optional. You can delete your account instantly, in-app. We comply with POPIA.
This Privacy Policy explains how MirrorState (Pty) Ltd collects, uses, stores, and protects your personal information in connection with the Clash of Castes mobile application.
We comply with the Protection of Personal Information Act 4 of 2013 (POPIA) and, where applicable, the General Data Protection Regulation (GDPR). By using Clash of Castes you acknowledge that you have read and understood this policy.
In accordance with POPIA Section 18, we notify you at the point of collection that the following categories of personal information are collected:
| Category | What We Collect | Required? |
|---|---|---|
| Account Data | Display name, email address, Google account ID or Apple ID (depending on your sign-in method), authentication details | Required |
| Game Data | Gameplay history, leaderboard records, career progress, Zark balances and transaction history, tournament participation | Required |
| Purchase Data | Subscription tier, purchase receipts and store transaction identifiers, processed via Apple, Google, and our subscription management provider. We never receive or store your card details | Required for purchases |
| Device Data | Device type, OS version, device identifier, push notification token, advertising identifier, network performance indicators | Required |
| Location Data | Precise GPS position, captured only at tournament registration, used solely for fair-play (anti-collusion) verification | Optional — controlled by your device's OS permission |
| Analytics Data | Gameplay patterns, session durations, feature usage (with your consent only) | Optional — consent required |
| Demographic Data | Age group (bracket only, never birth year), gender, province, home language | Voluntary — no penalty for skipping |
Important: We never store your birth year. During onboarding your birth year is used only to calculate your age group (e.g. “25–34”) and then permanently discarded.
| Purpose | Legal Basis (POPIA) |
|---|---|
| Game operation — running the game, matchmaking, tournaments, leaderboards, tracking progress | Section 11(1)(b) — contractual necessity |
| Authentication — verifying identity via Google Sign-In or Sign in with Apple | Section 11(1)(b) — contractual necessity |
| Purchases and subscriptions — processing purchases, managing subscription entitlements, crediting Zark allowances | Section 11(1)(b) — contractual necessity |
| Push notifications — game invitations, tournament alerts, and service messages | Section 11(1)(b) and 11(1)(f) |
| Fair play — anti-collusion checks, including location verification at tournament registration | Section 11(1)(f) — legitimate interest |
| Advertising — serving optional rewarded advertisements | Section 11(1)(f) — legitimate interest, with device-level controls (see Section 06) |
| Analytics and app improvement — understanding how the game is used to improve features and balance gameplay | Section 11(1)(a) — explicit consent. Further processing under Section 15(3)(e) |
| Marketing communications | Section 11(1)(a) consent, in accordance with Section 69 (direct marketing). Opt out any time |
| Legal and tax compliance | Section 11(1)(c) — legal obligation |
| Security — fraud detection, abuse prevention | Section 11(1)(f) — legitimate interest |
You choose your analytics preference when you set up your account. Choosing “Sharp, count me in” grants consent; choosing “Play with basic settings” declines it. Usage analytics (Firebase Analytics) is only collected where you have granted consent, and the toggle in Settings → Privacy controls collection on your device at any time — switching it off stops analytics collection, not just our record of your preference. Withdrawing consent has no impact on your gameplay.
Crash diagnostics (Firebase Crashlytics) are collected as strictly necessary to detect crashes and keep the game stable. Crash reports contain technical device and error information, not gameplay analytics.
Where you provide analytics consent, data is processed using de-identification, pseudonymisation, aggregation, and access controls to reduce the risk of identifying individuals. In accordance with POPIA Section 14(2), de-identified or aggregated data may be retained for historical and statistical purposes even after account deletion.
Clash of Castes shows optional rewarded advertisements (via Google AdMob) — for example, watching an ad to earn a Zark bailout. Ads are never forced mid-game; you choose whether to watch them.
To serve and measure ads, your device's advertising identifier (Google Advertising ID on Android, IDFA on iOS where permitted) is shared with Google. You can reset or limit your advertising identifier at any time in your device settings (Android: Settings → Google → Ads; iOS: Settings → Privacy & Security → Tracking).
We do not run third-party ad tracking beyond what is required to serve and measure the rewarded ads described here, and we never sell your personal information to advertisers.
Tournaments are competitive, with entry and prizes in Zarks, so we run anti-collusion checks to keep them fair. When you register for a tournament, the app requests your precise GPS position once and sends it with your registration. Player proximity is one signal used to detect coordinated play between accounts.
Location is never collected in the background, never used for advertising or profiling, and is not requested outside tournament registration. You control the permission at OS level and may decline it; the app will continue without your position.
All purchases are billed by Apple (App Store) or Google (Google Play). We never see or store your card number or banking details — we receive purchase receipts and store transaction identifiers only.
We use RevenueCat, Inc. as our subscription management provider to validate receipts and manage subscription entitlements. RevenueCat assigns an app user identifier to your account when you sign in, which links your purchases to your account across devices.
Zarks are the in-game virtual currency. Your Zark balance and transaction history form part of your Game Data. Zark transaction records are financial records for the purposes of South African tax and financial legislation and are retained as described in Section 12.
Clash of Castes is strictly for players aged 18 and older. There are no exceptions.
Age is verified through a mandatory self-declaration at registration. Any account identified as belonging to a user under 18 will be deleted immediately, in line with our obligations regarding children's personal information under POPIA Section 35.
We share personal information with the following third parties strictly to the extent necessary. We do not sell, rent, or trade your personal information.
| Provider | Country | Purpose | Safeguard |
|---|---|---|---|
| Apple Inc | USA | App distribution, Sign in with Apple, App Store billing | Apple Developer Agreement |
| Google LLC | USA | App distribution and Google Play billing, Google Sign-In, Firebase (analytics, crash diagnostics, push notifications, storage), AdMob advertising | Google Cloud & Ads Data Processing Terms |
| RevenueCat, Inc | USA | Purchase receipt validation and subscription management | RevenueCat Data Processing Agreement |
| Cloud hosting provider | European Union | Game server hosting and data storage | GDPR-compliant data processing agreement |
| Web infrastructure provider | USA (global CDN) | Website security, DNS, and traffic routing | GDPR-compliant privacy policy |
Personal information is transferred outside South Africa to the United States of America (app distribution, authentication, advertising, subscription management, and web infrastructure) and the European Union (game server hosting and data storage). These transfers are lawful under POPIA Section 72 on the following grounds:
We do not transfer more personal information than is necessary for these purposes, and we do not sell your personal information to any party in any country.
| Data Category | Retention Period |
|---|---|
| Account and game identity data | Immediately and irreversibly deleted or de-identified upon account deletion |
| Financial and Zark transaction records | Retained in pseudonymised (de-identified) form for 5 years, as required by the Income Tax Act and financial legislation |
| Analytics and usage data | May be retained in de-identified or aggregated form for app improvement purposes (POPIA Section 14(2)) |
| Fraud and security records | Retained for as long as required to prevent fraud and abuse, and as required by law |
| Push notification token | Deleted on logout or account deletion |
| Server and security logs | 90 days rolling |
Account deletion is immediate and irreversible. When you delete your account, your personal data is immediately and irreversibly deleted or de-identified. Financial transaction records are retained in pseudonymised form — stripped of your identity — only where the law requires it (POPIA Section 11(1)(c)).
The Clash of Castes mobile application does not use browser cookies. Our web properties (www.clashofcastes.com) may use functional cookies for security purposes (bot detection, DDoS protection). These are strictly necessary and do not require consent. Advertising identifiers used in the app are described in Section 06.
In the event of a data breach likely to result in material harm, we will notify the South African Information Regulator and affected users as soon as reasonably possible, in accordance with POPIA Section 22.
Under POPIA you have the right to:
To exercise any of these rights, contact us at admin@mirrorstate.co.za. We will respond within 30 days. Our PAIA Manual, describing how to formally request access to records, is available at www.mirrorstate.co.za/paia.
This Privacy Policy was last updated on 26 August 2026. Material changes will trigger a re-consent flow within the app. The current version is always available at www.clashofcastes.com/privacy.