Last updated: March 2026
The short version: Your health data goes from your device directly to your Intervals.icu account. The app uses a lightweight authentication server to securely connect your Intervals.icu account via OAuth — no health data passes through this server.
IntervalsWellnessSync is an independent application developed and maintained by Ryan Grgurich. It is not affiliated with, endorsed by, or officially connected to Intervals.icu or any of its subsidiaries. This policy details what data the application accesses, transmission methods, local storage, and authentication mechanisms.
The app requests read-only access to the following Apple HealthKit data types on the iPhone:
Users control which HealthKit permissions are granted through iOS Settings and can modify them at any time.
The app computes a sleep score (0–100) on-device from your HealthKit sleep data. This score is derived from sleep duration, sleep stage composition (deep, REM, core), sleep continuity, sleep efficiency, and average sleeping heart rate. The score is calculated entirely on your device and is not sourced from Apple's proprietary sleep score. Like all other metrics, it can be excluded from synchronization.
When Enhanced HRV Mode is enabled, the Apple Watch companion app reads heartbeat series, heart rate, HRV (SDNN), and sleep analysis data. It also writes the following to HealthKit:
These writes occur only when Enhanced HRV Mode is actively enabled and are confined to the watchOS companion app.
The app collects the following self-reported wellness ratings via an optional daily prompt (all use a 1–4 scale):
Users may also enter optional free-text comments. Subjective data is only transmitted when manually submitted by the user.
The application implements OAuth 2.0 to connect with Intervals.icu accounts. Users authorize the app on Intervals.icu's website rather than entering passwords directly into the application.
A developer-hosted server (Cloudflare Worker at intervalswellnesssync.com) handles only the OAuth token exchange. This server does not receive, process, or store any of your health or wellness data. The OAuth client secret is stored server-side and never included in the app.
Health and wellness data transmits directly from your device to the Intervals.icu API via HTTPS (PUT /api/v1/athlete/{id}/wellness-bulk and GET /api/v1/athlete/{id}/wellness). The developer's authentication server is not involved after the initial sign-in.
Users can exclude individual metrics from synchronization (e.g., metrics managed by a Garmin, Oura, or other device). Excluded metrics are never sent to Intervals.icu.
The app stores the following data locally on your device:
Keychain (encrypted):
Preferences (UserDefaults):
App Group (shared between iPhone and Watch):
Local Database (SwiftData):
No data is stored on external servers other than Intervals.icu (where wellness data is uploaded at the user's direction).
The developer's authentication server (Cloudflare Worker) does not store any user data. It processes the OAuth token exchange in memory and immediately redirects the result to the app.
The app communicates exclusively with:
intervals.icu): OAuth authorization and wellness data uploadsintervalswellnesssync.com): OAuth token exchange onlyNo other external services, analytics providers, or third-party SDKs are used.
IntervalsWellnessSync is not directed at children under 13.
Updated policy versions will be posted at intervalswellnesssync.com/privacy with revised dates. Material changes will be noted in app release notes.
For questions about this privacy policy or the app, contact: