Privacy Policy – RaceCoach

Last updated: 15 July 2026

Pure Software Solutions (“we”, “us”, or “our”) operates the RaceCoach mobile application (the “App”). This policy explains what data the App collects, how it is used, and the choices you have.


1. What Data We Collect

1.1 Data You Provide

  • Video files: MP4 files you select from your device. These are processed locally on your device to extract GPS metadata. The video content is never transmitted to our servers.
  • GPS/telemetry data: Latitude, longitude, speed, elevation, and timestamp data extracted from your video files. This data is processed and stored locally on your device. When you request AI coaching, a derived text summary of sector and session metrics (such as lap times, entry and exit speeds, apex positions, braking points, and deceleration values) is sent to the RaceCoach AI service. Raw GPS coordinates and original video files are never transmitted for AI coaching.
  • Driver name or nickname: You may optionally enter a driver name or nickname in the App’s settings or session metadata. It is stored locally on your device and, if set, may be included in AI coaching requests so coaching feedback and historic session comparisons can clearly refer to the relevant driver. It is not shared with analytics or attribution services.
  • AI coaching questions: If you type a question into Ask RaceCoach, that question is sent to the RaceCoach AI service so the App can generate a response.

1.2 AI Coaching

When you use AI coaching, the App sends a text-only summary of the selected sector, session, or comparison data to the RaceCoach AI service. This summary may include sector times, lap times, corner entry and exit speeds, apex speed and position, braking onset position, braking zone length, peak deceleration, throttle application position, coasting distance, consistency score, session trend, approximate track location, driver name or nickname, session metadata, and your AI coaching question.

We do not upload your original MP4 video files. We do not send raw GPS coordinates. AI coaching requests are processed by the RaceCoach AI service, which forwards only derived telemetry summaries to the configured AI provider. We do not upload original MP4 video files, filenames, file paths, raw GPS coordinate arrays, or full sample traces for AI coaching.

AI coaching data is used solely to generate coaching feedback, including explanations and historic comparisons between sessions. It is not sold, and it is not shared with AppsFlyer for attribution or advertising measurement. Provider retention and model-improvement handling depends on the configured provider contract and is reviewed before production launch.

1.3 Data Collected Automatically

Usage Analytics (Amplitude)

We use Amplitude (EU region) to collect anonymised usage analytics, including:

  • App sessions (start and end)
  • Feature interactions (e.g. file import, lap detection, AI coach tab opened)
  • Device type and operating system version

Amplitude analytics are only activated after you explicitly opt in during the onboarding flow. Data is sent to Amplitude’s EU servers. Amplitude’s privacy policy is available at amplitude.com/privacy.

Attribution Analytics (AppsFlyer)

We use AppsFlyer to understand how users discover the App and to measure subscription conversion from marketing campaigns. AppsFlyer may collect:

  • Install source attribution
  • Selected in-app conversion events, such as app launch, first session, lap analysis, sector analysis, and successful subscription purchase
  • A device advertising identifier (if available and consented)

AppsFlyer attribution is only activated after you explicitly opt in to analytics. On iOS, where Apple requires tracking permission, AppsFlyer attribution and tracking are activated only after App Tracking Transparency permission is granted. If you deny tracking permission, core app functionality remains available. AppsFlyer’s privacy policy is available at appsflyer.com/legal/privacy-policy.

Crash Reporting (Sentry)

We use Sentry to collect crash reports and diagnostic information, including:

  • Stack traces and error messages
  • Device model and OS version
  • App version

Sentry is only activated after you explicitly opt in. Crash reports may include device model, OS version, app version, error logs, and diagnostic metadata. We aim to minimise the information collected. Sentry’s privacy policy is available at sentry.io/privacy.

1.4 Data We Do Not Collect

  • We do not collect your email address, phone number, physical address, or payment card information.
  • We do not collect your location in real time. GPS data is extracted only from video files you select and is processed locally.
  • We do not upload your original MP4 video files or raw GPS coordinates to any server.
  • We do not sell any data.

2. How We Use Your Data

Data Purpose
GPS/telemetry from video Lap detection, sector analysis, speed charts — processed locally. Derived text summaries are sent to the RaceCoach AI service when AI coaching is used.
Driver name or nickname (optional) Personalising AI coaching output and identifying drivers in historic session comparisons. Not shared with analytics or attribution services.
AI coaching questions and session metadata Generating driving coaching feedback and explaining comparisons via the RaceCoach AI service
Usage analytics Understanding which features are used to improve the App
Crash reports Identifying and fixing bugs
Attribution data Measuring effectiveness of App Store marketing and subscription campaigns

3. Your Choices

Analytics consent: During onboarding, you are asked whether you consent to analytics and crash reporting. You may change your consent at any time from the App’s settings screen. Withdrawing consent stops all future data collection; previously collected data is subject to the retention policies of Amplitude, AppsFlyer, and Sentry respectively.

