Privacy Policy
Last updated: 2026-10-31
Ritualbit ("we", "us") makes a portfolio of small daily casual games (the "Games"), including this one, and Crew Life, a street-dance game with its own section below. This policy explains what data the Games collect, why, and the choices you have. We do not require an account, and we never ask for your name, email address, or any other directly-identifying information to play.
Summary
- You can play every Game without creating an account. - We store your local progress (streaks, coins, settings, purchases) only on your device. - If you view a leaderboard or league, an anonymous random player id, a display name the Game generates for you (two random words and a number, never typed by you) and your scores are sent to our backend so it can rank you against other players. There is nothing you can write that other players see. - We show ads through Google AdMob, with a consent choice (via Google's User Messaging Platform) before any ad personalization happens in regions that require it. - We use PostHog for anonymous product analytics and Sentry for crash reports. Both are off unless the developer has configured them; even when configured, PostHog additionally stays off until you say yes — in the EU/UK we only turn it on once you've played enough to be asked and you opt in, and it's always off if you're under 16. Sentry crash reports are a different kind of thing (fixing bugs, not tracking usage) and stay on whenever configured, for every age. - In-app purchases (removing ads) are handled by RevenueCat and the App Store / Play Store; we never see or store your payment details. - We do not knowingly collect personal information from children, and ads shown to a player who tells us they are under 16 are always non-personalized.
Data we store on your device
The Games use on-device local storage (MMKV) for:
- Game progress: scores, streaks, coins, unlocked themes, missions. - Settings: sound, haptics, the age-gate answer, ad-consent state, and your analytics-sharing choice (see "Analytics and crash reporting" below). - A randomly generated, anonymous player id, used only to identify your scores to our backend (see below) — it is not tied to your name, email, or any other real-world identity.
This data never leaves your device unless one of the features below sends part of it to our backend or a third-party service.
Data sent to our backend (leaderboards, daily challenges, anti-cheat)
If you view a leaderboard, a league, or submit a daily/practice score, the Games send:
- Your anonymous player id and a display name the Game generates for you (two random words and a number, for example "Brisk Otter 42"). You can ask for a new random name at any time, but you can never type one, so no text you write is ever shown to other players. - The score, the puzzle/run seed, and a compact replay of your inputs, so we can verify the top scores on a leaderboard were not tampered with (a server-side re-simulation, entirely automated).
This is handled by our Supabase backend. We do not sell this data, and it is never linked to your email, phone number, or any other directly-identifying information, because we never collect those in the first place.
Advertising
The Games show ads through Google AdMob (interstitial, rewarded, and app-open ad formats) to support free play. Before showing any ad, in regions where it's required, we use Google's User Messaging Platform (UMP) to ask for your consent to ad personalization. You can change your choice at any time from the Settings sheet's "Manage ad consent" row.
On iOS, if you are old enough (see "Children's data" below) and consent is otherwise required, we may also ask for App Tracking Transparency (ATT) permission before showing personalized ads; declining or skipping this always falls back to non-personalized ads.
AdMob and its partners may use device identifiers (like the advertising ID/IDFA, only when you've allowed tracking) to select and measure ads. See Google's own privacy policy for how AdMob handles this data: https://policies.google.com/privacy
Analytics and crash reporting
If the developer has configured them, the Games may use:
- PostHog — anonymous product analytics (which screens are used, which features are played), keyed to your anonymous player id, never your real identity. This is where your choice matters: - If you're under 16, PostHog is always off — no exceptions, regardless of region or any other setting. - If you're 16 or older and in a region where consent is legally required (the EU/UK, decided the same way as the ad-consent check above, via Google's User Messaging Platform), PostHog stays off by default. Once you've played a Game a little — more than a few runs, or a few minutes — we ask, once, whether you're willing to share anonymous usage data. You can say no, and you can change your mind at any time from the Settings sheet's "Share anonymous usage data" toggle. - Outside a consent-required region, PostHog defaults to on (still anonymous, still gated by the same under-16 rule above) but the same Settings toggle lets you turn it off at any time. - Sentry — crash and error reports, so we can fix bugs. This is a different kind of data collection: it's about keeping the Games working, not about tracking how you play, so it is NOT gated by the analytics choice above and stays on (for every age) whenever the developer has configured it. Crash reports may include a stack trace and basic device information (OS version, app version) but never anything you typed or any payment information.
Both services are entirely optional at the developer-configuration level; a build of the Games with no analytics/crash keys configured sends nothing to either service.
In-app purchases
Removing ads is handled through RevenueCat, layered on top of Apple's App Store or Google's Play Store in-app purchase systems. We never see or store your card number or other payment details — that's handled entirely by Apple/Google. RevenueCat receives your anonymous player id (so your purchase follows you if you play more than one of our Games) and your purchase receipt, to confirm your entitlement.
Children's data
The Games are suitable for a general audience, including children, and we comply with COPPA (US) and equivalent regulations elsewhere.
On first launch, every Game asks which birth-year range you fall in (or "Prefer not to say"), stored only on your device — we never send it to our servers. This is used only to decide what kind of ads to show:
- If you tell us you're under 13, or you choose "Prefer not to say", every ad request is tagged as directed at children, only non-personalized ads are requested, and we never show the ATT tracking prompt. - If you tell us you're 13-15, ads are tagged as coming from a user under the local age of digital consent, are still non-personalized, and we never show the ATT tracking prompt. - If you tell us you're 16 or older, normal ad personalization and the ATT prompt (iOS only) may apply, subject to your own consent choices.
We do not knowingly collect any personal information from children beyond the anonymous, locally-stored data described above.
Your choices
- Ad consent: change it any time via Settings → "Manage ad consent". - Analytics sharing: change it any time via Settings → "Share anonymous usage data" (shown once you're old enough — see "Analytics and crash reporting" above). Turning it off stops new PostHog events immediately; crash reporting (Sentry) is unaffected, since it isn't gated by this choice. - Local data: uninstalling a Game deletes all of its locally stored data from your device. - Server-side data (erasure): email us (below) with the friend code shown in the Friends tab of any Game's leaderboard, and we will delete your anonymous profile, display name, scores, replays, league entries, challenges and friendships within 30 days. The friend code is the only way we can find your data, because we hold nothing else that identifies you.
Crew Life
Crew Life, our street-dance game, works differently from the arcade Games above, and this section is what applies to it. It has no ads, no analytics and no crash-reporting services, and it doesn't ask your age. Crew Life is not directed at children under 13, and we don't knowingly collect personal information from them; because other players can see the dancer name you choose, a younger child should play with a parent's permission and use a made-up name.
- Your account: Crew Life creates an anonymous account the first time you open it. We never ask for your name, email address or phone number. - What we store on our server: your dancer (the dancer name you choose, which other players can see, and your progress in the game), your battles, your time zone (so your day resets at 04:00 where you are), your Game Center player ID if you're signed in to Game Center (so you keep your dancer when you change phones), your App Store purchases (to check them with Apple and give you what you bought; we never see your payment details), and a notification token if you allow notifications (to tell you your jam results and call-outs). - Names: dancer names pass a filter, and other players can report a name; a name reported by several players is reset. - Where: our Supabase backend, hosted in the EU (Ireland). We don't sell or share this data with anyone. - Deleting it: in Crew Life, Settings (the gear on Today) → "Delete my dancer" deletes your account and everything linked to it straight away; in other players' battle histories your dancer's name is replaced with "Former dancer". We keep a record of your App Store purchases (Apple's transaction ID and what it was for), no longer linked to you, so the same purchase can't be redeemed twice and refunds can be handled. You can also email us your crew code.
Changes to this policy
We may update this policy from time to time; the "Last updated" date above will reflect the latest revision.
Contact
Questions about this policy? Email [email protected].