Skip to main content

Legal

Privacy Policy

What Tri-Train stores about you, what happens to data from Strava, Garmin and Google Calendar, where AI requests go (for your Garmin data see section 4a), and how to get rid of all of it.

Last updated: October 28, 2026

1. Controller and contact

Tri-Train is operated by Jonas Leuenberger, a sole proprietor in Switzerland. The core features are free; for the paid Pro subscription see section 11 (Stripe). If you use your own Anthropic API key in the Training chat, Anthropic bills you directly (see section 6).

Contact for any privacy request: [email protected]. The German-language versions of this notice and the provider details are at Datenschutzerklärung and Impressum.

Processing follows the revised Swiss Data Protection Act (revDSG) and, where it applies, the EU GDPR.

2. Scope

This notice covers the public pages (calculators, guides, blog), the signed-in application, the connected services you can link yourself, and the AI features.

Nothing here is shared with advertisers, and no data is sold. There is no advertising network and no third-party tracking or analytics script on the site.

3. Data you give us directly

Account data: name, email address and a password hash when you register with email, or the basic profile Google returns when you sign in with Google.

Athlete profile: optional details such as birth year, weight, threshold values (FTP, threshold pace, LTHR, CSS), heart-rate zones, time zone and training preferences.

Training data: activities, planned workouts, training plans, races, personal records, journal entries and notes — whether you enter them by hand or they arrive through an integration.

AI inputs: what you type into the chat about an activity or into the Training chat, and the activity context that is assembled for an analysis. Generated insights are stored with the activity so they need not be produced twice; Training chat conversations are stored with your account.

4. Data from connected services

Strava. If you connect Strava, we import your activities including title, description, private notes, sport type, distance, duration, heart rate, power, cadence, GPS track and the underlying data streams. The connection uses Strava's official OAuth flow; the access and refresh tokens are stored encrypted. You can disconnect in the settings and revoke access in your Strava account at any time.

Garmin. If you connect Garmin, we import your activities including the original file (FIT), daily wellness values — sleep duration and sleep score, heart-rate variability, resting heart rate, stress level, Body Battery and training readiness — plus swim-length detail for pool sessions. We can also upload planned workouts to your watch and delete them again.

Health data has special protection. The Garmin wellness values are health data under both revDSG and GDPR. We use them to display them back to you and to inform your own training analysis – which, with your consent, includes analysis by AI (section 4a). They are never sold, never passed to advertisers, and never used to profile you for anyone else.

4a. AI and your Garmin data (AI Transparency Statement)

Tri-Train also analyses your Garmin data – activities including heart rate, power and GPS, and health values such as sleep, HRV, resting heart rate, stress and Body Battery – with language models (AI). This happens in three places:

  • Training chat. To answer your question Claude reads the values it needs from your account, and Tri-Train sends them to Anthropic PBC in the United States (section 6).
  • An AI assistant you connect yourself (MCP). It reads your data when you ask it and passes it to its provider, for Claude to Anthropic. The terms of your own account with that provider apply as well (section 7).
  • AI analyses of single sessions. Analyses and the chat about one activity run on the operator's own hardware in Switzerland; the data does not leave it.

Purpose: only your own training analysis, at your request – when you ask a question, set up a routine or have a session analysed. Tri-Train does not train AI models on your data and does not build a knowledge base from it for anyone else. Under Anthropic's commercial terms, data from the Training chat is not used to train Anthropic's models.

Consent. AI analysis of your Garmin data only happens with your explicit consent. You give it with the checkbox when you connect Garmin, or in the prompt inside the app. We store the time and the version of the text you agreed to as proof.

Withdrawal. You can withdraw your consent at any time with one click: Settings, Garmin card, "Withdraw". After that the Training chat, a connected assistant and routines no longer receive your Garmin health values, and Garmin sessions are no longer analysed by AI. Your data stays stored and visible in Tri-Train. You withdraw the whole Garmin consent by disconnecting.

