Pipe Burst — Privacy Policy
Bubba Productions LLC · Effective date: September 24, 2026
Pipe Burst ("the app") is a mobile puzzle game for Android and iOS,
published by Bubba Productions LLC ("we"). This policy explains what data the
app collects, why, how long it is kept, and the choices you have. The app
does not require an account. We never ask for your name, email address, phone
number, contacts, photos, or location.
Your anonymous player ID
On first launch the app signs in to Google Firebase Authentication
anonymously. This creates a random player ID that is not tied to your
name, email or phone number. We use the same ID to:
- store your leaderboard rows and Daily Shift entry;
- remember whether you bought Premium (it is also the customer ID we give
RevenueCat, see Purchases);
- link the analytics events and crash reports from your install, so we
can see, for example, how free and Premium players use the game.
You can find the ID in Settings → Player ID. Quote it when you
contact us. It stays the same until you uninstall the app or clear its data.
If you reinstall and restore a Premium purchase, we merge your old ID's
Premium status, callsign and leaderboard rows into the new ID.
Leaderboards, weekly boards and the Daily Shift
- Every finished run is submitted. When a continuous run
ends, the app sends the score and a short run summary to our server (Google
Cloud Functions). The summary is the map, score, distance, crossovers,
flushes, bonus and run length in seconds. The server re-checks it and
stores it in our database (Google Cloud Firestore). This happens for all
players, free and Premium. Your best score is shown on the public all-time
board and on this week's board for that map.
- Free players appear as "UNNAMED". The app shows each
row as a callsign and a score. If you have not set a callsign, your row
shows as UNNAMED. Each row is stored under your anonymous player ID.
- Callsign (Premium). Premium players can choose a
callsign of 3–16 characters. Our server filters it, then shows it publicly
on the boards. Choose a callsign that does not identify you. Your callsign
appears on the boards only while you own Premium. If Premium is refunded,
your rows show as UNNAMED again.
- Daily Shift. You get one attempt per day. The app sends
the date, your score and the run summary. For the Daily Shift the summary
also includes the level or tiles reached, whether you beat the shift, and
how long the run took. We store it on that day's public board and update
today's totals: number of plays, average score, and the best score with its
callsign. We also record against your player ID that today's attempt is
used.
- Anti-cheat records. For each accepted run we keep a
private copy of the run summary and the time it was sent. We use it only
to find and remove impossible scores, and the app never shows it. To block
rapid repeat submissions, we also keep the time of your last
submission.
- App Check. The app uses Firebase App Check to confirm
that score submissions come from a genuine copy of the app. It uses Google
Play Integrity on Android and Apple App Attest on iOS. These checks send a
device attestation token to Google or Apple. The token does not identify
you.
- Hide and report. Long-press any row to hide that player
or report their callsign. The hidden-player list is saved only on your
device. A hidden player is also left out of the rival line on your run
summary. A report stores the reported player's ID, the callsign on their
board row, the callsign you saw, the board, your player ID and the time, so
that we can review it. To limit spam, we also keep the time of your last
report.
Analytics and crash reports
- Gameplay analytics. Google Firebase Analytics receives
events about how you use the game, linked to your anonymous player ID:
- runs started and ended, with the map, score and run length;
- Daily Shift results and the map you picked;
- ad impressions, views of the Premium screen, and purchases;
- your answers to the consent and tracking prompts.
It also receives device information (model, OS version, language, app
version) and whether you own Premium.
- Crash reports. If the app crashes or hits an error,
Firebase Crashlytics receives a technical report tagged with your anonymous
player ID. The report contains the stack trace, device model, OS version
and app state.
- Both are on by default. You can turn both off at any time in
Settings → Diagnostics & Analytics.
- Analytics follows your consent. Firebase Analytics
starts with storage and advertising signals switched off. After the consent
prompt described below, it follows your answer (Google Consent Mode). Where
consent is not required, they are switched on. Where it is required and you
decline, Analytics does not store identifiers on your device and does not
use your data for advertising or ad personalization.
Ads, consent and tracking
- The free version shows banner and full-screen ads from
Google AdMob. AdMob may collect your IP address, your
device's advertising ID (the Android advertising ID or Apple's IDFA), and
which ads you see and tap. It uses this to serve, measure and personalize
ads and to prevent fraud.
- Consent. Where the law requires it (for example in the
EEA, the UK and Switzerland), the app asks for your consent through
Google's User Messaging Platform before it requests any ad. You can change
your answer at any time in Settings → Privacy Options. If you
decline, you may still see ads that are not personalized.
- iPhone and iPad. The app asks for permission to track
you through Apple's App Tracking Transparency prompt. If you choose "Ask
App Not to Track", your IDFA is not shared and is not used to personalize
ads.
- You can also reset or limit your advertising ID in your device
settings. Buying Premium removes all ads.
Purchases
Premium is a one-time purchase. Google Play processes it
on Android, and the Apple App Store processes it on iOS. We
use RevenueCat to validate the purchase, restore it on a new
install, and tell our server that your player ID owns Premium. RevenueCat
receives:
- your anonymous player ID;
- the purchase receipt and purchase history;
- basic device and app information.
We never see or store your payment details.
Data stored only on your device
- Your progress, best scores, settings, hidden-player list and today's
Daily Shift status are saved on your device. They are not uploaded, apart
from the scores described above.
- The app also remembers on your device whether you owned Premium the
last time the store confirmed it, so that it does not show ads before the
store answers at startup.
- Daily Shift reminder. If you turn it on in
Settings, the app schedules a notification on your device. No
server or push service is involved, and nothing is sent to us.
- If you use SHARE on a run summary, the text goes only to the app you
choose.
How long we keep data
- We keep leaderboard rows (all-time, weekly and daily), your callsign,
your Premium status and the anti-cheat records for as long as the game runs
its leaderboards, or until you ask us to delete them.
- We keep reports until we review them. After review we delete them,
unless we need them for moderation.
- We keep analytics data according to our Google Analytics retention
settings. Firebase Crashlytics keeps crash reports for a limited period,
currently 90 days.
- Google AdMob, Google Play, Apple and RevenueCat keep the data they hold
according to their own policies.
Third-party services
The app uses these service providers. Each has its own privacy
policy:
We do not sell your data. We share it with these providers only so they
can run the features described above.
Your choices and deletion
- Analytics & crash reporting: turn off in
Settings → Diagnostics & Analytics.
- Ad personalization: use Settings → Privacy
Options (where shown), the iOS tracking setting, or your device's
advertising ID settings.
- Leaderboard: scores are posted automatically. You can
hide other players and report callsigns in the game. To have your rows
removed, contact us (below).
- Deletion: email us your Player ID (from
Settings → Player ID) and your callsign, if you have one. We will
delete the data linked to that ID within 30 days: your leaderboard rows,
Daily Shift entries, callsign, anti-cheat records and Premium flag.
Uninstalling the app removes everything stored on your device. Deleting
your server data does not refund or cancel a purchase, and the store keeps
its own record of it.
Children
The app is not directed at children under 13, and we do not knowingly
collect personal information from children. If you believe a child has used
the app, contact us and we will delete the related data.
Changes
If this policy changes, we will post the updated version at this URL with
a new effective date.
Contact
Bubba Productions LLC — bubbaproductionsllc@gmail.com