Gruntz is a local-first mobile fitness app focused on tactical-style training missions, progress, and subscription-gated premium content. This Privacy Policy describes what data the current version of Gruntz may process, how that information is used, and when it may be shared with service providers.
1. Information We Collect
Gruntz is local-first. Your progress and settings are stored on the device, and no account is required to train. Optional progress backup uploads the data described below. Viewing a route map requests map tiles from our map provider, and sharing an activity card sends the image only to the destination you choose.
Information stored on the device
- Profile and onboarding selections.
- Program choice, week state, and assessment inputs.
- Mission history, streaks, XP, achievements, and related progress metrics.
- Settings such as notification preferences, reminders, and theme preferences.
- Locally saved subscription state used to reflect entitlement status inside the app.
- Outdoor activity history, including GPS routes, timestamps, distance, duration and elevation.
Permissions and fitness data
- Location permission is requested when you start a run, ruck or hike. If you choose background recording and grant Always location access, an activity can continue while the screen is locked or you use another app. Ending or pausing the activity stops GPS recording; Gruntz does not start location recording simply because you open the app.
- Motion-related sensors, including pedometer and barometer where available, may be used to support workout or run-tracker metrics.
- Notification permission may be requested for daily reminders and mission-status alerts.
Optional account and progress backup
Gruntz does not require an account. Training works fully offline and always will. If you choose to turn on progress backup from the Profile tab, the following applies:
- We collect your email address, and use it only to send you a one-time sign-in code and to identify your backup. There is no password, and we do not send marketing email.
- A copy of your training history and app progress — logged workouts, streaks, achievements, plan state, check-ins, outdoor activity stats and settings — is uploaded so it can be restored if you lose, break or replace your phone.
- Precise GPS routes stay on your device unless you separately turn on Include GPS routes in backup. This optional setting includes saved route coordinates in your Supabase backup; it is off by default.
- Backups are stored with Supabase, our database provider, and protected by row-level security so that a backup is readable and writable only by the account that created it.
- Your subscription and entitlement status is not included in the backup.
You can delete your backup, or delete your entire account, at any time from inside the app (Profile → Back up progress). Deleting your account permanently removes your email address and your stored backup from our servers. See Data Retention.
Optional teams
Teams are optional and off unless you create or join one (Profile → Leader tools). A team uses the same account and email sign-in as progress backup. If you are in a team:
- The other members of that team can see your display name, your completed session count, your streak length, and a green, amber or red readiness status taken from that day's check-in, with the time it was last updated.
- Nothing else is shared with a team. Weights, reps, sleep, limitations, test scores, GPS routes and location are not sent to it.
- Team data is stored with Supabase and protected by row-level security, so a team and its roster are readable only by that team's members. A team can only be joined with its invite code.
- Leaving a team removes your entry from it and stops sharing. A team leader can remove a member. Deleting your account also removes you from your team.
Route maps and activity cards
Maps use OpenFreeMap and OpenStreetMap data. Loading map tiles sends the map provider your IP address and requests for the geographical area displayed; it does not upload your full GPS route as an activity record. Your route is drawn on your device. An activity card is generated on your device, and the system share sheet lets you choose where to send it. Share previews hide the route within 200 metres of its start and finish by default. This reduces exposure of those endpoints but cannot guarantee that a route or its surroundings will not reveal a location. You can review the image and change this setting before sharing.
Purchase and subscription data
- Subscription, entitlement, and transaction-related information may be processed through RevenueCat and the app-store platform you use.
- Apple App Store or Google Play may process store account, billing, receipt, and renewal data under their own policies.
2. How We Use Information
- Deliver the core mission flow, progress system, and training reference content.
- Store and restore your local workout history, streaks, achievements, and preferences.
- Enable run-tracking or motion-driven workout features when you choose to use them.
- Send reminders or mission alerts when notifications are enabled.
- Determine premium access status and restore purchases.
- Send a one-time sign-in code to your email address, if you enable progress backup.
- Store and restore your backed-up training history, if you enable progress backup.
- Show your name, session count, streak and readiness status to your team, if you join one.
- Respond to support requests you send to us.
3. Sharing and Service Providers
We do not sell personal information from the current Gruntz app, and the current build does not include third-party advertising SDKs.
We may rely on the following categories of third parties to operate the app:
- RevenueCat for subscription and entitlement management.
- Supabase for optional account sign-in, progress backup storage and team rosters, and Resend for delivering sign-in code emails — only if you enable progress backup or use teams.
- Apple App Store or Google Play for payment processing and store-managed subscriptions.
- OpenFreeMap for map tiles and styles when you view a route map.
- Platform-level services used by the operating system to deliver notifications and fitness permissions.
4. Data Retention
Local app data remains on your device until you delete it, remove the app, or clear device storage. Subscription and purchase records handled by RevenueCat, Apple, or Google may be retained according to those providers’ legal and operational requirements.
If you enable progress backup, your email address and your most recent backup are retained until you delete them. You can delete your backup, or delete your account entirely, from Profile → Back up progress inside the app. Deleting your account removes your email address and your backup from our servers permanently and cannot be undone; the copy of your training on your own phone is left untouched.
If you join a team, your team entry is retained until you leave the team, are removed from it, or delete your account. A team with no members left is deleted.
5. Security
We use the storage and security features available in the app stack, including local device storage and secure storage for sensitive configuration where appropriate. No method of storage or transmission is perfectly secure, so we cannot guarantee absolute security.
6. Children’s Privacy
Gruntz is not directed to children under 13, and we do not knowingly design the service for child-directed data collection. If you believe a child has provided personal information through support or another direct channel, contact us and we will review the request.
7. Your Choices
- You can decline optional permissions such as notifications or location access.
- You can use foreground recording, pause or end an activity, and revoke background location access in device settings.
- You can review an activity card and its route visibility before opening the system share sheet.
- You can cancel subscriptions through Apple App Store or Google Play account settings.
- You can remove locally stored app data by deleting the app or clearing device data.
- You can leave progress backup turned off entirely, or turn it on and later delete your backup or your whole account from inside the app.
8. Future Updates
If Gruntz adds new integrations, analytics tooling, or health platform sync in a future release, this policy may change to reflect those features. The latest version of the policy will always be posted on this page with an updated effective date.
9. Contact
Questions about privacy, support, or data handling can be sent to johnnyhashim@gmail.com.