Privacy Policy
Last updated:
Nubbin is a Screen Time pet. It reads how long you spend in apps you choose and turns that into a creature’s health. This page says exactly what happens to that information.
Your Screen Time never leaves your phone
The minutes you spend in the apps you selected are read on the device, by the operating system’s own Screen Time (iOS) or Usage Access (Android) mechanism, and written to a file inside the app’s own storage. They are never uploaded, never transmitted, and never shared with anyone, including us. There is no server that could receive them.
On iOS this is also enforced by Apple: the app is given opaque tokens for the apps you pick, not their names. Nubbin genuinely cannot learn which apps you chose.
There is no account
Nubbin has no sign-up, no login, no email address, no username and no user id. You cannot create an account because there is nothing to create one on. Uninstalling the app deletes everything it knows.
What does leave the device
Anonymous product analytics. Nubbin sends a small set of events to Google Firebase Analytics to understand whether the app works: which onboarding step people stop at, whether a permission was granted, whether the pet died, which rarity was made, whether a paywall was opened. Firebase also assigns an app instance identifier and records a few automatic events (first open, session start, app update) that we do not choose; that identifier is per install, is not linked to you, and is destroyed when you delete the app.
These events carry counts, enumerations and coarse buckets only. They never carry:
- the names or package identifiers of the apps you selected,
- the name you gave your pet,
- your exact minutes (only which band they fell into),
- any device identifier we created, any advertising identifier, or any location.
The full list of events is a single file in the source — lib/core/analytics/analytics_event.dart —
and that is deliberate: it is the whole surface, reviewable in one place. Debug builds of the app
report nothing at all.
There is no switch for this inside the app. Analytics and crash reporting come on together on the first launch of a release build, and Settings has no toggle to turn them back off. We would rather write that down than describe a choice you do not have — both stores are told the same thing, that this collection is required rather than optional. Deleting the app is the off switch, and it takes the identifier with it.
Purchases. If you buy Nubbin Pro, the purchase is handled by Apple or Google and by RevenueCat, which tells the app whether the subscription is active. Nubbin does not identify you to RevenueCat: it never calls the login API, so the subscription is bound to your store account and not to a person we know about. RevenueCat’s own privacy policy covers what it receives from the store.
Crash reports. If the app crashes, Firebase Crashlytics receives the stack trace, the device model, the OS version and the same kind of per-install identifier — a Firebase installation id — so that one crash can be told from a thousand. The report is scrubbed before it is sent: it carries no file contents, no pet name, no app selection and no minutes. Diagnostics you have enabled at the OS level go to Apple or Google in the normal way and never through us.
Push notifications. Firebase Messaging ships switched off. No token is minted and no network call is made until you have granted notification permission, and if you decline it stays off permanently. Even then it exists only so we can send an occasional announcement; every notification about your pet is generated on the device, by the device.
What we do not do
No ads, ever. No advertising identifiers. No third-party trackers. No data sold, rented, or shared with data brokers. No profile is built about you anywhere.
Notifications
Every notification about your pet — the nudge at three quarters of your budget, the shield, the melt, the thing it made overnight — is generated on the device, by the device, from a file on the device. Nothing about your usage is sent anywhere to produce one, and none of them stops arriving if you are offline.
The one thing that can arrive from elsewhere is the announcement described above, and only if you granted notifications: the same message for everyone, carrying nothing about you, and able to open only a screen the app already ships. There is still no server holding anything of yours.
Children
Nubbin asks for individual Screen Time authorization, never the parental-control variant, and is not directed at children.
Your choices
- Revoke Screen Time or Usage Access at any time in the OS settings. Nubbin will say it cannot feel you and stop counting.
- Turn intraday notifications off in Settings. Turn notifications off at the OS level and the announcement channel goes with them.
- Analytics and crash reporting have no in-app switch, and we are not going to pretend otherwise. If that is the deciding factor, do not install it.
- Delete the app. Everything goes with it, including the two per-install identifiers.