It’s a short list. We only ask for what actually makes the app work.
- Your email address: to create and secure your account (via Supabase Auth).
- What Sign in with Apple or Google hands us: if you choose one of those buttons instead of an email code, the provider returns a unique account identifier, your email address (Apple’s may be a private relay address), and your name if you let it through. That is the whole of it. We ask for no other permission, we never read your Gmail, contacts, calendar, files or photos, and we never post anything anywhere on your behalf. What comes back is stored in Supabase Auth purely to be your login, is used for nothing else, is never sold, shared, or used for advertising, and is deleted with the rest of your account.
- Your display name: the name your friends see, and the name that appears on anything you post to the public community board.
- Your daily log: whatever you type or say. If you use voice, the audio is transcribed to text and then discarded (see section 03).
- Your health score: the number your log generates, plus the average of your last 14 logged days.
- Anything you post to the community board: the feature requests, comments, and votes you choose to submit. These are public by design, carry your display name, and are handled by Canny (see section 03). Nothing on the board is private; your daily logs never appear there.
- Photos you attach to a day: up to six per day, if you choose to add them. The files live in a private bucket, and adding one grants your accepted friends’ accounts read access to it for the next 14 days. There is no per-photo private setting, so treat anything you attach as shared with your circle. Remove one and it comes off your day for everyone. Section 04 has the detail.
- Your spoken promise: the one line you read out loud when you set up. The audio goes to OpenAI to be turned into text, and that text goes to Anthropic to check you actually said the line (see section 03). Unlike a spoken daily log, the clip itself is then kept rather than discarded, in a private folder that only your own account can read. It goes when your account goes.
- Product analytics: Mr. Chud ships PostHog, and it is the only analytics SDK in the app. It records what you did, never what you wrote: named product events (opened the app, finished onboarding, logged a day, saw the paywall), the screen you’re on, your Supabase user id, your app version, and your platform. The PostHog SDK also attaches ordinary technical context to each event by itself: your device model, OS and OS version, app build, screen size, timezone and the SDK version. We have turned PostHog’s IP-based location lookup off, so no city, region, postcode or coordinates are ever derived from or stored against your events. The code enforces a hard no-content rule: every property that goes out is an enum, a boolean, a count, or a coarse band, so entry text, reflections, your Chud’s name, your username, your email and any token are structurally incapable of ending up in an event. Even your score goes in as a band (“60-79”), never the words behind it. It runs on our own PostHog project, it is used only to see which parts of the app work, and it is never used for advertising or joined with your activity in any other app or website.
- Crash diagnostics: Mr. Chud ships Sentry, and it is the only crash-reporting SDK in the app. When the app crashes or hits an error it sends Sentry the error and its stack trace, your app version and build, your device model, OS and OS version, and your Supabase user id, so a crash can be tied to a session rather than guessed at. Sentry is never sent a screenshot, a view hierarchy, or a session recording: a picture of this app is a journal entry, so all three are switched off in the code and are meant to stay off. It never receives the text of a log, your reflection, your Chud’s name, your username or your email. One thing we will not round off: the report travels over the internet to Sentry’s servers, so Sentry’s own systems see the IP address the request arrives from, and an IP address can be resolved to an approximate country and region. We never ask your device for its location, we never store a coordinate, and we do not use that region for anything. Separately, Apple and Google may hand us their own crash reports through App Store Connect and Play Console, and only if your device is set to share diagnostics with them.
That’s it. No GPS or precise location, no contacts access, no browsing history, no advertising identifiers, and no microphone access outside of the moments you choose to speak: a voice log, or your promise.
Mr. Chud