Privacy Policy for FitFlow
FitFlow is a personal fitness training app that helps you browse a built-in exercise library, build and follow workout plans, log training sessions, track body weight and progress photos, and view long-term statistics such as activity heatmaps and charts. This Privacy Policy applies to the FitFlow mobile application on all platforms where it is distributed, and explains what information the app may process when you use it, how that information is used, and the choices you have.
1. Information We Collect
1.1 Training data stored on your device
Your training plans, today's workout session, exercise history, weight log, reminder schedules, app preferences (appearance, language, units, week start, training reminders), and recently viewed exercises are stored in a local database and preferences file on your device. This data is used so the app can restore your context across launches, compute rest timers, and render charts and the activity heatmap. You can delete this data at any time from inside the app, by clearing app data in your system settings, or by uninstalling the app.
1.2 Progress photos
If you choose to add a progress photo, the photo is captured with your camera or picked from your photo library, then copied into FitFlow's private app sandbox on your device. Progress photos are never uploaded to any server we operate and are not shared with any third party. They are included in iCloud sync (see 1.3) when you hold an active Premium entitlement.
If you choose to add a progress photo, the photo is captured with your camera or picked from your photo library, then copied into FitFlow's private app sandbox on your device. Progress photos are never uploaded to any server we operate and are not shared with any third party. They are included in local backup files (see 1.3) when you choose to export them.
If you choose to add a progress photo, the photo is captured with your camera or picked from your photo library, then copied into FitFlow's private app sandbox on your device. Progress photos are never uploaded to any server we operate and are not shared with any third party. They are included in iCloud sync on iOS (see 1.3) when you hold an active Premium entitlement, and in local backup files on Android (see 1.4) when you choose to export them.
1.3 iCloud sync
iCloud sync is offered as a FitFlow Premium feature to keep your training data consistent across your own Apple devices. When your Premium entitlement is active, your local records (exercises, plans, sessions, weight log, progress photos, settings) are synchronized to your own iCloud account's private CloudKit database. The data resides in your iCloud container; we do not operate a backend that receives, stores, or processes this data. Sync stops automatically when your Premium entitlement lapses; you can also stop sync at any time by signing out of iCloud in iOS Settings, which prevents any further data from being written to your iCloud container.
1.3 Local backup and restore
FitFlow can export an integrity-checked backup archive of your training data (database snapshot and progress photos) to a file you choose on your device, and can import such an archive back. Backup files are produced and consumed entirely on-device. We do not receive or store these files. You control where the file is saved, with whom it is shared, and when it is deleted.
1.3 iCloud sync (iOS only)
On iOS, iCloud sync is offered as a FitFlow Premium feature to keep your training data consistent across your own Apple devices. When your Premium entitlement is active, your local records (exercises, plans, sessions, weight log, progress photos, settings) are synchronized to your own iCloud account's private CloudKit database. The data resides in your iCloud container; we do not operate a backend that receives, stores, or processes this data. Sync stops automatically when your Premium entitlement lapses; you can also stop sync at any time by signing out of iCloud in iOS Settings, which prevents any further data from being written to your iCloud container. iCloud sync is not available on Android.
1.4 Local backup and restore (Android only)
On Android, FitFlow can export an integrity-checked backup archive of your training data (database snapshot and progress photos) to a file you choose on your device, and can import such an archive back. Backup files are produced and consumed entirely on-device. We do not receive or store these files. You control where the file is saved, with whom it is shared, and when it is deleted. On iOS, this surface is not offered; iCloud sync (see 1.3) provides equivalent data portability across your Apple devices.
1.4 In-app voice coach (text-to-speech)
1.5 In-app voice coach (text-to-speech)
FitFlow uses the on-device text-to-speech engine provided by your operating system to read short prompts such as "rest" and "next set" in your current app language. Prompt text is generated locally and is rendered by the system TTS engine. FitFlow does not send your training data to any cloud TTS service.
1.5 Training reminders
1.6 Training reminders
If you enable training reminders, FitFlow schedules local notifications on your device using the system notification framework. Reminder times and the linked plan are stored locally; no notification content is sent through any server we operate. You can disable reminders at any time inside the app or in your system settings.
1.6 Advertising data
1.7 Advertising data
The free tier of FitFlow displays advertisements through Google AdMob to keep the app free to use. Google AdMob and its partners may collect and process information such as your Identifier for Advertisers, device information (model, operating system, language), coarse location derived from IP address, and interaction data (ad views, clicks). FitFlow shows the App Tracking Transparency prompt before any cross-app tracking identifier is requested. Where required by regional regulations, FitFlow also presents the Google User Messaging Platform consent form before any ad is requested. This processing is performed by Google according to Google's own advertising and privacy policies, and you can limit or reset your advertising identifier at any time from your device's system settings (see section 4). Premium subscribers do not see advertisements.
The free tier of FitFlow displays advertisements through Google AdMob to keep the app free to use. Google AdMob and its partners may collect and process information such as your Advertising ID, device information (model, operating system, language), coarse location derived from IP address, and interaction data (ad views, clicks). Where required by regional regulations, FitFlow presents the Google User Messaging Platform consent form before any ad is requested. This processing is performed by Google according to Google's own advertising and privacy policies, and you can limit or reset your Advertising ID at any time from your device's system settings (see section 4). Premium subscribers do not see advertisements.
The free tier of FitFlow displays advertisements through Google AdMob to keep the app free to use. Google AdMob and its partners may collect and process information such as your advertising identifier (Apple's Identifier for Advertisers on iOS, or the Advertising ID on Android), device information (model, operating system, language), coarse location derived from IP address, and interaction data (ad views, clicks). On iOS, FitFlow shows the App Tracking Transparency prompt before any cross-app tracking identifier is requested. Where required by regional regulations, FitFlow also presents the Google User Messaging Platform consent form before any ad is requested. This processing is performed by Google according to Google's own advertising and privacy policies, and you can limit or reset your advertising identifier at any time from your device's system settings (see section 4). Premium subscribers do not see advertisements.
1.7 In-app purchases
1.8 In-app purchases
FitFlow Premium is available as an auto-renewable monthly subscription, an auto-renewable annual subscription, or a one-time lifetime purchase. The transaction is processed by the Apple App Store. FitFlow does not receive your payment method, billing address, or any personally identifying information from Apple. It only receives the purchase token used to verify entitlement locally on your device. Subscription management is handled in your Apple ID account; the lifetime purchase is a one-time transaction and is not subject to renewal.
FitFlow Premium is available as an auto-renewable monthly subscription, an auto-renewable annual subscription, or a one-time lifetime purchase. The transaction is processed by Google Play. FitFlow does not receive your payment method, billing address, or any personally identifying information from Google. It only receives the purchase token used to verify entitlement locally on your device. Subscription management is handled in your Google Play account; the lifetime purchase is a one-time transaction and is not subject to renewal.
FitFlow Premium is available as an auto-renewable monthly subscription, an auto-renewable annual subscription, or a one-time lifetime purchase. The transaction is processed by the platform store (Apple App Store on iOS or Google Play on Android). FitFlow does not receive your payment method, billing address, or any personally identifying information from the store. It only receives the purchase token used to verify entitlement locally on your device. Subscription management is handled in your platform store account; the lifetime purchase is a one-time transaction and is not subject to renewal.
1.8 In-app review
1.9 In-app review
When you tap "Rate this app", FitFlow asks the system to display the standard StoreKit in-app review dialog. The dialog and any rating you leave are handled entirely by Apple; FitFlow does not see your rating or any content you write.
When you tap "Rate this app", FitFlow asks the system to display the standard Google Play in-app review dialog. The dialog and any rating you leave are handled entirely by Google; FitFlow does not see your rating or any content you write.
When you tap "Rate this app", FitFlow asks the system to display the standard in-app review dialog (StoreKit on iOS, Google Play In-App Review on Android). The dialog and any rating you leave are handled entirely by the platform; FitFlow does not see your rating or any content you write.
2. How We Use Information
- To run today's workout, rest timers, voice cues, and exercise animations.
- To remember your appearance, language, units, week start, and reminder preferences.
- To compute charts, the activity heatmap, and personal records from data you log.
- To synchronize your data to your own iCloud account when you hold an active Premium entitlement.
- To produce and consume local backup files you create yourself.
- To synchronize your data to your own iCloud account when you hold an active Premium entitlement on iOS.
- To produce and consume local backup files you create yourself on Android.
- To verify your Premium entitlement and unlock paid features.
- To serve and measure advertisements through Google AdMob, where applicable.
- To trigger the system in-app review dialog when you tap the rating entry.
- To maintain app stability and comply with applicable app store and legal requirements.
3. We Do Not Collect
FitFlow does not request, collect, or transmit:
- Your name, email address, phone number, or postal address.
- Your precise location (no fine or coarse location permission is requested by the app itself; AdMob may derive coarse location from your IP for ad delivery).
- Health-platform data (FitFlow does not integrate with Apple Health, Google Fit, or Health Connect).
- Your contacts, calendar, microphone audio, or SMS / call data.
- Crash reports or analytics events sent to a backend we operate.
4. Advertising and Google AdMob
FitFlow uses Google AdMob to show ads in the free tier. Depending on your region and device settings, AdMob may use your Identifier for Advertisers to deliver personalized or non-personalized advertising, to measure ad performance, and to prevent fraud. FitFlow shows the App Tracking Transparency prompt before AdMob is allowed to access the Identifier for Advertisers. Where required by regional regulations, FitFlow also presents the Google User Messaging Platform consent form before any ad is requested. You can limit ad personalization or reset your advertising identifier at any time from your device's system settings.
FitFlow uses Google AdMob to show ads in the free tier. Depending on your region and device settings, AdMob may use your Advertising ID to deliver personalized or non-personalized advertising, to measure ad performance, and to prevent fraud. Ad behavior is governed by your device's ad personalization setting and Google AdMob's own regional policies. Where required by regional regulations, FitFlow presents the Google User Messaging Platform consent form before any ad is requested. You can limit ad personalization or reset your Advertising ID at any time from your device's system settings.
FitFlow uses Google AdMob to show ads in the free tier. Depending on your region and device settings, AdMob may use your advertising identifier to deliver personalized or non-personalized advertising, to measure ad performance, and to prevent fraud. On iOS, FitFlow shows the App Tracking Transparency prompt before AdMob is allowed to access the Identifier for Advertisers. Where required by regional regulations, FitFlow also presents the Google User Messaging Platform consent form before any ad is requested. On Android, ad behavior is governed by your device's ad personalization setting and Google AdMob's own regional policies. You can limit ad personalization or reset your advertising identifier at any time from your device's system settings.
You can limit ad tracking at any time from your device settings:
- On iOS and iPadOS, manage your choice under Settings > Privacy & Security > Tracking, and under Settings > Privacy & Security > Apple Advertising.
- On Android, reset or delete your Advertising ID and opt out of ad personalization under Settings > Privacy > Ads (the exact path may vary by device).
- On iOS and iPadOS, manage your choice under Settings > Privacy & Security > Tracking, and under Settings > Privacy & Security > Apple Advertising.
- On Android, reset or delete your Advertising ID and opt out of ad personalization under Settings > Privacy > Ads (the exact path may vary by device).
For further details, please see:
5. Sharing of Information
We do not sell your personal information. Depending on the features you use, information may be processed by:
- Apple iCloud (CloudKit), when iCloud sync is active under your Premium entitlement; data is stored in your own iCloud account's private database.
- Apple iCloud (CloudKit), when iCloud sync is active under your Premium entitlement on iOS; data is stored in your own iCloud account's private database.
- Google AdMob and its advertising partners, to deliver and measure advertisements in the free tier.
- The Google User Messaging Platform, to request and record your advertising consent where regional regulations require it.
- The Apple App Store, for app distribution, updates, billing for in-app purchases, and platform-level diagnostics.
- Google Play, for app distribution, updates, billing for in-app purchases, and platform-level diagnostics.
- The app store platform from which you downloaded the app (Apple App Store or Google Play), for app distribution, updates, billing for in-app purchases, and platform-level diagnostics.
- Any app you explicitly choose when sharing a progress photo through the system share sheet.
- Any app you explicitly choose when sharing a backup file or progress photo through the system share sheet.
- Any app you explicitly choose when sharing a backup file (Android) or progress photo through the system share sheet.
6. Data Retention
Local data such as your training records, weight log, progress photos, preferences, and Premium entitlement remains on your device until you delete it from inside the app, clear app data in system settings, or uninstall the app. iCloud-synced data remains in your own iCloud container until you delete it from inside the app, let your Premium entitlement lapse so further sync stops, sign out of iCloud, or delete the data directly from iCloud. Data processed by third-party services such as Google AdMob or the Apple App Store is retained according to those services' own retention policies.
Local data such as your training records, weight log, progress photos, preferences, and Premium entitlement remains on your device until you delete it from inside the app, clear app data in system settings, or uninstall the app. Backup files you export are retained at the location you saved them to until you delete them yourself. Data processed by third-party services such as Google AdMob or Google Play is retained according to those services' own retention policies.
Local data such as your training records, weight log, progress photos, preferences, and Premium entitlement remains on your device until you delete it from inside the app, clear app data in system settings, or uninstall the app. iCloud-synced data remains in your own iCloud container until you delete it from inside the app, let your Premium entitlement lapse so further sync stops, sign out of iCloud, or delete the data directly from iCloud. Data processed by third-party services such as Google AdMob or the platform store is retained according to those services' own retention policies.
7. Your Choices and Controls
- You can delete individual workout sessions, plans, weight entries, and progress photos at any time.
- You can clear all weight records, recent searches, or reset progress photos from inside the app.
- You can stop training reminders from the Profile / Settings screen at any time. iCloud sync stops automatically when your Premium entitlement lapses; signing out of iCloud in iOS Settings additionally prevents further data from being written to your iCloud container.
- You can stop training reminders from the Profile / Settings screen at any time. Local backup files only exist where you save them; deleting them is entirely under your control.
- You can stop training reminders from the Profile / Settings screen at any time. On iOS, iCloud sync stops automatically when your Premium entitlement lapses; signing out of iCloud in iOS Settings additionally prevents further data from being written to your iCloud container.
- You can manage your advertising identifier and ad personalization from your device's system settings.
- You can manage or cancel your Premium subscription from your Apple ID account.
- You can manage or cancel your Premium subscription from your Google Play account.
- You can manage or cancel your Premium subscription from your platform store account.
- You can uninstall FitFlow at any time, which removes all local data created by the app on your device.
8. Security
We take reasonable technical and organizational steps to reduce privacy and security risks. Your data lives in FitFlow's private app sandbox on your device and, when your Premium entitlement is active, in your own iCloud account's private CloudKit database. Network calls made by the app (advertising, advertising consent, App Store, iCloud, app review) use the operating system's encrypted transports. However, no method of electronic storage or internet transmission is completely secure.
We take reasonable technical and organizational steps to reduce privacy and security risks. Your data lives in FitFlow's private app sandbox on your device. Local backup archives are produced with integrity-checked compression so corruption can be detected on import. Network calls made by the app (advertising, advertising consent, Google Play, app review) use the operating system's encrypted transports. However, no method of electronic storage or internet transmission is completely secure.
We take reasonable technical and organizational steps to reduce privacy and security risks. Your data lives in FitFlow's private app sandbox on your device and, when your Premium entitlement is active on iOS, in your own iCloud account's private CloudKit database. On Android, local backup archives are produced with integrity-checked compression so corruption can be detected on import. Network calls made by the app (advertising, advertising consent, store, iCloud, app review) use the operating system's encrypted transports. However, no method of electronic storage or internet transmission is completely secure.
9. Children's Privacy
FitFlow is a general-audience fitness reference app and is not directed to children under 13 (or the equivalent minimum age in your jurisdiction). We do not knowingly collect personal information from children. If you believe a child has provided personal information through the app, please contact us and we will take appropriate steps.
10. International Users
FitFlow is available globally through the Apple App Store and Google Play. Depending on the features you use (for example AdMob or iCloud sync), your data may be processed by service providers in locations outside your country or region, subject to those providers' applicable policies and safeguards.
11. Permissions
FitFlow only requests the permissions needed for its declared features:
- Network & Identifier for Advertisers: to load advertisements, the App Store, the StoreKit in-app review flow, and iCloud sync.
- Network & Advertising ID: to load advertisements, Google Play, and the Google Play in-app review flow.
- Network & Advertising ID: to load advertisements, the platform store, the system in-app review flow, and iCloud sync.
- Camera: only when you choose to take a new progress photo.
- Photo library / media images: only when you choose to attach an existing image as a progress photo.
- Notifications: only when you enable training reminders, so the app can post local notifications.
- Vibration: for in-workout haptic feedback (rest timer end, set completion).
- App Tracking Transparency: shown before AdMob may access the Identifier for Advertisers.
- App Tracking Transparency (iOS): shown before AdMob may access the Identifier for Advertisers.
FitFlow does not request access to your contacts, precise location, microphone, health platforms (Apple Health / Google Fit / Health Connect), calendar, SMS, or call history.
12. Your Rights
Depending on where you live, you may have rights under applicable privacy laws (including GDPR, UK GDPR, CCPA/CPRA, LGPD and similar regulations) to access, correct, delete, restrict, object to processing, or port data relating to you. Because FitFlow stores your data locally on your device, you can exercise most of these rights directly by managing settings in the app, clearing app data, or uninstalling the app. For requests that cannot be resolved this way, please contact us using the details below.
13. Changes to This Policy
We may update this Privacy Policy from time to time to reflect changes to the app, legal requirements, or third-party service providers. The latest version will be published with an updated effective date at the top of this page. Your continued use of the app after an update means you accept the revised policy.
14. Contact Us
If you have questions about this Privacy Policy or about how your data is handled, please contact us at: luofeiyuo@gmail.com