What withdrawal does not cover yet. A connected AI assistant or the Training chat can for now still read your Garmin activities themselves and values derived from them (such as fitness, fatigue, FTP or records). If you do not want that, disconnect the assistant in the settings and do not use the Training chat. Closing this gap is next, and this section will be updated then.

If the AI processing, the law or Garmin's requirements change, we update this section and ask you again after a significant change.

5. The Garmin sign-in, in plain terms

Garmin offers no OAuth flow for third-party applications. Connecting therefore requires your Garmin email and password, and there is no way around that.

Your Garmin password is never stored and never written to a log. It exists only for the duration of that one sign-in request. What we keep is the session token Garmin returns, encrypted at rest with AES-256-GCM. That token grants full access to your Garmin account, not read-only access — treat the connection accordingly.

Sign-in attempts are rate-limited, because Garmin locks accounts after repeated failures. Disconnecting in the settings deletes the stored token and stops further imports; values already imported stay part of your training history until you delete them or your account.

6. AI features and who sees your data

Activity insights, the structured activity analysis, the chat about an activity, the coach summary and plan comments are produced by a language model on an Ollama instance on the operator's own hardware in Switzerland. For these features your data does not leave that infrastructure and is not sent to any cloud AI provider. The operator chooses the model; there is no way to enter your own AI configuration for them. AI output is not used to train any model on our side.

The Training chat is the exception – and optional. It uses the Claude language model of Anthropic PBC in the United States. It stays off until you set it up, and it only answers after you have given your explicit consent in the chat settings. We store the time of your consent as proof.

For every question – and for every run of a routine you set up there – Claude uses tools to read the data from your account that it needs for the answer, and Tri-Train sends that data to Anthropic together with your message and the conversation so far. This can include activities (time, duration, distance, heart rate, power, location as a city, title and notes), planned sessions, races, your athlete profile (such as age, weight and thresholds), health values such as sleep, HRV, resting heart rate, stress and readiness, and – if you connected Google Calendar – the start, end and title of your appointments. Tri-Train does not send your name or email address.

If you use the Tri-Train credit, Tri-Train calls Anthropic with the operator's key, and Anthropic acts as our processor. If you use your own Anthropic API key, the request runs through your own account and your own contract with Anthropic. Under Anthropic's commercial terms, data sent through the API is not used to train Anthropic's models; how long Anthropic keeps requests is governed by its terms.

The United States is a third country under data protection law, and US authorities may in some circumstances access data held by Anthropic. The transfer rests on your explicit consent (Art. 49(1)(a) GDPR, Art. 17(1)(a) revDSG).

The Training chat can create, change and delete planned sessions, races and profile values, and send sessions to Garmin or to your Google Calendar. In the chat it is instructed to do so only after you agree; routines only do it if you switch on "Darf den Plan selbst anpassen" (may adjust the plan itself). Every change to your Tri-Train data is journaled and can be undone.

You can withdraw your consent at any time in the chat settings ("Einwilligung widerrufen" / withdraw consent). After that, Tri-Train sends nothing more to Anthropic, including routines. Your existing chats stay stored until you delete them.

7. Connected AI assistants (MCP)

You can connect an external AI assistant such as Claude to your account over an OAuth connection. Once connected, the assistant can read your activities, plans, notes, profile values and wellness data, and — if you granted the write permission — create, change and delete planned sessions and push workouts to your watch.

Everything that connection writes is journaled and can be undone. You can see every connected application and revoke it at any time in the settings; revoking takes effect immediately.

What the assistant reads goes to its provider, for Claude that is Anthropic. This happens under your own account with that provider and on its terms; Tri-Train does not engage the provider for this and receives no conversation content. For the connection, Tri-Train only stores the application's name, its redirect address, the granted permissions, timestamps and the access tokens as hashes, plus the log of write actions used for undo. A revoked connection is deleted after 30 days, the log together with your account.

