Camera + voice stay on your device. Pose detection happens locally via TensorFlow.js. Voice meal logging transcribes audio in your browser; only the resulting text leaves your device.
Sign-in is optional. Without an account, all your data lives only on your device's localStorage.
When you sign in, your workouts, meals, breath sessions, XP, achievements, and preferences are synced to Supabase so they follow you across devices. You can delete everything at any time from Profile → Delete Account.
We never sell your data. No advertisers. No tracking cookies. No third-party analytics SDKs in the app. Our anonymous usage counters are aggregate-only and roll up after 90 days.
If anything in this policy is unclear, email goodrepsapp@gmail.com and we'll explain.
GoodReps is an AI-powered fitness app operated by GoodReps App, Inc. ("GoodReps", "we", "us"). The app, the website at goodrepsapp.com, and the API at goodrepsapp.com/api/* are all part of the same service.
For privacy questions, data requests, or to exercise any of your rights below, contact: goodrepsapp@gmail.com
localStorage. They are not transmitted anywhere. Clearing your browser data deletes them permanently.GoodReps uses a small set of well-known third-party processors. Each one only receives the minimum data needed to do its job. Each has its own privacy policy linked below — if you'd rather not have your data sent to a particular processor, the alternative is to not use the feature that uses it.
| Processor | Used for | What it receives |
|---|---|---|
| Supabase privacy | Magic-link auth, server-side data sync, buddy pairs, user profile | Email, workout/food/breath/gamification/prefs rows, buddy invites + pairings, user profile fields. Encrypted at rest. |
| Stripe privacy | Pro purchases (one-time + subscription), customer portal, subscription lifecycle | Card data (direct to Stripe, never touches us), billing email, customer ID, subscription state, license key in customer metadata. |
| Anthropic (Claude API) privacy | GoodReps Coach (free + Pro), voice meal parsing, photo meal parsing | Your Coach prompt + small context summary; voice meal transcript text; meal photos (sent once for parsing, never stored by GoodReps). Processed transiently. Subject to Anthropic API DPA — not used to train Anthropic models. |
| Resend privacy | Email delivery: Pro receipts, buddy invites, admin pipeline notifications | Recipient email, subject, body for those transactional emails. |
| Vercel privacy | App + API hosting + edge functions | IP address (transient), HTTP request metadata, edge logs. |
| Vercel KV / Upstash Redis privacy | Aggregate analytics counters, UGC verification records | Counter values keyed by date + event + random install ID. UGC tokens + verified post URLs. 90-day expiry on analytics. |
| jsDelivr CDN privacy | Serving TensorFlow.js, MediaPipe, and Supabase JS libraries on first load | IP address (transient), user agent (standard CDN access logs). |
| Google Fonts privacy | Loading the Bebas Neue and Space Mono webfonts on the landing page + privacy page | IP address (transient). |
| Google Play Services privacy | Install + in-app review prompt on Android (via @capacitor-community/in-app-review) | Whether the review prompt was shown. We do not use the Advertising ID — that's explicitly excluded in our AndroidManifest. |
We do not use: Google Analytics, Facebook Pixel, advertising SDKs, third-party trackers, session-replay tools, or any "fingerprinting" service. There are no ads in GoodReps.
We do not sell your data, share it with advertisers, build advertising profiles, or use it for any purpose disconnected from running GoodReps for you.
Regardless of where you live, you have the following rights over your GoodReps data:
All connections to goodrepsapp.com and to our processors run over HTTPS. Supabase encrypts your data at rest and enforces row-level security policies so a signed-in user can only access their own rows. We use Stripe-managed checkout pages so card data never touches our servers. Admin endpoints require a server-side password and fail closed if it's unset. We rotate API keys when staff turns over.
No system is 100% secure. If we ever experience a breach affecting your data, we'll notify affected users within 72 hours and disclose what we know.
GoodReps is operated from the United States. Our Supabase project is hosted in the US; Stripe, Anthropic, Vercel, Resend, and Upstash are also US-based. If you're outside the US (including the EU/UK), your data will be transferred to and processed in the US. We rely on Standard Contractual Clauses (where applicable) for these transfers via our processors' DPAs.
GoodReps is not directed at children under 13 (or under 16 in the EU/UK) and we do not knowingly collect data from them. If you believe a child has provided us data, contact goodrepsapp@gmail.com and we'll delete it promptly.
GoodReps uses your browser's localStorage to keep your workouts, meal log, and preferences on-device by default. When you sign in, we set a Supabase auth cookie (httpOnly, secure) to keep you signed in. We do not set any third-party tracking cookies. The third-party CDN (jsDelivr) and Google Fonts may log your IP address when you load their resources.
We'll update the "Last updated" date when this policy changes. For material changes (new processors, new data categories, changes that materially affect your rights), we'll surface a notice in the app the next time you open it. Continued use after a change means you accept the updated policy. The full revision history is in our public git repository.
GoodReps is provided "as is" without warranty of any kind. The app uses AI-based pose estimation to count exercise repetitions and provide form feedback. This technology is not perfect and should not be relied upon as a substitute for professional fitness instruction.
Always consult with a healthcare provider before starting any new exercise program. GoodReps is not a medical device and does not provide medical advice. Voice meal parsing and Coach responses are generated by an AI model and may be incorrect — verify nutritional and training information with qualified sources.
Calorie burn estimates provided by GoodReps are approximations based on standard MET (Metabolic Equivalent of Task) values and user-provided body weight. Macros parsed from voice or text input are AI-generated estimates from public food databases. Actual values vary. These figures should not be used for medical or dietary decisions.
GoodReps Pro is offered as either a $7/month subscription (with a 7-day free trial for new customers) or a $99 one-time lifetime purchase (launch pricing through the first year of public availability; the lifetime tier may rise to $149 thereafter). "Lifetime" refers to the lifetime of the product; if GoodReps is discontinued, Pro features will continue to work in the last released version. Subscriptions auto-renew until cancelled via Profile → Manage Subscription. Refunds are handled per the policy of the platform through which the purchase was made (Google Play, App Store, or web via Stripe) and as required by applicable consumer protection law.
Buddy invites grant the recipient 30 days of GoodReps Pro at no cost as a gift from the inviter. Both users agree that their name (if set), level, current streak, and last-active date are visible to their paired buddy for as long as the pairing is active. Either side can unpair at any time. Misuse of the buddy system (spam invites, fake accounts) may result in restriction or removal.
When you share a GoodReps achievement card to a social platform and verify the post for bonus XP, you confirm the post is public and contains the GoodReps magic token in the caption. We may fetch and display your verified post in admin tools for curation, and may repost selected verified content on official GoodReps social channels with a +500 XP feature code. You retain all rights to your underlying content; verifying a post grants GoodReps a non-exclusive license to display the URL on our brand channels. We will remove any verified post on request.
To the maximum extent permitted by law, GoodReps and its creators shall not be liable for any injury, damage, or loss arising from use of the app, including but not limited to injuries sustained during exercise. You use GoodReps at your own risk.
Privacy, data requests, security issues, or anything else: goodrepsapp@gmail.com