Privacy Policy
Effective 16 August 2026
The short version
- Your raw video never leaves your phone. All pose analysis runs on-device. Only derived movement measurements and a small set of still keyframes (with a skeleton drawn on them) are sent to my servers to generate coaching feedback.
- You don't need to create an account to start — the app creates an anonymous account on your device.
- I don't sell your data, and there are no ads.
- You can delete your account and every piece of associated data from inside the app at any time.
What I collect
- Account: an anonymous account identifier created on first launch. If you later sign in (with Apple or Google), the identifier from that sign-in.
- Profile answers you optionally provide during onboarding: self-rating, goal, play frequency, most frustrating shot, paddle hand. All questions are skippable. A short text summary of these answers is sent with each analysis so the coaching can address you specifically.
- Analysis data: numeric movement measurements computed on your device (joint angles, timing, scores), the resulting coaching report, and up to 10 still keyframe images per analysis showing your position with a skeleton overlay. The video itself is never uploaded.
- Coach AI conversations, if you use them: your questions, the coach's answers, any thumbs rating you give, and the processing cost of each message. Conversations are stored so the thread is there when you come back.
- Share cards you choose to create: a single image of your result. See Where data lives below — these are stored differently from everything else, on purpose.
- Sign in with Apple: if you use it, a token from Apple that exists for one reason — so that deleting your account can also revoke the app's access on Apple's side rather than leaving it dangling.
- Purchase state via RevenueCat and Apple: which subscription or credit pack you hold. I never see your payment details — Apple processes all payments.
- Product analytics and crash reports (PostHog and Sentry): which screens are used and what crashed, without advertising identifiers and without tracking you across other apps.
How coaching is generated
Your measurements and keyframes are sent to an AI model (Google's Gemini API) to write the coaching text. Feedback is technique guidance only — not medical, health, or injury advice, and any skill-level range shown is an unofficial, form-based estimate, not an official DUPR rating.
Where data lives
Analysis results, conversations and account data are stored with Supabase. Keyframe images live in private storage that only your account can read.
Share cards are the exception, and it is deliberate. A share card is meant to be posted, so it is stored at a public web address — anyone with the exact link can open it, without signing in. The address is long and random, and I never publish it, but treat a share card the way you would any link you share. Share cards are deleted when you delete your account.
Third-party processors: Supabase (hosting and database), Google (Gemini API — coaching text generation), Apple and RevenueCat (purchases), PostHog (analytics), Sentry (crash reporting), and Vercel (this website only). Each processes data only to provide its service to me.
Retention and deletion
Your data is kept while your account exists so your history and progress work. Deleting your account (in the app: Settings → Delete account & data) permanently removes your account, analyses, reports, keyframes, share cards, conversations and purchase records from my systems. Apple retains its own purchase records per its policies.
One deliberate exception, so it is disclosed rather than discovered: when you delete a single Coach AI conversation, the words are erased immediately but a stripped record of what that conversation cost to run is kept. It holds no message content. It exists because the app is capped by a monthly processing budget, and a cost record that could be deleted would let that cap be bypassed. It is removed when you delete your account.
Changes
If this policy changes materially I'll update the effective date here and note it in the app.
Contact
Email brendanloalt@gmail.com — see Support.