Last updated: February 28, 2026 · zuppyhealth.com
| Purpose | Data Used |
|---|---|
| Account creation & authentication | Email, password, OAuth identity |
| Personalized nutrition calculations (BMR/TDEE) | Age, sex, height, weight, activity level, goal |
| AI meal plan generation | Diet type, allergies, calorie targets, macros, language |
| AI meal photo analysis | Camera photos (compressed, sent to OpenAI) |
| Daily nutrition & hydration tracking | Meal entries, water entries |
| Activity & exercise tracking | HealthKit/Health Connect workout data |
| Progress visualization | Daily summaries, weight history |
| Subscription management | User ID, purchase status |
| Push notifications | Device token, notification preferences |
| App improvement & bug fixing | Analytics events, crash reports |
| Customer support | Feedback messages, app version |
Account creation & authentication
Email, password, OAuth identity
Personalized nutrition calculations (BMR/TDEE)
Age, sex, height, weight, activity level, goal
AI meal plan generation
Diet type, allergies, calorie targets, macros, language
AI meal photo analysis
Camera photos (compressed, sent to OpenAI)
Daily nutrition & hydration tracking
Meal entries, water entries
Activity & exercise tracking
HealthKit/Health Connect workout data
Progress visualization
Daily summaries, weight history
Subscription management
User ID, purchase status
Push notifications
Device token, notification preferences
App improvement & bug fixing
Analytics events, crash reports
Customer support
Feedback messages, app version
Supabase
Purpose: Authentication, database, file storage
Data shared: All user data (encrypted in transit & at rest)
OpenAI
Purpose: Meal photo analysis (GPT-4o Vision), meal plan generation (GPT-4o-mini), meal image generation (DALL-E 3)
Data shared: Compressed meal photos, dietary preferences, nutrition targets, user language
RevenueCat
Purpose: Subscription & in-app purchase management
Data shared: User ID, purchase history, subscription status, device identifiers
PostHog
Purpose: Product analytics
Data shared: User ID, feature usage events, session data
Sentry
Purpose: Error tracking & crash reporting
Data shared: User ID, error logs, device metadata, screenshots (production only)
OneSignal
Purpose: Push notifications
Data shared: Device token, user ID, notification engagement
Google (OAuth)
Purpose: Sign-in authentication
Data shared: Email, name (user-authorized scope only)
Apple (Sign-In)
Purpose: Sign-in authentication
Data shared: Email (optional), name (user-authorized)
Apple HealthKit
Purpose: Activity & workout syncing (iOS)
Data shared: Workouts, step count, walking/running distance
| Data | Retention Period | Deletion Trigger |
|---|---|---|
| User profile & health data | Until account deletion | User request |
| Meal, water, & activity entries | Until account deletion | User can delete individual entries; full wipe on account deletion |
| Meal plan & images | Until account deletion | Account deletion |
| Feedback & ratings | Until account deletion | Account deletion |
| Analytics events (PostHog) | Per PostHog retention policy (typically 1–3 years) | Vendor policy |
| Error logs (Sentry) | ~90 days | Sentry automatic purge |
| Push notification tokens (OneSignal) | Until account deletion | User action or opt-out |
User profile & health data
Until account deletion
User request
Meal, water, & activity entries
Until account deletion
User can delete individual entries; full wipe on account deletion
Meal plan & images
Until account deletion
Account deletion
Feedback & ratings
Until account deletion
Account deletion
Analytics events (PostHog)
Per PostHog policy (typically 1–3 years)
Vendor policy
Error logs (Sentry)
~90 days
Sentry automatic purge
Push notification tokens (OneSignal)
Until account deletion
User action or opt-out
| Permission | Platform | Purpose | Required? |
|---|---|---|---|
| Camera | iOS, Android | Scan meals via photo | Optional (for scan feature) |
| HealthKit | iOS | Sync workouts, steps, distance | Optional (user grants per data type) |
| Push Notifications | iOS, Android | Health reminders & updates | Optional (opt-in) |
| App Tracking Transparency | iOS | Analytics attribution | Optional (iOS prompt) |
| Advertising ID | Android | Analytics attribution | Declared in manifest |
Not requested: Location, contacts, microphone (for meal features), calendar, files.
Camera
iOS, Android · Scan meals via photo
Optional (for scan feature)
HealthKit
iOS · Sync workouts, steps, distance
Optional (user grants per data type)
Push Notifications
iOS, Android · Health reminders & updates
Optional (opt-in)
App Tracking Transparency
iOS · Analytics attribution
Optional (iOS prompt)
Advertising ID
Android · Analytics attribution
Declared in manifest
On iOS, Zuppy may request access to Apple HealthKit to sync workout activity, step count, and walking/running distance. If you grant this permission, the following strict rules apply to how we handle that data:
You can revoke HealthKit access at any time via iOS Settings → Privacy & Security → Health → Zuppy. Revoking access will stop future syncing but will not delete previously synced data from our servers — you must delete your account to remove that data.
This section applies only to data received via the Apple HealthKit API and is required by Apple's App Store Review Guidelines.
If you are a California resident, the California Consumer Privacy Act (CCPA) and California Privacy Rights Act (CPRA) grant you specific rights regarding your personal information.
In the past 12 months, we have collected the following categories of personal information:
To exercise your California privacy rights, contact us at privacy@zuppyhealth.com with the subject line "California Privacy Request." We will respond within 45 days. We may need to verify your identity before processing your request.
This privacy policy is based on code analysis. Have a lawyer review before publishing.