Privacy Policy
Last updated: 21 Oct 2026 (Rev. 5).
1. Controller
Moritz Fahsig
Steinstraße 44, 81667 München
Germany
Email:
2. What data we collect
Which data we store depends on which parts of Pumpfoilytics you use. The categories in detail:
2.1 Companion app (basic use)
When you use the Companion app in its basic form, we collect your email address, which you provide voluntarily when you first start the app. It is needed to send you a magic link for signing in.
When you only use the app, your activity data (GPS tracks, heart rate, FIT files) is stored and processed locally on your device. It is only stored on our server if you actively use one of the functions in section 2.4 (session upload, Garmin connection, FIT import or analysis sessions that we import for you).
2.2 Web account on pumpfoilytics.com
If you create an account on pumpfoilytics.com, we store:
- email address and username / display name (alias)
- optional: name and home spot, if you enter them in your profile
- your password — only as a salted hash (scrypt), never in plain text
- time and version of your consents (e.g. to token storage and optional data use, see 2.4/2.5)
- technical account data: login sessions (cookie), account status, enabled features
2.3 Tester waiting list (Companion beta)
If you sign up for the Companion beta, we store your email address and the details from the sign-up form (optional: name, home spot, since when you have been pumping; device brand and smartphone system, language) and whether you would like to receive news (opt-in). To prevent abuse, we store the time of your email confirmation (double opt-in), not your IP address.
2.4 Session data on the server (Pump Lab & session sync)
The Pump Lab analyses your FIT files in your browser; the original file stays there. On import it also creates the session and its analysis in your account (laps, metrics, per-second readings with speed and GPS) so that sharing, submitting, syncing between devices and the Companion app work. As with every other route, we only store heart rate and other body data with your explicit consent. Excluded sessions, confirmed Garmin notices and foil setup names are also stored across devices; tags stay in your browser.
2.5 Garmin connection (Direct Integration)
If you connect your Garmin account to Pumpfoilytics, we store:
- the email address of your Garmin account (for display only)
- access tokens for Garmin Connect — encrypted (Fernet encryption, key kept separate from the database). Your Garmin password itself is not stored — neither in plain text nor as a hash.
The connection lets you load activities from Garmin Connect into the Pump Lab (fetched directly into your browser) and — depending on your settings — have sessions added to your account automatically. Garmin remains the controller for your Garmin account; Garmin's privacy policy also applies.
2.6 Sessions for development (testers only)
If you agree as a tester, we keep the original files of your sessions, linked to your account, without a time limit and use them to develop and test Pumpfoilytics' detection, including with AI tools from our service provider Anthropic. This includes heart rate and other body data from the files if you have agreed to storing them. You can withdraw at any time in Settings under “Data use”. We then delete the copies kept for development; your sessions in the Lab stay. Without consent, the retention periods in section 4 apply.
3. Purposes and legal bases
- Account, sign-in, web functions, transactional emails, waiting list, sessions, Garmin connection: contract (Art. 6(1)(b) GDPR).
- Heart rate and other body data: explicit consent (Art. 9(2)(a)). Improving detection (“data use”, including “keep sessions for development”), news, AI support and analytics: consent (Art. 6(1)(a)).
- Map display and proof of deletion: legitimate interest (Art. 6(1)(f)).
We do not use your data for advertising and do not pass it on to third parties, except for the service providers in sections 4 and 7 and the map services in section 7a.
4. Storage and security
The database is hosted by Supabase in Ireland, the application server and backups by Hetzner in Nuremberg. Transfer only via HTTPS, passwords only as a hash, Garmin tokens encrypted. In the Companion app, sessions are stored encrypted (SQLCipher), the sign-in token and email unencrypted in the app's private storage, without backup. We send emails via Gmail (Google). We keep account and session data until your account is deleted, Garmin tokens until you disconnect, support images for 90 days. Original FIT files requested by support are deleted after 90 days unless you have agreed that we keep them for development (section 2.6).
5. Your rights
You have the right to:
- access to the data stored about you
- rectification of inaccurate data
- erasure of your data (see Delete account)
- restriction of processing
- data portability
- objection to processing
You can exercise many of these rights directly yourself:
- Data export (access/portability): on request to .
- Account and data deletion: see Delete account
- Disconnect Garmin: in the account settings — deletes the stored Garmin tokens.
To exercise your rights, you can also contact . You have the right to lodge a complaint with a data protection supervisory authority (Art. 77 GDPR).
6. Deleting your account
You can request the deletion of your account at any time (Delete account). Until it is deleted, you can cancel the request. No later than 30 days after you confirm, we permanently delete your account and all its data. As proof, we keep the time and a hash of your email address for one year. You delete data that is only on your device yourself.
7. Overview of service providers
| Service | Purpose | Location |
|---|---|---|
| Hetzner Online GmbH | Server, backups | Germany |
| Supabase | Database | Ireland |
| Google LLC | Sending emails, Google sign-in; analytics only with consent (sections 9–10) | USA (analytics: Standard Contractual Clauses) |
| Anthropic PBC | AI assistant in the support chat and AI tools of the support team | USA |
| Telegram | Notifying our team about support cases, without names or contact details | Third country |
Garmin is not one of our processors but an independent controller for your Garmin account; data is fetched from Garmin Connect on your behalf using your access tokens.
7a. Maps
Your browser or the Android app loads map tiles directly from the map service: Esri, or optionally OpenFreeMap or MapLibre in the app. The service sees your IP address and the map area, not your track.
8. Support and communication
If you send us a support request (e.g. in the AI Pump-Mate chat or via the hand-in function in the Pump Lab), we store your messages, any attached session data and images, and the chat history in order to handle your request. Answers in the chat are first written by an AI assistant. For this, your message, the chat history so far, an overview of your sessions from the last 30 days (date, location, distance, duration and metrics such as speed, average heart rate and pumps), the data of the session you currently have open, your watch model and app version, the status of your Garmin connection, the ideas you submitted and attached images are sent to an AI provider. Anything the assistant cannot resolve is handled by our team. If the assistant forwards your request, our team receives a notice via Telegram with only short identifiers and the type of request, without your name, email address or message text.
If you attach an image, we already shrink it in your browser and remove metadata such as the location where it was taken. Images are deleted automatically after 90 days, or immediately with the withdrawal button in Settings.
The legal basis is your consent to the support chat (Art. 6(1)(a) GDPR), which you can withdraw at any time in Settings.
8a. AI support (AI Transparency Statement)
Where we use AI: in support, i.e. the AI Pump-Mate chat and submissions in the Pump Lab (web). Without your consent to AI support, none of your data is processed by AI for this. In addition, only if you have agreed as a tester: developing and testing detection with the original files kept for you (section 2.6). You withdraw this consent under “Data use” in Settings.
Which data: your messages and the chat so far, attached images, an overview of your sessions from the last 30 days, the session you have open, your watch model and app version, the status of your Garmin connection and the ideas you submitted. If our support requests the original FIT file of a session, it is analysed too. This explicitly includes data from your Garmin Connect account, whether it reached us through the Garmin connection, the Garmin login or as an uploaded file.
Who: Answers are first written by an AI assistant from our provider Anthropic PBC (USA). Anything it cannot resolve is handled by our team, which also uses AI tools from this provider.
Consent and withdrawal: We ask for your explicit consent before any data is sent to the AI for the first time. You can withdraw at any time with the withdrawal button in Settings. After that nothing is sent to the AI, and we delete your chat, submissions, images and requested files.
9. Website analytics (Google Analytics)
This website (pumpfoilytics.com) uses Google Analytics 4 (GA4) from the provider Google LLC, 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA. GA4 is only activated if you actively agree in the cookie banner (Consent Mode v2, default: disabled).
If you agree, the following data is collected:
- Pages visited and time spent on them
- Approximate geographic region (country/region — derived from a truncated IP address)
- Browser and device type
- Source of the visit (direct / search engine / referral)
IP anonymisation: Google Analytics 4 automatically truncates IP addresses before storage. The full IP address is not stored.
Retention period: Event data is stored in GA4 for 14 months and then deleted automatically.
Legal basis: Art. 6(1)(a) GDPR (consent). You can withdraw your consent at any time with effect for the future — to do so, click Cookie Settings in the footer.
Data transfer to the USA: Google LLC is a US company. The data transfer is based on Standard Contractual Clauses (Art. 46(2)(c) GDPR). Further information: Google Privacy Policy.
Without your consent, GA4 only sends anonymous Consent Mode pings without personal data.
10. App analytics (Firebase Analytics, opt-in)
If you have given your consent, the Companion app uses Firebase Analytics (Google LLC) for anonymous usage statistics — which features are used, where users get stuck, how the app performs. Firebase Analytics collects:
- Screen views (which screens you open and in what order)
- Interaction events (button taps, FIT import attempts, session detail zoom) — without the content of these interactions (no GPS data, no heart rate, no session content, no email address, no magic-link tokens)
- App version, Android version, device model
- A randomly generated Firebase Installation ID — not linked to your email, your Garmin account or any other identifier
What Firebase Analytics does NOT collect:
- Your Google Advertising ID (disabled in the app manifest)
- Your IP address in identifiable form (Firebase anonymises the IP server-side before storage)
- Personalisation signals for advertising (disabled in the app manifest)
- Your activity data, GPS, heart rate or FIT file contents
Data transfer to the USA: Firebase Analytics is operated by Google LLC, 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA. Data is transferred to and processed in the USA. This transfer is based on the EU Standard Contractual Clauses (Art. 46(2)(c) GDPR). Google LLC's Data Processing Amendment (DPA) applies. Further information: Google Privacy Policy.
Legal basis: Art. 6(1)(a) GDPR — your explicit consent, when you enable it in the Companion app under Settings → Privacy → Anonymous usage data. You can withdraw your consent at any time in the same place; withdrawal stops all future transfers and deletes the associated Firebase Installation ID, so that historical events can no longer be linked to future activity.
Retention period: In the Firebase console we have reduced the standard retention to 2 months (Google's default would be 14 months).
11. No advertising
We do not use advertising networks, advertising SDKs (no Google Ads, no Firebase Ads) or remarketing. The Firebase service in section 10 is purely analytical and does not use advertising identifiers.
12. Contact
For questions about data protection: