PR — Privacy Policy
This Privacy Policy explains how Anthony Immenschuh, an individual developer (sole proprietor) ("we", "us", the "Developer"), collects, uses and protects your information in PR, the Developer's mobile application, and its related services (the "App").
The short version: PR is private by default. Your workouts, body metrics and progress photos are visible only inside your account. The App carries no ads, does not use cross-app or cross-site advertising tracking, and we never sell your data. We use RevenueCat to manage subscriptions and understand subscription performance. The AI coach, Primed, has two modes: in cloud mode, the default, each message you send goes with a summary of your training to our server and on to OpenAI (the company behind ChatGPT) to write the reply — we do not store it, and OpenAI does not train on it (Sections 1, 2 and 4); in on-device mode nothing leaves your phone. Our website analytics are described in Section 8.
1. What we collect
Account information. How you sign in decides what we hold:
- Sign in with Apple: the stable identifier Apple gives us and, only if you choose to share them, your name and email address — which may be an Apple private-relay address. We also hold the Apple refresh token for one purpose: revoking the Sign in with Apple grant when you delete your account, as Apple requires.
- Email and password: your email address and a salted, hashed password. We never store your password itself.
- One-time codes: when you reset a password we email a short-lived code and keep it, hashed, only until it expires or is used.
Fitness and body data you record. The App stores what you enter to do its job:
- workouts, exercises, sets, reps, weights, notes and personal records;
- routines, custom exercises and the training preferences you set during onboarding (your goal, experience level, training days, session length, where you train, and any joints — knees, lower back, shoulders or wrists — you asked your plan to work around);
- body metrics you choose to track, such as body weight, and a goal weight if you set one;
- progress photos you take or choose from your photo library — camera and photo-library access is requested only at that moment, and used only for that photo;
- your display name, optional bio and optional profile photo.
This data lives on your device in a local database, and — when you are signed in — syncs to our servers so it survives a lost phone and follows you to a new one. Progress photos and profile photos are stored as encrypted objects in our storage provider and are fetched through short-lived signed links; nobody can browse them without your account.
Coach conversations, in cloud mode only. The AI coach, Primed, has two modes, chosen in Settings. In cloud mode — the default — each time you send the coach a message, the App sends to our server your message, the last few turns of that conversation, and a compact summary of your training that the App builds on your device from its local database: your routines and their exercises, your recent sessions, your personal records, your body weight and weight goal, your workout score and training balance, and your name and training profile (goal, experience level, training days, session length, where you train, and any joint limitations you set). Our server forwards that request to OpenAI, whose model generates the reply, and returns the reply to you. The coach’s other output — the plan it drafts for you, a workout you describe for it to build, the note on your score card, and the checks it runs on a message before answering — travels the same way, with the same kind of summary. We do not store your messages, the conversation or the summary: they are held only for as long as it takes to process the request. We log request metadata only — your account identifier, timestamps and sizes — for rate limiting and debugging. In on-device mode the coach runs on Apple’s model on your phone, and none of this is sent anywhere.
Apple Health (HealthKit), only with your permission. PR reads heart rate, to show how hard a workout was, and body weight, so weigh-ins recorded elsewhere appear in the App. PR writes your finished workouts and weigh-ins back to Apple Health so you can view them alongside your other health and fitness data. Health data is used only for these features — see the section on Apple Health below.
Purchases. Subscriptions, where offered, are processed by Apple. We never receive your card details. Our subscription provider, RevenueCat, receives your account identifier, an app-scoped device identifier that Apple assigns (the vendor identifier — not the advertising identifier, which the App never requests), and purchase records: the product bought, subscription status, renewal state and transaction identifiers. Our server receives the purchase records. We use this information to validate purchases, unlock and restore access, prevent purchase fraud, and understand subscription performance through RevenueCat’s reporting. Purchase records can be linked to your PR account. We do not use them for cross-app or cross-site advertising tracking.
Support and feedback. If you send feedback from inside the App, we store your message with your account identifier and forward it by email to our support inbox, with your email address as the reply-to, so we can answer you and fix the problem.
Technical data. Our servers process IP addresses and ordinary request metadata to keep the service up, rate-limit abuse and debug failures. For rate limiting, your IP address is held for about ten minutes and then discarded. We do not use any of this to build a profile of you, and we do not combine it with your fitness data for any purpose other than serving your own requests.
2. What we do not collect
- No advertising identifiers, ad networks, or cross-app or cross-site tracking. The App does not ask for tracking permission because it does not track you.
- No general-purpose product analytics, advertising attribution or third-party crash-reporting SDK is currently installed in the App. RevenueCat’s subscription reporting is described in Sections 1, 3 and 4; website analytics are described in Section 8.
- No sale, rental or sharing of personal information for anyone else’s marketing.
- No social graph: PR has no public profiles, no followers and no activity feed. It does not publish your workouts.
- No AI training on your data. We train no models on it, and cloud coach requests go to OpenAI under API terms that do not permit it to train on them either.
- No microphone or location access. The App does not request either.
The AI coach, Primed, has two modes, and what happens to your conversations depends on which you choose. In on-device mode, the coach runs on Apple’s on-device model using data read from your local database; its prompts and replies are not sent to our servers, are not stored by us, and are not shared with anyone. In cloud mode, the default, each message — with the recent conversation and the training summary described in Section 1 — passes through our server to OpenAI, which generates the reply. We do not store it. OpenAI processes it under its API data-usage policies: it is not used to train OpenAI’s models, and we send every request with storage disabled so it is not kept as retrievable application state. Prompts and responses may still appear in abuse-monitoring logs normally retained for up to 30 days; OpenAI says it may retain them longer when required by law or reasonably necessary to protect its services or a third party from harm. In neither mode is anything about your coach conversations sold or shared for marketing. You can switch modes at any time in Settings.
3. How we use your information
To operate and improve the App:
- to provide, sync and back up your workouts, metrics and photos;
- to sign you in and keep your account secure;
- to unlock and restore a subscription you bought;
- to understand subscription performance using purchase records and RevenueCat’s reporting;
- to answer your questions to the AI coach, and to generate its plans, workouts and notes, in the mode you chose;
- to answer your support messages;
- to keep the service reliable and to prevent abuse;
- to comply with the law.
We do not use your data for advertising or profiling, and we do not make automated decisions about you that have legal or similarly significant effects.
4. Who we share it with
Only the providers needed to run the App, each processing data on our behalf and none permitted to use it for their own purposes beyond what this table says:
| Provider | What it does |
|---|---|
| Apple | Sign in with Apple, App Store purchases, Apple Health (which stays on your device), and the on-device model behind the coach’s on-device mode (which runs on your phone, not on Apple’s servers) |
| OpenAI | Generating AI coach replies in cloud mode (your messages, the recent conversation and your training summary); not used to train its models, sent with storage disabled, and potentially included in abuse-monitoring logs normally retained for up to 30 days, subject to the longer-retention exceptions described in Section 2 |
| Neon | The database that holds your account and synced data |
| Fly.io | Hosting for our server |
| Cloudflare R2 | Encrypted storage of progress and profile photos |
| RevenueCat | Purchase validation, subscription and entitlement management, and subscription performance reporting using purchase records and identifiers |
| Resend | Delivery of one-time code emails and of feedback forwarded to our support inbox |
| Upstash | Short-lived storage of IP addresses for rate limiting — about ten minutes, then discarded — and of per-account counts of AI coach requests for the coach’s usage limits, for up to a day |
| Vercel | Hosting and privacy-preserving page analytics for our website (not the App) |
We may also disclose information if the law requires it, or where necessary to investigate abuse or protect the rights, safety and security of users, the public or the service. If the App is ever transferred to another owner — for example to a company later formed to operate it — your data may transfer with it, subject to this policy.
5. Apple Health
Health data gets specific commitments, in line with Apple’s rules:
- It is used only to provide the health and fitness features you asked for.
- It is never used for advertising, marketing or any similar service.
- It is never sold, and never shared with third parties for their own use.
- It is not used for data mining or any purpose other than improving your own health and fitness experience in the App.
- You can revoke the App’s access at any time in iOS Settings → Health → Data Access & Devices.
6. On-device features: notifications, widgets, Live Activities and the on-device coach
Notifications from PR are scheduled locally by your device — a rest-timer alert or an occasional reminder to train. We do not operate a push server, and we do not collect a push token or know whether a notification was delivered or opened. You can turn notifications off in iOS Settings, and the rest-timer alert has its own switch in the App.
Home-screen widgets and the workout Live Activity read a small snapshot of your data (the workout you are due, your last session and its top sets, the days you trained this week and this month, your current set) that the App writes to a private container shared only between PR and its own widget on your device. That snapshot is never uploaded and is not readable by other apps.
The AI coach’s on-device mode belongs on this list too. When you choose it in Settings, the coach runs on Apple’s on-device model, reads your data from the local database on your phone, works offline, and sends nothing to us or to anyone else. It requires an iPhone with Apple Intelligence. What cloud mode sends instead is described in Sections 1 and 2.
7. Sharing you initiate
The App can produce a workout share card image and can export your data to a file. Both are created on your device, and nothing is sent anywhere until you choose to share or save it. Once you hand that file or image to another app or person, this policy no longer governs it — where it goes is up to you and to that app’s own terms.
8. Our website
This policy also covers getpr.app, the site you may be reading it on. The site collects no accounts and no fitness data — it provides information about PR and ways to get the App.
It uses Vercel Web Analytics to count page views and referrers, so we know whether anyone is finding the site. It is privacy-preserving by design: it sets no cookies, stores no identifier on your device, and does not follow you across sites or build a profile of you. This website measurement is separate from the App’s RevenueCat subscription reporting.
The site is hosted by Vercel, which processes ordinary server-log data (IP address, user agent, requested page) to serve pages and block abuse.
9. How long we keep it, and how to delete it
- Your data is kept while your account exists.
- You can delete your account at any time in the App, under Settings → Account → Delete Account. That permanently removes your synced workouts, metrics and photos from our servers, deletes the stored photo objects, revokes the Sign in with Apple grant where one exists, and clears the App on your device.
- You can export your workouts first, from Settings → Export Workouts.
- One-time codes expire within minutes. Sign-in tokens expire and rotate. Backup and point-in-time-recovery copies held by our database provider expire on a rolling basis after deletion.
- Coach conversations in cloud mode are not stored by us: your message, the conversation and the training summary exist on our server only while the request is being processed. The request metadata we log (account identifier, timestamps, sizes) is kept with our ordinary server logs, not with your fitness data. OpenAI may include prompts and responses in abuse-monitoring logs normally retained for up to 30 days, or longer when required by law or reasonably necessary to protect its services or a third party from harm. In on-device mode, nothing is sent.
10. Security
Traffic is encrypted in transit with HTTPS/TLS. Passwords are stored salted and hashed, never in the clear, and the Apple refresh token we hold for revoking your Sign in with Apple grant is stored encrypted. Sign-in uses short-lived access tokens with rotating refresh tokens, so a stolen token has a small window. Photos are private objects reached only through signed links that expire in minutes. Coach conversations in cloud mode are relayed, not kept: they pass through our server to OpenAI over encrypted connections and are never written to our database. Access to production systems is limited to the developer, and requests are rate-limited to blunt abuse.
No system is perfectly secure. We reduce risk mainly by collecting little in the first place — but we cannot guarantee the security of any data transmitted to or stored by the App, and you provide it at your own risk.
11. Your rights
Depending on where you live — for example under the GDPR or UK GDPR, or the California Consumer Privacy Act — you may have the right to access, correct, export, delete or restrict the use of your personal data, to object to certain processing, and not to be discriminated against for exercising those rights. The two that matter most are built into the App itself: export and permanent deletion, both in Settings. So is control over the AI coach: switching it to on-device mode in Settings stops any coach data being sent to us or to OpenAI from that moment on, and the coach keeps working on your phone if it supports Apple Intelligence.
For anything else, write to hello@getpr.app and we will respond as the applicable law requires. We do not sell personal information and do not share it for cross-context behavioural advertising, so there is no opt-out to offer. Where we rely on a legal basis under the GDPR, it is the performance of our contract with you (running the App, including the cloud coach while you have it selected), your consent (Apple Health and notifications, which you can withdraw at any time), and our legitimate interest in keeping the service secure. You may also complain to your local data-protection authority.
12. Children
PR is not directed to children under 13, or under the higher minimum age that applies where you live, and we do not knowingly collect their personal data. If you believe a child has given us personal data, contact us and we will delete it.
13. International users
Our server runs in the United States, and our providers — including OpenAI, for cloud coach requests — store or process data in the United States or in other regions where they operate. Using the App means your information is processed there, under laws that may differ from your own country’s. Where required, we rely on appropriate safeguards, such as the European Commission’s standard contractual clauses, for those transfers.
14. Changes to this policy
We may update this policy as the App changes. If a change is material we will say so in the App or by email, and the effective date above will change. Using the App after a change takes effect means you accept the updated policy.
15. Contact
Questions, or a request about your data: hello@getpr.app