8. Calendar feed and Google Calendar

The optional calendar subscription (iCal) is a URL containing a secret token, so that a calendar app can read it without signing in. Anyone who has that URL can read your planned sessions. Treat it like a password, and generate a new one in the settings if it leaks.

Google Calendar. You can optionally connect Google Calendar (Settings → Integrations). Tri-Train asks Google for only two calendar permissions: reading events in calendars you own, and creating a separate calendar called "tri-train Training" and writing only to that one – Tri-Train cannot change or delete your other events. It reads the start, end and title of events, not their description, location or attendees, and only when the Training chat requests them for an answer; that information then goes to Anthropic (section 6). Planned sessions are only written to Google if you switch that on separately; Google then receives the title, time and description of those sessions. The access tokens are stored encrypted. When you disconnect, Tri-Train revokes its access at Google and deletes the tokens; the "tri-train Training" calendar stays in your Google account until you delete it.

9. Technical data

The server writes operational logs (IP address, timestamp, requested path, user agent, error details) for operation, troubleshooting and abuse detection. They are deleted after 30 days.

Content is not in those logs. What you type into an AI chat is stored with your account in the database and is deleted together with the account – not in a log file. For the chat about an activity, the logs only record that it happened, which provider and model ran it, and how long the answer was; for the Training chat and its routines, only how many steps and which tools it used, how many tokens it cost, and how long the question and the answer were.

The application also records a small number of its own performance samples, such as how long a page took to respond. These are used to find slow pages, and there is no third-party analytics provider involved.

9a. What the operator can see

Tri-Train is run by one person, and that person has technical access to the database. That cannot be configured away, and we would rather say so than leave it out. In practice this access is used for operating the service and for troubleshooting, not for reading training data.

The operational overview inside the application deliberately shows no names, email addresses or free text of other users: per entry it shows a shortened account id, the sport and the timestamp. Until 11 Sep 2026 it showed the email address and the activity note; that was removed.

AI chats, journal entries and notes are not shown in that overview.

If you request access to the Tri-Train credit in the Training chat, the operator receives an email with your name and email address and, to grant access, also sees when you asked and your monthly usage in US dollars – not the content of your chats.

10. Legal bases

Providing the account and the training features rests on performance of a contract (Art. 6(1)(b) GDPR). Operating the platform securely and preventing abuse rests on legitimate interests (Art. 6(1)(f) GDPR). Taking out and billing a Pro subscription rests on performance of a contract (Art. 6(1)(b) GDPR); keeping invoices is a legal obligation (Art. 958f of the Swiss Code of Obligations, Art. 6(1)(c) GDPR).

Connecting Strava, Garmin or Google Calendar, connecting an external AI assistant, using the Training chat and its routines, and subscribing to the calendar feed are optional and rest on your consent (Art. 6(1)(a) GDPR, and Art. 9(2)(a) for the health data from Garmin, its analysis by AI and the Training chat; for the transfer to Anthropic in the United States additionally Art. 49(1)(a) GDPR and Art. 17(1)(a) revDSG). You can withdraw that consent at any time with effect for the future – by disconnecting, for the AI analysis of your Garmin data in the Garmin card with "Withdraw" (section 4a), or in the Training chat with "Einwilligung widerrufen".

11. Hosting, processors and backups

The application and the PostgreSQL database run on self-hosted infrastructure in Switzerland. Backups are written hourly to storage on the same infrastructure and are kept for 30 days.

Services you connect yourself: Google (sign-in and Calendar), Strava, Garmin, any AI assistant you authorise, and – if you enter your own API key in the Training chat – Anthropic under your own contract. Each of those acts under its own terms; there is no processing agreement under Art. 28 GDPR between them and us, because each transfer rests on your own decision.

