Privacy Policy

Last updated: March 1, 2026

This privacy policy applies to all apps and services operated by Bundle Moose, including Grinding Gears ("the App"), the bundlemoose.com website, and the api.bundlemoose.com backend. By using our services, you agree to the collection and use of information as described here.

1. Data We Collect

Bluetooth Sensor Data

The App uses Bluetooth Low Energy (BLE) to communicate with FTMS-compatible cycling trainers. During workouts, the App receives power (watts), cadence (RPM), speed, and heart rate readings at one-second intervals. This data is processed and stored locally on your device only.

Workout History

Completed workout summaries—including date, duration, average and maximum power, cadence, speed, heart rate, and distance—are stored locally on your device. Full second-by-second telemetry is retained on-device for review and optional upload to Strava.

User Preferences

Settings such as your FTP (Functional Threshold Power), speed unit preference, and custom workout definitions are stored locally on your device.

Strava Integration (Optional)

If you connect your Strava account, we receive and store:

When you explicitly tap "Upload to Strava," the App sends your workout data (power, cadence, speed, heart rate, duration, distance) to Strava via our server. We do not upload workouts without your action.

Subscription Data

In-app purchases are managed by Apple (App Store) or Google (Play Store) through RevenueCat. We receive only an anonymous identifier and your entitlement status (e.g., whether you have an active subscription). We never receive or store your payment card details, billing address, or Apple/Google account credentials.

Session & Authentication Data

When you connect to Strava, we create a signed session token to authenticate subsequent requests. On the web, this is stored as an HttpOnly, Secure cookie (gg_session) with a 30-day expiration. On mobile, the token is stored in your device's secure keychain (iOS Keychain or Android Keystore).

2. Data We Do Not Collect

3. How We Use Your Data

4. Data Storage & Security

5. Third-Party Services

6. Bluetooth & Device Permissions

The App requires Bluetooth permission to discover and connect to cycling trainers. On iOS, background Bluetooth is enabled so workout recording continues if you briefly switch apps. On Android (API 31+), the App requests BLUETOOTH_SCAN and BLUETOOTH_CONNECT permissions. On older Android versions, ACCESS_FINE_LOCATION is required by the operating system for BLE scanning—however, the App does not access your GPS location.

7. Data Retention & Deletion

To delete all data associated with your use of the App, disconnect Strava (if connected) and uninstall the App.

8. Children's Privacy

The App is not directed to children under 13. We do not knowingly collect data from children. If you believe a child has provided us with data, please contact us and we will delete it.

9. Your Rights

You can:

10. Changes to This Policy

We may update this policy from time to time. Changes will be posted on this page with an updated date.

11. Contact

Questions or requests? Contact us at [email protected].