Calobite ("we", "our", "the app") is a calorie tracking mobile application developed by an independent developer. This policy explains what data we collect, how we use it, and your rights.
1. Data We Collect
Account Data
- Authentication: We use Supabase Auth for account management. You can sign in with Apple, Google, or use anonymous authentication. We store your user ID and authentication tokens securely on your device via encrypted storage. If you sign in with Apple and choose “Hide My Email”, we receive Apple's private-relay address rather than your real email — we flag this in your account metadata and do not send marketing to relay addresses.
- Profile information: Name, date of birth, sex, height, weight, and activity level — provided by you during onboarding. This data is used solely to calculate your personalized nutrition targets.
Health & Nutrition Data
- Meal entries: Food names, calories, protein, carbs, fat, and optional meal photos.
- Weight entries: Body weight measurements and optional progress photos.
- Exercise entries: Activity descriptions, duration, and estimated calories burned.
- Goals: Weight goals, target dates, and daily calorie/macro targets.
This data is stored locally on your device and synced to our secure cloud database (Supabase, hosted on AWS) so you can access it across sessions.
Food Database Queries
- Open Food Facts: When you scan a barcode, we query the Open Food Facts public database. Your device sends the barcode number and a User-Agent header. No personal data is shared.
- FatSecret: If a barcode is not found in Open Food Facts, we query the FatSecret Platform API as a fallback. This query runs on our server — your barcode is sent to our server, which then queries FatSecret. No personal data is shared with FatSecret.
AI Meal Scanning
- Consent: Before your first AI scan, we ask for explicit permission to send your photo to our AI service. You can decline — Calobite will still work for manual logging and barcode scanning.
- Meal & label photos: When you use the AI scan feature, your photo is sent to our server (Supabase Edge Function), which forwards it to a third-party AI vendor for food identification. We currently use OpenAI (gpt-4.1-mini) as our primary provider and Google Gemini as a fallback. Photos are processed in real-time and are not used by these vendors to train their models. We do not store your scan photos on our servers.
- Scan history: We log scan metadata (timestamp, food count, scan type) for rate limiting and usage tracking. Photos are not stored server-side.
Analytics
- PostHog: We use PostHog for anonymous usage analytics (e.g., which features are used, onboarding completion rates). We track events like “meal_logged” and “barcode_scanned” with aggregate properties. Some events include non-identifying details such as your goal type, activity level, unit preference, and numeric values from entries you log (e.g., weight logged, exercise calories, meal calories) so we can measure feature usage at a population level. On the calobite.dev marketing website specifically we run PostHog cookielessly (no cookies, no localStorage), do not capture full URLs or referrer query strings, and only forward UTM-style attribution parameters (
utm_source,utm_medium,utm_campaign,utm_term,utm_content) that you arrived with. - Vercel Web Analytics: The marketing website at calobite.dev is hosted on Vercel, which records anonymous page-view counts via Vercel Web Analytics. Vercel does not use cookies for these counts and hashes IP addresses on its side. No personal data is shared with Vercel beyond the visit itself.
- Food-search queries: When you search the food database, we log the search text (e.g., “chicken breast”) so we can measure search coverage and improve the food database. Queries are linked to your user ID for product-improvement analytics and are never used for advertising.
- Device identifier: PostHog assigns a random device-level identifier to distinguish usage sessions. This is a PostHog-generated UUID and is not the device’s advertising identifier (IDFA / IDFV) or any hardware ID.
- We do not track: GPS location, contacts, browsing history, or any data unrelated to calorie tracking. We do not share data with data brokers or advertisers.
Subscription Data
- RevenueCat: Subscription purchases are managed by RevenueCat. They process your payment through Google Play or the Apple App Store. We receive only your subscription status (active/expired) and plan type, not your payment details.
- Superwall: Paywall presentation and A/B testing of paywall variants. Superwall receives non-identifying context such as goal type, unit preference, and trigger placement; it does not receive your name, email, or health data.
Feedback & Support
- In-app feedback form: When you submit feedback via the Give Feedback screen, we collect the category (bug, feature idea, or general), your written message, an optional star rating, and technical metadata (app version, OS, OS version, device model) to help us debug issues. This is stored in our Supabase database linked to your user ID.
- Email support: When you email support@calobite.dev or privacy@calobite.dev, the content of your message is stored by our email provider per their retention policies. We use it only to respond to you.
2. How We Use Your Data
- Personalized nutrition targets: Your profile data is used to calculate BMR, TDEE, and daily calorie/macro targets using the Mifflin-St Jeor equation.
- Food tracking: Your meal, weight, and exercise entries are displayed in the app and used to calculate daily progress.
- AI scanning: Photos are processed by OpenAI (primary) or Google Gemini (fallback) solely to identify foods and estimate nutrition values. Photos are not used for training AI models and are not stored by these vendors beyond the API call.
- Product improvement: Anonymous analytics help us understand which features are useful and where users encounter friction.
3. Data Storage & Security
- Local storage: All your data is stored on your device using encrypted MMKV storage.
- Cloud sync: Data is synced to Supabase (PostgreSQL database hosted on AWS) with Row Level Security (RLS) — each user can only access their own data.
- Authentication tokens: Stored in your device's secure storage (Keychain on iOS, EncryptedSharedPreferences on Android).
- Edge Functions: Our server-side functions run on Supabase Edge (Deno Deploy) and only process data in transit — no persistent storage of photos or scan content.
4. Third-Party Services
| Service | Purpose | Data Shared |
|---|---|---|
| Supabase (hosted on AWS) | Database, auth, edge functions | Profile, diary, weight, exercise data |
| Apple Sign in with Apple | Optional iOS sign-in | Apple user ID; email or private relay address |
| Google Sign-In | Optional sign-in | Google user ID, email, display name, avatar |
| OpenAI (gpt-4.1-mini) | Meal/label photo analysis (primary) | Photos (transient, not stored, not used for training) |
| Google Gemini | Meal/label photo analysis (fallback) | Photos (transient, not stored, not used for training) |
| Open Food Facts | Barcode product lookup | Barcode number only |
| FatSecret Platform API | Barcode fallback lookup | Barcode number only (server-side) |
| PostHog | Anonymous analytics | Usage events, no PII |
| Vercel (calobite.dev only) | Site hosting + anonymous page-view analytics | HTTP request metadata, hashed IP (no cookies) |
| RevenueCat | Subscription management | User ID, purchase status |
| Superwall | Paywall presentation | Goal type, unit preference, usage context |
| Apple App Store | App distribution, iOS payments | Per Apple's policies |
| Google Play | App distribution, Android payments | Per Google's policies |
5. Data Retention
- Account data: Retained while your account is active. Deleted upon request.
- Meal/weight/exercise entries: Retained while your account is active. You can delete individual entries at any time within the app.
- Scan logs: Retained for rate limiting purposes. Anonymized after 90 days.
- Analytics: PostHog retains anonymous events per their data retention policy.
6. Your Rights
- Access: You can view all your data within the app at any time.
- Deletion: You can delete individual entries within the app. To delete your entire account and all associated data, use the in-app Delete Account option (Profile → Delete Account). The deletion is permanent and irreversible. For regulatory purposes (fraud prevention, accounting, legal compliance) we may retain a minimal audit record of subscription-related events; this record does not contain your health or nutrition data.
- Portability: Contact us at privacy@calobite.dev to request an export of your data.
- Opt-out of analytics: Contact us to opt out of PostHog analytics tracking.
7. Children's Privacy
Calobite is not intended for children under 13. We do not knowingly collect data from children under 13. If you believe a child has provided us with personal data, please contact us.
8. Changes to This Policy
We may update this policy from time to time. The "Last updated" date at the top reflects the most recent revision. Continued use of the app after changes constitutes acceptance.
9. Contact
For privacy questions or data requests:
- Email: privacy@calobite.dev
- Developer: Calobite (independent developer)
- Website: https://calobite.dev