Services we use without you choosing them. These act as processors (Art. 28 GDPR, Art. 9 revDSG):

  • Cloudflare Turnstile – the bot check on sign-up. Cloudflare receives your IP address and technical properties of your browser. Without it, sign-up would fill with throwaway accounts within days.
  • The email provider – Tri-Train emails you the password reset link, a short welcome after sign-up that points you to Strava or Garmin and, if you switch it on for a Training chat routine, that routine's result as a short summary. The provider receives your email address and the text of the email; a routine summary can contain health information, for example about sleep or HRV.
  • Anthropic PBC (United States) – if you use the Tri-Train credit in the Training chat, Anthropic processes your messages and the training and health data the chat retrieves on our behalf to generate the answers (see section 6).
  • Stripe Payments Europe, Ltd. (Ireland) or the Stripe group company named at checkout – if you take out a Pro subscription. You pay on a page hosted by Stripe; Stripe receives your email address, name, payment details and billing address there and sends the invoices. Tri-Train never sees card details and stores only your Stripe customer number, your plan and the end of the paid period. Stripe acts as the seller (merchant of record): Stripe enters into the purchase contract with you, issues the invoice and handles taxes. Stripe processes the purchase, payment and billing data for this, for fraud prevention and for its own legal obligations (such as anti-money-laundering rules) as an independent controller, under Stripe's privacy policy. Stripe may also process data in the United States; the transfer rests on the EU-U.S. Data Privacy Framework and the European Commission's standard contractual clauses. Stripe keeps invoices for the statutory periods, also after you cancel or delete your account.

No analytics or advertising network is embedded.

12. Cookies and local storage

We set technically necessary cookies for the login session, a cookie remembering your cookie choice, and one holding your language choice ("de" or "en") — solely so the page arrives in the right language. If you press "Save plan" in the plan preview, a further cookie holds race distance, race date and weekly hours so the plan can be created in your account after sign-up; it is deleted then and expires after 30 days at the latest. Nothing else is set without your consent, and there is no advertising or tracking cookie.

The application also uses your browser's local storage to cache pages you have already loaded and to keep settings such as language and theme. That data stays in your browser and is cleared when you clear site data.

13. Retention and deletion

Personal data is kept while your account exists. You can delete individual activities, notes, plans and Training chat conversations at any time, and you can delete the whole account in the settings.

Deleting the account removes your data from the live database immediately, including tokens for connected services, your AI chats and your Training chat conversations; Tri-Train first revokes its access to your Google Calendar at Google. Copies in the rolling backups disappear at the latest 30 days later. Operational logs are deleted after 30 days, and they contain no content (see section 9). Whatever was already sent to Anthropic is subject to Anthropic's retention periods.

14. Your rights

You have the right to access, correction, deletion, restriction, data portability and objection. Much of this you can do yourself in the settings; for anything else, an email to the address above is enough.

You can also lodge a complaint with a supervisory authority — in Switzerland the Federal Data Protection and Information Commissioner (FDPIC/EDÖB), in the EU the authority for your country of residence.

15. Security

Traffic is TLS-encrypted, passwords are hashed, and tokens for connected services and AI providers – including your own Anthropic API key, which is only ever shown to you by its last four characters – are encrypted at rest with AES-256-GCM. Access to the underlying infrastructure is restricted to the operator.

Your free-text content is additionally encrypted in the database – AI chats, Training chat conversations including the data retrieved in them, your routine instructions, AI analyses, coach reports, journal entries and notes written by a connected AI assistant. A stolen copy of the database could not be read. Measurements are deliberately excluded: times, distances, heart rate, sleep and HRV are filtered, sorted and computed on, and encrypting them would make every analysis impossible. A dump would still show how much and how hard you trained, but no longer what you wrote about it.

No online service can promise absolute security. Use a unique password, and disconnect integrations you no longer need.

16. Changes

This notice is updated when features or legal requirements change; the current version is always on this page. Significant changes to how connected or health data is processed will be pointed out in the application.

German-language versions are at Datenschutzerklärung, AGB and Impressum.

You can also jump between the legal pages here: Privacy Policy and Terms of Service.