Tracking permission on iOS: On iOS, if AppsFlyer attribution requires tracking permission, the App uses Apple’s App Tracking Transparency permission prompt before activating AppsFlyer attribution or tracking. You may deny this permission without affecting RaceCoach’s core functionality.

Data deletion: Because we do not operate user accounts, analytics data is associated with a pseudonymous device identifier rather than your name or email. The most effective way to stop data collection is to withdraw consent in the App settings — this immediately stops all further collection by Amplitude, AppsFlyer, and Sentry.

If you wish to exercise a formal GDPR right of erasure over previously collected analytics data, contact us at the address in section 7. We will work with you to identify your pseudonymous device identifier and submit a deletion request to the relevant analytics platform(s) on your behalf. Note that Sentry crash reports do not contain your name or account identifier and cannot be individually deleted; deletion requests are handled at the platform level.

You can also contact the analytics platforms directly using their privacy portals:


4. Data Storage and Security

Raw telemetry data and session history are stored locally on your device using the device’s private application storage. They are not accessible to other apps and are deleted when you uninstall the App. When AI coaching is used, limited derived text summaries may be transmitted as described in section 1.2.

Analytics data transmitted to Amplitude is stored on EU servers. We apply reasonable technical measures to protect data in transit (HTTPS).


4a. Data Retention

Data stored locally on your device (video files, GPS/telemetry, name, session history) remains on your device until you delete it or uninstall the App.

AI coaching requests are processed by the RaceCoach AI service to generate coaching responses. Responses may be cached by payload hash and audience mode to control cost and improve reliability. Provider keys are stored only in cloud secret management.

Analytics, attribution, and crash reporting data is retained by Amplitude, AppsFlyer, and Sentry respectively according to their own retention policies. You may request deletion via the portals listed in section 3.

Standard server access logs (e.g. health check requests) are retained for up to 30 days for security and troubleshooting purposes.


5. Children

The App is available to users of all ages and is not restricted to adults. It contains no harmful content and is suitable for use by children. We are committed to following the Google Play Families Policy.

Our analytics and crash reporting tools (Amplitude, AppsFlyer, Sentry) are entirely opt-in and are only activated after explicit consent is given. For users under the age of 13, consent to analytics must be provided by a parent or guardian. Parents or guardians completing the onboarding consent screen on behalf of a child under 13 are consenting on their behalf.

If you believe analytics consent has been given on behalf of a child without appropriate parental authorisation, please contact us and we will disable analytics for that device and request deletion of any collected data.


6. Changes to This Policy

We may update this policy as the App evolves. Material changes will be notified within the App or via an updated “Last updated” date at the top of this document. Continued use of the App after changes constitutes acceptance of the revised policy.


7. Contact

If you have questions about this privacy policy, please contact:

Pure Software Solutions
Email: support@puresoftwaresolutions.co.uk
Website: puresoftwaresolutions.co.uk


8. Applicable Law

This policy is governed by the laws of Spain. If you are located in the European Economic Area, you have rights under the General Data Protection Regulation (GDPR), including the right to access, rectify, or erase your personal data, and the right to lodge a complaint with a supervisory authority.


9. App Store Privacy Nutrition Labels

This policy applies to both the Google Play (Android) and Apple App Store (iOS) versions of the App.

For the Apple App Store, the following data categories are declared in our Privacy Nutrition Label in App Store Connect:

Data type Category Linked to identity Used for tracking Purpose
Product Interaction Usage Data Yes Yes Analytics, App Functionality, and marketing attribution
Purchases Purchases Yes Yes Subscription functionality, analytics, and marketing attribution
Device ID Identifiers Yes Yes Analytics, App Functionality, and attribution
Name Contact Info Yes No AI Coaching and historic session comparison
Crash Data Diagnostics Yes No App Functionality
Performance Data Diagnostics Yes No App Functionality
Other Diagnostic Data Diagnostics Yes No App Functionality
AI coaching questions User Content Yes No AI Coaching and App Functionality
Other Data (derived telemetry summaries and session metadata) Other Data Yes No AI Coaching and App Functionality
Coarse Location (approximate track location) Location No No AI Coaching and App Functionality

Original video files and raw GPS coordinates are processed exclusively on-device and are not transmitted. They are not declared in the Nutrition Label, consistent with Apple’s guidelines.

Derived telemetry summaries, session metadata, driver names or nicknames, and AI coaching questions are transmitted to the RaceCoach AI service when you use AI coaching. Original videos, raw GPS coordinate arrays, file paths, and filenames are not sent for AI coaching.

Usage Data, Purchases, and Identifiers may be used for tracking where AppsFlyer attribution is enabled. On iOS, the App presents Apple’s App Tracking Transparency prompt before activating AppsFlyer attribution or tracking. You may deny that permission without affecting core app functionality.