Privacy Policy for TortoFit

Last updated: March 27, 2026

Welcome to TortoFit ("the app"). Your privacy is important to us. This Privacy Policy explains what information we collect, how we collect it, how we use it, who we share it with, and how we protect it.

By using the app, you agree to the collection and use of information as described in this policy.


1. Information We Collect

1.1 Account Information

When you sign in using Sign In with Apple, we collect:

  • Name (first name and, optionally, last name)
  • Email address (or Apple's Private Relay email, if you choose "Hide My Email")

Your first name may be visible to other users on the leaderboard. Your email is used as your account identifier and is encrypted at rest.

1.2 Health & Fitness Data (via Apple HealthKit)

With your explicit consent (granted through the iOS HealthKit permission prompt), we read the following categories of data from Apple Health:

  • Activity: Step count, exercise minutes, workout data
  • Heart: Heart rate, resting heart rate, heart rate variability, blood pressure
  • Sleep & Respiratory: Sleep analysis, respiratory rate, oxygen saturation
  • Body Measurements: VO2 Max, body mass, body fat percentage, BMI, lean body mass
  • Clinical: Blood glucose, wrist temperature
  • Mindfulness: Mindful sessions
  • Demographics: Date of birth, biological sex

How we collect this data: HealthKit data is read from the Apple Health app on your device after you grant permission through the standard iOS HealthKit authorization prompt. We only read data — we never write to Apple Health.

We use this data to calculate personalized health scores (biological age, athletic age, longevity score) and provide fitness insights.

1.3 Manually Entered Nutrition Data

If you log meals in the app, we collect and store:

  • Food names, calorie and macronutrient values, meal dates

How we collect this data: You manually enter food log entries through the app's meal tracking interface.

1.4 Manually Entered Blood Test Data

If you upload blood panel results, we collect the values you provide. This may include biomarkers such as cholesterol levels, blood cell counts, metabolic panels, and other lab values.

How we collect this data: You manually enter blood test results through the app's blood work interface.

This data is encrypted (AES-256-GCM) before being stored in the cloud.

1.5 Optional Photo for Weekly Mascot (On-Device + Optional Analysis)

If you choose to personalize your weekly fitness mascot, you may select one photo from your library using Apple’s standard photo picker (you are not granting us access to your entire photo library).

  • Local storage: The selected image is saved only on your device (application support storage) as a JPEG so the app can use it for this feature.
  • Optional AI trait extraction: If you have agreed to the app’s AI data processing consent, the image may be sent over HTTPS to our Google Cloud Function, which calls Anthropic’s Claude vision capabilities to produce short text descriptions (cartoon-safe styling cues for the mascot). Our mascot pipeline is designed so we do not store your photo as an asset in our databases; processing occurs for that request only. Derived text traits may be cached on your device to reduce repeat uploads.
  • Rate limits: Analysis may be limited (for example, a small number of attempts per week) to protect cost and abuse.
  • Your control: You can remove the saved reference photo and cached traits in the app at any time; without the photo, this personalization does not run.

This optional photo flow is separate from the Elite health-analysis AI described in Section 2. It only runs when you explicitly choose a photo and (for cloud analysis) have granted AI consent.

1.6 Usage & Analytics Data

We use Google Firebase Analytics and Mixpanel to understand how the app is used and to improve the product. Depending on your account and app settings, this may include:

  • App session and navigation events (screens or features used)
  • Subscription, trial, and in-app purchase funnel events
  • Age group, gender, language, subscription tier, and similar profile fields used for segmentation (as configured in the app)
  • Coarse regional context (e.g. country and, where available, city) when derived from device location or network signals as described in Section 1.7
  • Device type, OS version, and app version
  • A pseudonymous analytics identifier (such as your account email used only as an ID inside our analytics tools, not for inbox marketing from those vendors)

How we collect this data: Event data is sent from the app to Firebase and Mixpanel over HTTPS when you use the app. We may also append copies of select analytics events to our own Google Firebase Firestore database for internal funnel reporting and operations; those copies are subject to the same access controls as your other cloud data.

Mixpanel may derive approximate geographic information (such as city or region) from IP address when that feature is enabled in their SDK. We configure analytics for product improvement, not for selling data.

We may use Apple’s AdServices APIs to attribute installs to Apple Search Ads campaigns; where available, campaign metadata may be stored in analytics as described above.

We do not use this data for third-party advertising networks, and we do not sell your personal information.

1.7 Approximate Location (Optional)

If you allow Location When In Use on iOS, the app may request a coarse device location (kilometer-level accuracy) to perform a one-time or occasional reverse geocode and determine your city and country. We use this to enrich your profile for in-app experiences (for example leaderboards or regional context) and for the analytics purposes described in Section 1.6.

How we collect this data: Apple’s Core Location and geocoding services process coordinates on Apple’s systems; we store the resulting city and country (for example as text on your profile) in Firebase Firestore together with your other account data.

You can revoke access at any time in iOS Settings > Privacy & Security > Location Services and selecting TortoFit. If you deny location, the rest of the app continues to work; we may still infer coarse region from your device locale or IP where permitted by analytics providers.


2. AI-Powered Health Analysis & Third-Party AI Data Sharing

Important: This section describes how your personal health data is shared with a third-party AI service. Please read it carefully.

2.1 What This Feature Does

TortoFit offers AI-powered health analysis through specialist AI agents that provide personalized health insights, including biological age analysis, disease risk assessment, nutrition recommendations, and fitness guidance. This feature is available to Elite tier subscribers.

2.2 What Data Is Sent

When you use AI health analysis features, the following categories of your health data are sent to a third-party AI service:

  • HealthKit data: Heart rate, resting heart rate, heart rate variability, blood pressure, VO2 Max, step count, exercise minutes, sleep analysis, respiratory rate, oxygen saturation, body mass, body fat percentage, BMI, blood glucose, wrist temperature
  • Manually entered blood work: Any blood panel results you have entered (e.g., cholesterol, blood cell counts, metabolic panel values)
  • Manually entered food logs: Meal names, calorie and macronutrient values
  • Demographic data: Date of birth, biological sex (used for age-appropriate health analysis)

We do NOT send your name, email address, Apple ID, or any other personally identifiable information to the AI service. Your health data is sent without any account identifiers.

2.3 Who the Data Is Sent To

Your health data is sent to Anthropic, PBC, the company that operates the Claude AI large language model. The data flows through the following path:

  1. Your device sends an encrypted HTTPS request to our Google Cloud Function (hosted on Google Cloud Platform)
  2. The Google Cloud Function forwards your health data to Anthropic's Claude API (api.anthropic.com) via a secure HTTPS connection
  3. Anthropic's Claude API processes the data and returns personalized health insights
  4. The Google Cloud Function relays the AI-generated insights back to your device

2.4 How Anthropic Handles Your Data

Per Anthropic's API Terms of Service and data processing policies:

  • Anthropic processes your data only for the duration of the API request to generate a response
  • Anthropic does not retain your data after the request is completed
  • Anthropic does not use your data to train, improve, or fine-tune their AI models
  • Anthropic's full usage policy is available at anthropic.com/policies

2.5 Purpose of AI Data Sharing

The sole purpose of sharing your health data with Anthropic's Claude AI is to generate personalized health insights, including:

  • Biological age estimation and longevity analysis
  • Disease risk assessments based on your health metrics
  • Personalized nutrition and fitness recommendations
  • Blood work interpretation and health trend analysis

Your data is never used for advertising, marketing, or any purpose other than providing you with personalized health analysis.

2.6 Your Consent & How to Opt Out

Consent: Before any health data is sent to the AI service, the app presents an explicit consent prompt explaining what data will be shared and with whom. AI analysis features are never activated without your permission. You must actively choose to use AI features after reviewing the disclosure.

How to disable AI data sharing: You can revoke your consent and stop AI health data sharing at any time by:

  • Navigating to Settings > AI Health Analysis within the app and toggling the feature off
  • Downgrading from the Elite subscription tier (Elite health AI features are only available to Elite subscribers)
  • Contacting us at support@honestdev.co to request AI features be disabled on your account

When AI consent is off, no health data is sent to Anthropic for Elite analysis, and optional mascot reference-photo analysis will not run (your locally saved mascot photo, if any, stays on your device until you delete it). Weekly mascot image generation that does not use your photo may still use other subscription-gated AI image services as described in your in-app disclosures.

2.7 Optional Mascot Reference Photo & Anthropic Vision

If you opt in and select a reference photo (Section 1.5), that image is transmitted to our Cloud Function and then to Anthropic solely to obtain short text traits for stylizing your cartoon mascot. It is not mixed with your name, email, or Apple ID in that request. Anthropic’s handling of API data is described in Section 2.4. If you do not use this feature or do not grant AI consent, no reference photo is sent.


3. How We Use Your Data

We use your information for the following purposes:

  • Health score calculation: Calculate biological age, athletic age, longevity score, and nutritional age on your device
  • AI-powered insights (Elite tier): Send health metrics to Anthropic's Claude API to generate personalized health analysis (see Section 2 above)
  • Optional mascot personalization: Store your chosen reference photo on-device; with consent, send it once per analysis to derive text styling cues (Section 1.5 and 2.7)
  • Leaderboard: Display your ranking using first name only
  • Regional context: Show coarse location fields (such as city or country) where you have allowed it, for social and product features
  • Subscription management: Process subscriptions and in-app purchases via Apple StoreKit
  • App improvement: Measure engagement, funnels, and reliability using Firebase Analytics, Mixpanel, and related internal tools

4. How We Store Your Data

4.1 Cloud Storage (Google Firebase Firestore)

Your account information, calculated health scores, nutrition log, and app preferences are stored in Google Firebase Firestore. Sensitive fields (such as blood test data) are encrypted using AES-256-GCM before storage. Your encryption key is stored securely in the iOS Keychain on your device and never leaves your device.

4.2 Local Storage

Health data read from Apple Health is processed on your device. Calculated scores and preferences are also cached locally on your device using standard iOS storage. If you use mascot personalization, your chosen reference image and any cached trait JSON are stored only on your device unless you trigger cloud analysis as described in Section 1.5.

4.3 Data Retention

Your data is retained as long as your account is active. You may request deletion of your data at any time by contacting us (see below).


5. Third-Party Services

We use the following third-party services. Each service receives only the data necessary for its function and provides protection of your data consistent with this Privacy Policy:

Service Provider Purpose Data Shared
Apple HealthKit Apple Inc. Read health & fitness data Read-only access with your consent
Google Firebase Google LLC Authentication, cloud storage, analytics, Cloud Functions, optional analytics event mirror in Firestore Account info, health scores, nutrition data, encrypted blood work, city/country when stored on profile, product analytics events
Mixpanel Mixpanel, Inc. Product analytics, funnels, cohorts Event data, pseudonymous user ID, profile properties you configure in-app (e.g. tier, age group); approximate geo from IP when enabled
Apple Location & Maps Apple Inc. Optional coarse device location and reverse geocoding when you grant When In Use permission Transient location fix and geocoding on Apple systems; we store resulting city/country text in our backend as described above
Anthropic Claude API Anthropic, PBC AI-powered health insights (Elite tier); optional mascot reference-photo trait extraction when you opt in (Section 1.5) Health: de-identified metrics, blood work, food logs (no name, email, or account ID). Mascot: user-selected reference image sent only for trait text output, not retained on our servers as an image asset.
Apple StoreKit Apple Inc. Subscription & purchase processing Transaction data (handled entirely by Apple)

We do not sell, rent, or share your personal data with advertisers or data brokers. We do not share data with any third parties other than those listed above.


6. Auto-Renewable Subscriptions

The app offers auto-renewable subscriptions (Monthly and Annual plans). Subscriptions auto-renew unless cancelled at least 24 hours before the end of the current period. You can manage or cancel your subscription in Settings > Apple ID > Subscriptions.


7. Data Security

We use commercially reasonable measures to protect your data, including:

  • AES-256-GCM encryption for sensitive fields stored in the cloud
  • iOS Keychain for encryption key storage (device-only, never transmitted)
  • HTTPS/TLS for all network communication, including data sent to Anthropic
  • Firebase Authentication for secure account access
  • De-identification of health data before sending to AI services (no name, email, or account identifiers)

No method of electronic storage is 100% secure, and we cannot guarantee absolute protection.


8. Your Rights

You have the right to:

  • Access your data by contacting us
  • Delete your account and associated data by contacting us
  • Revoke HealthKit access at any time in iOS Settings > Privacy & Security > Health
  • Revoke location access at any time in iOS Settings > Privacy & Security > Location Services > TortoFit
  • Revoke Sign In with Apple at any time in iOS Settings > Apple Account > Sign-In & Security > Sign In with Apple
  • Disable AI health analysis at any time in the app's Settings > AI Health Analysis (this stops Elite health data sharing with Anthropic and disables optional mascot reference-photo cloud analysis)
  • Remove mascot reference photo using the in-app controls for weekly mascot personalization (clears on-device image and cached traits)
  • Revoke AI consent by contacting us at support@honestdev.co

9. Children's Privacy

This app is not directed at children under 13. We do not knowingly collect personal information from children under 13. If you believe we have collected such information, please contact us immediately.


10. Changes to This Privacy Policy

We may update this policy periodically. Changes will be posted on this page with an updated date. We will not make material changes that expand data collection or third-party data sharing without notifying users and obtaining consent where required.


11. Contact Us

For questions about this Privacy Policy, to request data deletion, or to revoke AI data sharing consent, please contact us at:

TortoFit
Email: support@honestdev.co

Thank you for trusting us with your health journey.