← Home

Adaptin — Privacy policy

Effective date: 13 June 2026 · Last updated: 20 June 2026

This policy explains what data Adaptin ("we", "our", "the app") collects, why we collect it, who we share it with, and the controls you have. Adaptin is a nutrition and expenditure tracker for iOS and Android.

Contact for any privacy question or request: adaptinapp@gmail.com.

Contents

1. Data we collect

1.1 Account information

Authentication is handled by Supabase Auth (see §5). Sessions are stored encrypted on your device using the operating system's secure storage (Keychain on iOS, Keystore on Android).

1.2 Profile and preferences

We use these inputs to compute your basal metabolic rate, recommended daily allowances for nutrients, and adaptive expenditure (TDEE). No coverage of sensitive categories beyond what you enter for the nutrition calculations.

1.3 Activity and log data

1.4 User-submitted product photos

If you contribute a barcode submission (nutrition label, ingredients list, or product photo), those images are uploaded to a Supabase Storage bucket so other reviewers can verify them. Submission photos are deleted from storage once a submission is finalized.

Automated label extraction (OCR). Before you finalize a submission, you can ask Adaptin to pre-fill the nutrition fields by reading the photo. To do this, our backend sends the public submission-photo URL — not your email, user ID, or any other account identifier — to OpenRouter, which routes the request to a vision-capable large language model (currently Google Gemini or Anthropic Claude; the active model may change as we tune for accuracy). The model fetches the photo, returns structured nutrition fields, and the response is cached on our backend for up to one hour so a retry does not re-bill the model. OpenRouter, Google, and Anthropic process the photo as our subprocessors and do not, per their published API terms, use API content to train their models. You can still submit a contribution without using the automated extraction — the fields are editable either way.

1.5 Profile photo

If you set a profile photo from Settings → Edit profile, the image is resized on your device and uploaded to a separate Supabase Storage bucket (profile-avatars). Unlike barcode submission photos, your profile photo persists for as long as you choose to display it: it is replaced when you upload a new one, and deleted when you remove it or delete your account.

Your profile photo, where set, may appear to other Adaptin users on user-facing surfaces such as the leaderboard, the contributor profile, and the peer-verification screen. The storage URL is unguessable but the bucket is readable to anyone with the URL; treat your profile photo as public.

We do not run face recognition, biometric analysis, automated content moderation, or machine learning of any kind on your profile photo.

1.6 Reports and blocks

If you report another user's profile photo, display name, or other community content for abuse or infringement, we store the report (reporter user ID, reported user ID, free-text reason, timestamp) so we can review and act on it. If you block another user, we store the (blocker, blocked) pair so we can hide that user's content from your view across Adaptin.

1.7 Diagnostics and crash reports

We use Sentry to collect crash reports and unhandled errors. When you are signed in, error events are tagged with your Supabase user ID and the email address on your account so we can correlate problems to your sessions. We do not capture screen contents or food/weight values in error reports.

1.8 Device permissions we request

1.9 What we do not collect

2. Apple HealthKit and Android Health Connect

With your explicit permission, Adaptin reads your body weight from Apple HealthKit (iOS) or Android Health Connect (Android), and on iOS may also write weight entries you log inside Adaptin back to HealthKit so your scale, Apple Health, and Adaptin stay consistent.

The following commitments are specific to Apple HealthKit and apply to all data we receive from it:

On Android, equivalent controls live in Health Connect → App permissions → Adaptin. We request the minimum permissions needed: read and write Weight.

3. How we use your data

We do not use your data to train machine-learning models. The third-party OCR providers we use to read nutrition labels (OpenRouter, Google, Anthropic — see §1.4 and §5) likewise commit, per their published API terms, not to use API content to train their models.

If you are in the European Economic Area or the UK, we rely on:

5. Who we share data with

We do not sell or rent your data. We share it only with the subprocessors below, each of which provides infrastructure Adaptin runs on. All access is authenticated and limited to what each provider needs to perform its function.

Provider Role Region
Supabase (Supabase Inc.) Authentication, Postgres database, Storage for barcode submission photos and profile photos. EU (Frankfurt, eu-central-1)
Fly.io (Fly.io, Inc.) Hosting of the Adaptin API. EU
Sentry (Functional Software, Inc.) Crash and error reporting. EU (configurable)
Cloudflare R2 (Cloudflare, Inc.) Encrypted weekly database backups. EU
Cloudflare Pages (Cloudflare, Inc.) Hosting of this privacy / terms site. Global edge
Apple (Apple Inc.) Sign in with Apple, App Store, TestFlight, push delivery, HealthKit. Per Apple's policies
Google (Google LLC) Google Sign-In, Google Play, Health Connect. Also a vision-LLM provider (Gemini) reached through OpenRouter for the OCR feature in §1.4 — receives only the public submission-photo URL, no account identifier. Per Google's policies
OpenRouter (OpenRouter Inc.) Routes the OCR request in §1.4 to the active vision-LLM (Google Gemini or Anthropic Claude). Receives the public submission-photo URL only. United States
Anthropic (Anthropic, PBC) Vision-LLM provider (Claude) reached through OpenRouter for the OCR feature in §1.4 — receives only the public submission-photo URL, no account identifier. United States

External nutrition data sources (USDA FoodData Central and Open Food Facts) are queried only from our server, and only with the food name or barcode you searched. We do not send your account identity to these services.

6. Retention

7. Your rights and controls

Wherever you live, you can exercise the following through in-app controls or by emailing us:

If you are in California, you additionally have the right to know, delete, and not be discriminated against for exercising your rights under the CCPA. We do not sell or share personal information for cross-context behavioral advertising.

8. Deleting your account

Open Settings → Account → Delete account. After you confirm, the app calls our backend, which deletes your authentication record and cascades the deletion to all rows we store about you (profile, food logs, weight logs, supplement logs, favorites, custom foods, recipes, expenditure snapshots, reports you filed, and the list of users you blocked). Your profile photo file and any pending barcode submission photos are removed from Supabase Storage at the same time. Encrypted weekly backups age out automatically per §6.

If you signed in with Apple or Google, this deletes the data we hold; it does not affect your Apple or Google account itself.

9. Security

No system is perfectly secure. If you believe you have found a vulnerability, please email adaptinapp@gmail.com so we can investigate.

10. International transfers

Our primary database and API run in the European Union. If you use Adaptin outside the EU, the data you submit is transferred to and stored in the EU. Some subprocessors (Apple, Google, Cloudflare, Sentry) may process operational data across multiple regions per their own policies; where transfers leave the EEA, they rely on Standard Contractual Clauses or equivalent safeguards.

The OCR feature in §1.4 sends submission-photo URLs to OpenRouter, Google (Gemini), and Anthropic (Claude), all of which are based in the United States. Those transfers rely on the providers' Standard Contractual Clauses for EEA / UK personal data. Only the public submission-photo URL is transmitted — no account identifier, email, or profile data.

11. Children

Adaptin is not directed to children under 13 (or under 16 in the EEA / UK). We do not knowingly collect data from children below those ages. If you believe a child has provided us data, email us and we will delete it.

12. Changes to this policy

If we make a material change, we will update the "Last updated" date at the top and, where the change affects how we handle data you already gave us, surface a notice in the app before the change takes effect.

13. Contact

Email: adaptinapp@gmail.com

Operator: Adham (sole developer of Adaptin). A registered business address will be added here once the legal entity is incorporated. Until then, email is the canonical contact channel.