POLYBALL PRIVACY POLICY

Effective 15 August 2026
App: PolyBall (com.polyball.game), published by Abdallah El Belkasy (solo developer).
Contact: abdaishere@gmail.com

THE SHORT VERSION

PolyBall uses the internet for exactly four things: showing ads through Google AdMob, processing optional purchases through Google Play, anonymous usage statistics through PostHog (you can turn these off), and the optional online leaderboard. The game still has no accounts, no sign-in, and collects no personal data of its own - the online features run on a random install identifier and a generated player name, never anything you typed. This policy explains exactly what each system does and how you control it.

WHAT CHANGED FROM THE PREVIOUS VERSION

Earlier versions of PolyBall had no internet permission at all. Later versions added it for ads and then for in-app purchases through Google Play. This version adds two more online features, both described in their own sections below: anonymous analytics (PostHog, with an off switch in Settings > DATA) and the online leaderboard (generated names only). Your saves and the optional local gameplay log remain local-only, exactly as before.

WHAT THE GAME STORES ON YOUR DEVICE

1. Save file (polyball.cfg, app-private storage): your settings (audio, haptics, colour-blind mode, reduced motion, controls mode, graphics quality), high scores and per-mode bests, coin and gem balance, owned cosmetics, achievement and streak progress. No name, no email, no account. The game has no sign-in of any kind.

2. Local gameplay log (beta_telemetry.jsonl, app-private storage), only if you switch TELEMETRY on: a record of your runs used to balance the game (per-catch and per-miss timing and accuracy, score, combo, mode, difficulty, coin and gem earns and spends inside the game, the app version, the OS name, and your device's model name). Each install generates a random install id (16 random bytes) so runs from one device can be grouped. That id is created on your device, is not derived from anything about you or your hardware, and is not linked to your identity. The log is capped at about 8 MB and old runs are trimmed automatically. This log is never uploaded. It leaves the device only through the manual export described below.

You can turn the recording off at any time: Settings > DATA > TELEMETRY. You can erase all progress data via Settings > DATA > Reset progress.

ADS (GOOGLE ADMOB)

This version shows ads through Google AdMob, a service of Google LLC. Ads appear in four forms: optional rewarded videos you choose to watch in exchange for in-game bonuses; full-screen ads between runs, never during one, at most one a minute and ten a session; a banner on the results screen; and a full-screen ad when you return to the app after two minutes or more away, never over a run and at most three a session. The Remove Ads purchase removes the interstitial, banner and app-open ads permanently; any other purchase pauses those three for 30 days. Rewarded videos always remain optional and are never shown to you unasked.

To serve and measure ads, the Google Mobile Ads SDK (Next-Gen) collects and shares with Google: your device's advertising ID, IP address (which implies coarse location), device information (model, OS version), and app interaction data (such as ad views and taps). This happens under Google's own privacy policy: https://policies.google.com/privacy How Google uses this data: https://policies.google.com/technologies/partner-sites

IN-APP PURCHASES (GOOGLE PLAY)

PolyBall offers a small set of optional purchases (gem packs, coin packs, a starter pack, and Remove Ads), all processed by Google Play's billing system. Every purchase is a fixed, listed price and there are no paid random rewards of any kind. Nothing purchasable affects your rank: coins can buy Combo Shields, which absorb one fatal miss during a run, and any run a shield or an ad revive touched is marked assisted and is never submitted to the leaderboard. The app never sees or stores your payment details; Google processes the payment under its own terms and privacy policy. On your device the game stores only which products you own and, in the local gameplay log (if you enabled it), the product id, price and currency of a completed purchase. Ownership is re-checked against your Google Play account, which is how purchases survive a reinstall: Settings > DATA > RESTORE PURCHASES re-applies them, and Settings > DATA > REFUNDS opens your Google Play order history. Refunded purchases are revoked the same way.

CONSENT AND YOUR CHOICES

On first launch (and again whenever regulations require), a consent form asks how ads may use your data. In the European Economic Area and the UK this is the Google-certified consent flow required by GDPR. You can change your choice at any time: Settings > DATA > MANAGE AD CONSENT. Where you decline personalized ads, ads still appear but are contextual (based on the app and your general region, not on a profile of you). You can also reset your device's advertising ID or opt out of personalization in your device's Google settings.

WHAT LEAVES YOUR DEVICE

Only the traffic described in this policy: the ad and Google Play billing traffic above, plus the anonymous analytics events and optional leaderboard submissions described in the ANALYTICS and LEADERBOARD sections below. There are no crash reporters and no other third-party SDKs. The local gameplay log itself is never transmitted.

Two ways your own data can leave the device, both controlled by you: - Manual export. Settings > DATA > Export beta data copies the gameplay log to your Downloads folder as JSONL and CSV files. Nothing is uploaded. The files only reach the developer if you choose to send them. - Android Auto Backup. Android may include the app's data in the device backup tied to your own Google account. That backup is operated by Google under your Google account settings, and the developer has no access to it.

CHILDREN

PolyBall is not directed at children. It is a simple arcade game with no chat, no user-generated content, and no external links inside gameplay. The game itself collects no personal data from anyone. Ad serving follows the consent rules above, including the regional consent requirements that apply to users under the age of digital consent.

PERMISSIONS

- INTERNET: used by the ad system, Google Play billing, the anonymous analytics, and the online leaderboard - nothing else. - VIBRATE: used only for optional haptic feedback (toggle in Settings). It accesses no data. - Writing the manual export may prompt for storage access on older Android versions. It is used only to place the export files in your Downloads folder.

ANALYTICS

The game sends anonymous usage statistics (which screens are used, how runs end, frame-rate tier) to PostHog, our analytics processor, over HTTPS. These are tied to a random install identifier generated on your device - never your name, email, advertising ID, or anything you typed. You can turn this off any time in Settings > DATA > ANALYTICS. Clearing the app's data resets the identifier.

LEADERBOARD (when available) If a ranked run sets a new best, the game transmits exactly one row: that score, the mode and the side count the run was played at, your GENERATED player name (names you type yourself are never transmitted - there is no code path that can send one), the plate style, title and title font you have equipped, and the same random install identifier, so your row can be updated rather than duplicated. Nothing else is sent. The row appears on other players' screens. Submissions happen only while your player name is a generated one: set a name of your own and nothing is submitted from then on.

BROWSER VERSION

PolyBall also runs in a web browser as a WebAssembly build. For data it behaves exactly like the Android app: the same anonymous PostHog analytics, on by default with the same off switch in Settings > DATA > ANALYTICS, and the same single leaderboard row on a new ranked best, keyed to a random install identifier your browser stores. It shows no ads and offers no purchases at all, because the AdMob and Google Play billing components are Android-only and are absent from that build. Clearing the site data for that page in your browser erases the local save and resets the identifier.

DATA DELETION

The game's own data lives on your device: Settings > DATA > Reset progress erases progress, and uninstalling the app removes everything the game stored locally. Two things can exist server-side: your leaderboard row (install identifier, generated name, and each best score with its mode, side count and the plate, title and title font shown beside it) and the anonymous analytics events. Resetting or uninstalling does not remove those - email abdaishere@gmail.com and they will be deleted; the deletion page linked from the store listing explains the steps. Data collected by Google for ad serving is handled under Google's privacy policy and controls (advertising ID reset and ad personalization settings on your device).

CHANGES

The analytics and leaderboard features described above shipped with this version of the policy. If a future version adds anything new that transmits data, this policy will be updated first and the change will be visible in the app's store listing before it applies.

CONTACT

abdaishere@gmail.com