Privacy Policy
Effective Date: June 28, 2026 Last Updated: September 13, 2026
Underneath (“we,” “our,” or “the App”) is a food label scanning application that helps users understand what is in the products they buy. This Privacy Policy explains how we collect, use, store, and protect your information.
Contact: thanosrokkas@gmail.com Website: tryunderneath.com
1. Information We Collect
1.1 Account Information
When you create an account, we collect:
- Email address — provided during sign-up or via Apple/Google Sign-In
- Display name — derived from your sign-in provider or email address
- Authentication tokens — used to verify your identity (not stored by us directly; managed by Supabase Auth)
1.2 Health & Diet Preferences
During onboarding, you may optionally provide:
- Health goals (e.g., lose weight, eat cleaner)
- Dietary preferences (e.g., vegan, keto)
- Allergy information (e.g., gluten, dairy)
- Additives you want to avoid
- Ultra-processed food flagging preference
- Reading habits
These preferences are stored locally on your device using AsyncStorage and, when you are signed in, synced to your profile on our servers so they persist across devices.
1.3 Scan History
When you scan a product barcode, we store:
- Barcode number
- Product name and brand
- Health score and rating level
- Product image URL (from Open Food Facts)
- Timestamp of the scan
- A randomly generated device identifier (not your hardware ID)
- Your user ID (if you are signed in)
1.4 Subscription Information
If you subscribe to Underneath Plus, we store:
- Subscription status and product ID
- Current billing period dates
- Store (Apple App Store or Google Play)
- RevenueCat customer ID
1.5 Referral Information
If you participate in our referral program, we store:
- Your unique referral code (auto-generated)
- Referral relationships (inviter and invitee IDs)
- Referral status
1.6 Country Code
We detect your country to tailor regulatory information (e.g., EU vs. FDA additive status). This is stored locally on your device.
1.7 Product Photos You Choose to Send
When a product is missing from our database, or when a label was too damaged or too foreign to read, you can choose to photograph the packaging. Only then are photographs sent anywhere. They go to our servers and to an automated text-recognition service so that the ingredient list and nutrition panel can be read and the product record built.
These photos are used for that purpose alone. The barcode scanner itself never transmits an image.
1.8 Crash Reports
If the App crashes, it records what went wrong so the fault can be found and fixed:
- The error message and stack trace
- App version, operating system version, and device model
- Your device identifier, and your user ID if you are signed in
The report is written to your device and sent to our own servers on the next launch. We use no third-party crash-reporting service.
1.9 Advertising Measurement
The App includes Meta’s SDK so that advertising we pay for can be measured against what people actually do afterwards. It reports:
- That something happened, and nothing about what. Specifically: that the App was installed and opened, that an account was created, and that a product was scanned. The barcode, the product name, the category, the score and everything else about the product are never sent. Meta is told a scan happened. It is never told what you scanned.
- Identifiers used to match those events back to an ad. An anonymous identifier generated by the SDK, and, on Android, your Google Advertising ID. On iOS the App does not ask for App Tracking Transparency permission and therefore never accesses the IDFA, so attribution on iOS is limited to the aggregated and delayed figures Apple’s SKAdNetwork provides.
- Standard device and app information the SDK collects automatically: app version, operating system version, device model, country, and language.
Your health goals, dietary preferences, allergies, scan history, email address and name are never sent to Meta.
The App itself shows no ads.
2. Information We Do NOT Collect
- The barcode scanner transmits no images. The camera reads barcodes on your device and nothing leaves it. A photograph is sent only when you deliberately take one to add a missing product or to re-read a label, as described in 1.7.
- We never tell an advertiser what you eat. No barcode, product, score, dietary preference, allergy or health goal is shared for advertising, ever.
- No general-purpose analytics. We do not use Firebase Analytics, Amplitude, Mixpanel, or any comparable product-analytics SDK. The advertising events in 1.9 are the complete list of what is reported, and no other behaviour inside the App is measured.
- No third-party crash-reporting SDK. We do not use Sentry, Crashlytics, or similar. Crash reports go to our own servers, as described in 1.8.
- No ads inside the App.
- No cookies. As a mobile application, we do not use cookies or web tracking technologies.
- No location data. We do not access or store your precise location. Your country is read from your device settings, not from GPS.
- No contacts, microphone, or other sensitive permissions.
3. How We Use Your Information
We use the information we collect to:
- Provide and improve the food scanning and scoring service
- Display your scan history
- Manage your subscription and trial period
- Facilitate the referral program
- Show regulatory information relevant to your country
- Read the labels of products you choose to photograph
- Diagnose and fix crashes
- Measure whether the advertising we pay for reaches people who go on to use the App
4. Third-Party Services
We use a limited number of third-party services, each for a specific purpose:
4.1 Supabase
- Purpose: Database hosting, user authentication, and serverless functions
- Data shared: Account information, scan history, subscription and referral records
- Privacy policy: https://supabase.com/privacy
4.2 RevenueCat
- Purpose: Subscription and in-app purchase management
- Data shared: User ID and purchase/subscription information. Where the Meta integration is enabled, RevenueCat also forwards the fact of a trial start or a purchase to Meta, matched by the anonymous identifier described in 1.9.
- Privacy policy: https://www.revenuecat.com/privacy
4.3 Open Food Facts
- Purpose: Product data lookup (name, ingredients, nutrition facts, images)
- Data shared: Barcode number only (public API, no user data sent)
- Privacy policy: https://world.openfoodfacts.org/privacy
4.4 Apple Sign-In / Google Sign-In
- Purpose: Authentication
- Data shared: We receive an identity token from Apple or Google to verify your account. We do not access your Apple ID password or Google account password.
4.5 Meta Platforms
- Purpose: Measuring the performance of advertising
- Data shared: Only the events and identifiers listed in 1.9. No barcode, product name, category, health score, dietary preference, allergy, health goal, email address or name is ever sent.
- Privacy policy: https://www.facebook.com/privacy/policy
4.6 Anthropic
- Purpose: Reading the text on labels you photograph, and translating foreign-language ingredient lists
- Data shared: The photograph or the ingredient text itself. No account information is attached.
- Privacy policy: https://www.anthropic.com/legal/privacy
We do not sell, rent, or share your personal data with any other third parties.
5. Data Storage & Security
5.1 Server-Side Storage
Your account data, scan history, and subscription information are stored in a PostgreSQL database hosted by Supabase Cloud. We protect this data with:
- Row Level Security (RLS): Database policies ensure users can only access their own data
- Service-role separation: Sensitive operations (subscription updates, product ingestion) run through authenticated serverless functions
- Rate limiting: API endpoints are rate-limited to prevent abuse
5.2 On-Device Storage
- AsyncStorage: Health preferences, onboarding state, and recent searches are stored locally on your device in unencrypted app-sandboxed storage
- SecureStore (Expo): Authentication tokens are stored in your device’s secure keychain/keystore (encrypted by the operating system)
5.3 Data Transmission
All data transmitted between the App and our servers uses HTTPS/TLS encryption.
6. Data Retention & Deletion
6.1 Retention
- Account data is retained as long as your account is active
- Scan history is retained as long as your account exists or the device ID is associated with scan records
- Cached product data (not personal) may be retained indefinitely to improve service performance
6.2 Account Deletion
You can delete your account directly within the App by going to your profile and tapping “Delete account.” You may also request deletion by contacting us at thanosrokkas@gmail.com.
When your account is deleted:
- Your profile, subscription, and referral records are permanently deleted (cascading delete)
- Scan history associated with your user ID is removed
- Local data on your device can be cleared by uninstalling the App
In-app deletion is processed immediately. Email requests will be processed within 30 days.
7. Your Rights
Regardless of where you are located, you have the right to:
- Access your personal data
- Correct inaccurate information
- Delete your account and data
- Export your data in a portable format
- Object to processing of your data
- Withdraw consent at any time
These rights are aligned with GDPR (EU), CCPA (California), and other applicable privacy regulations. To exercise any of these rights, contact us at thanosrokkas@gmail.com.
7.1 Limiting Advertising Measurement
The App does not yet offer an in-app switch for the advertising measurement described in 1.9. Until it does, your device controls it:
- iOS: the App never asks for tracking permission, so it has no access to your advertising identifier in the first place.
- Android: Settings, then Google, then Ads, where you can delete your advertising ID or opt out of personalised advertising.
8. Children’s Privacy
Underneath is not directed at children under the age of 13. We do not knowingly collect personal information from children under 13. If we become aware that we have collected data from a child under 13, we will promptly delete that information. If you believe a child under 13 has provided us with personal data, please contact us at thanosrokkas@gmail.com.
9. Health Disclaimer
The health scores, ingredient analysis, and additive information provided by Underneath are for informational purposes only. They do not constitute medical advice, dietary guidance, or a substitute for professional health consultation. Always consult a qualified healthcare provider for dietary or medical decisions.
10. Changes to This Policy
We may update this Privacy Policy from time to time. When we do, we will update the “Last Updated” date at the top of this page. We encourage you to review this policy periodically. Continued use of the App after changes constitutes acceptance of the updated policy.
11. Contact Us
If you have any questions or concerns about this Privacy Policy or our data practices, please contact us at:
Email: thanosrokkas@gmail.com Website: tryunderneath.com