Hardround: Train Like Athletes — Privacy Policy
Effective 2026-11-07 · The Korean text below is the primary version; this English text is a faithful translation.
0. At a glance
| Where it lives | How long it is kept | |
|---|---|---|
| Account (email, optional name) | AWS Cognito (US) | Until you delete your account |
| Training record (profile, sessions, logs, notes) | AWS AppSync + DynamoDB (US) | Until you delete your account |
| Body information (sex, age band, weight) · pain areas | AWS AppSync + DynamoDB (US) | Until you delete your account or clear it under Profile |
| Daily check-ins (how you feel, what hurts, a note) | AWS AppSync + DynamoDB (US) | Until you delete your account |
| Saved lessons (link, thumbnail URL, caption, your labels) | AWS (US) | Until you delete the lesson or the account |
| Coach reviews: the stills you send | AWS (US); reviewed by DeepSeek (China) and, if enabled, Anthropic (US) | Deleted when the review ends (at most 1 day) |
| Coach reviews: the review and the coach's notes | AWS (US) | Until you delete it or the account |
| Coach chat: your messages, last 14 days of training | Sent to DeepSeek (China) to answer; not stored by us | Not stored by us; at DeepSeek per its policy (§6) |
| Subscription status and purchase records | Apple / Google, RevenueCat (US) | Per RevenueCat's policy: kept after a subscription ends, deleted when we ask |
| Our copy of your subscription status | AWS (US) | Until you delete your account, or 90 days after your paid period ends if you stop using the app |
| Usage analytics | PostHog (US) | Per PostHog's plan retention: 1 year (free plan) or 7 years (paid plans) |
| Card details | — | We never receive them |
| Health store data · location | — | Not collected |
Hardround is a paid athletic training app (Hardround: Train Like Athletes). You sign in so your training record is yours and survives a lost phone. Only you can read it. We do not sell it, show it to other users, or use it for advertising.
1. Who we are
Hardround is operated by Seungjun Lee (Huzlee), an individual developer in the Republic of Korea, who is the controller of your personal information. Contact details are in §11.
2. What we collect, and why
| Item | Why |
|---|---|
| Account: email address, an account identifier, and your name if you choose to share it (from Sign in with Apple, Google, or email sign-up) | To sign you in and keep your record tied to you |
| Onboarding answers: goal, fitness level, training days, session length, where you train, the kit you have at home | To build your 4-week plan on the days you train |
| Body information (only if you answer): sex, age band, weight (kg, optional) | Only for a start-load suggestion and the impact level |
| Pain areas (only if you answer): knee · lower back · shoulder · wrist | Only to swap in safer movements |
| Daily check-in (only if you answer): how you feel (good · OK · tired), the areas that hurt today, an optional one-line note | Only to set today's session length and intensity |
| Sessions and programs: the sessions you build or edit (blocks, rounds, sets, times) | To show and run your plan |
| Training logs: sessions and lessons you log — date, minutes, effort rating (1–10), optional notes | To keep your training history |
| Technique notes: what you write about what you learned | To keep your notes |
| Saved lessons: the Instagram / TikTok / YouTube link you share or paste, the thumbnail URL, caption and account name the platform returns for it, and your own labels (name, phase, how to practise it, your note, where you are with it) | To keep your drill library and add drills to sessions |
| Subscription status: whether your subscription is active, its product and its period, as reported by the App Store / Google Play | To give subscribers access |
| Coach reviews (only if you ask for one, after you agree): still pictures taken on your phone from a set you film or a video/photos you choose, and what you wrote with them; then the review and short notes the coach keeps — see §2a | To review your form and point you to lessons |
| Coach chat: the messages you write to the coach, what happened in the app that it needs to answer (for example, what your last review found), and your last 14 days of training — see §2a | To answer you |
| Usage analytics: see §5 | To find out what in the app works and what breaks |
Your onboarding answers reach us when you sign in. Until then they stay on your phone. At sign-in they are saved to your account, so a new phone picks up where you left off, and changing them under Profile updates that copy. The app also keeps a copy on your phone so a session can start with no signal; deleting your account removes both.
A session you log with no signal waits on your phone. It is sent to your account as soon as there is a connection, and goes nowhere else. Deleting your account removes any log still waiting.
Your intensity level is kept with your profile. From your logged effort and the rounds you finished, the app works out a level from 1 to 5 (work / rest 30/30 … 50/10) for your next session. It is saved with your profile so a new phone starts at the same level, is never shown as a score, never goes to analytics, reaches the coach only inside a chat you agreed to (§2a), and is deleted with your account.
The name you type during onboarding stays on your phone. It is not sent to our servers or to analytics, so it does not come back after a reinstall or on a new phone. (A name shared by Apple or Google at sign-in is the separate "Account" item above.)
Body information and pain areas are health-related information. Onboarding asks for your sex, age band, weight (optional) and any areas that hurt (knee, lower back, shoulder, wrist). Sex and age can be answered "Prefer not to say", weight can be left empty, and "None" is an answer for pain. We use these answers only to fit your plan safely: body information for a start-load suggestion and the impact level (whether jumps are in), pain areas to swap out movements that load that area. They are never shown as a score or a ranking, never sent to usage analytics (§5) or to the coach (DeepSeek, §2a, §6), never used for anything else, and we infer no medical condition from them. They are saved with your other onboarding answers in your profile (AWS, US); you can change or clear them under Profile at any time, and deleting your account destroys them with the profile (§7, §8). If something hurts badly, see a professional before training.
The daily check-in is health-related information too. The Coach tab asks how you feel (good, OK, tired) and what hurts today, with an optional note. It is saved to your account (AWS, US) and used only to set today's session: a tired day is shorter and lighter, and an area that hurts swaps out the movements that load it until a later check-in leaves it out. It is never shown as a score, never sent to usage analytics (§5), and reaches the coach (DeepSeek, §2a) only inside a chat you have agreed to on the coach's consent card. Deleting your account destroys every check-in (§7, §8).
Effort ratings and training logs may count as health-related information. We use them only to show you your own training and to shape your plan. We do not use them for anything else, and we do not infer medical conditions from them.
2a. Coach reviews and the coach chat
The coach is optional, and nothing is sent until you ask for it.
- Form reviews. When you film a set in the app, or choose a video or photos of yourself, your phone takes still pictures from it. Before each review, a card shows exactly what is sent and where; nothing is sent until you tap to send it. Then the stills — never the video — together with what you wrote with them, are sent to our server and to DeepSeek, the AI service that reviews them. Only if we switch on the vision reader — it is off in the current version, and this policy will say so before it is on — the stills are also read by Anthropic's Claude, which describes the movement before DeepSeek writes the review. The video stays on your phone.
- The stills are deleted from our server when the review ends. If the review stops to ask which person in the picture is you, they are kept until you answer, and are deleted automatically after one day at most.
- The review is kept: what to fix, what was good, a per-area read, the lessons to practise, and short notes the coach keeps to follow up next time. It is stored with your account until you delete it or your account. The per-area read is the coach's judgement from the pictures, not a measurement, and the app says so.
- The coach chat. Before your first message, a card says your messages go to DeepSeek in China; nothing is sent until you agree (agreeing on a review card covers the chat too). The messages you write to the coach, the recent conversation, what your reviews in that conversation found and the coach's notes from your reviews are sent to DeepSeek to produce each answer, with your last 14 days of training: the sessions you logged (minutes, rounds, effort, intensity level), your daily check-ins (how you felt, what hurt) and today's session with the reasons it was set that way, so the coach can answer "how much today?" from your own record. Your sex, age band and weight, the pain areas you gave in onboarding and your log notes are never sent. We keep the conversation neither on our server nor on your phone: it ends when you leave the screen.
- A reminder, if you ask for one. You can ask to be told when a review should be ready. Your phone schedules that itself; it says nothing about the review.
- Video search is off in the current version. If it is switched on, to find practice videos the coach searches YouTube with short English words describing the technique — never with your pictures, your messages or your account details.
- Neither DeepSeek nor Anthropic receives your name, email or account identifier from us. DeepSeek does not publish how long it keeps what an app sends through its API, or whether it trains on it; its privacy policy covers its own users, not ours. Anthropic deletes API inputs and outputs within 30 days and does not train on them under its commercial terms.
3. What we do not collect
- Health store data. The app does not access Apple Health (HealthKit) or Health Connect.
- Location. The app does not request location permission.
- Contacts, microphone. Not requested. Camera and photos are used only when you film a round or pick a video or photos for a coach review (§2a); the video itself never leaves your phone.
- The videos you save. We never download, copy or re-host an Instagram, TikTok or YouTube video. We keep the link; playing it opens the original post or, for YouTube, YouTube's own player inside the app (§6).
- Card or payment details. Payment happens entirely inside the App Store or Google Play.
- Advertising identifiers. We show no ads and bundle no ad SDK.
- Your reminders. The training-day reminder (with that day's rounds and minutes), the evening nudge, the keep-going reminder while a session is paused or left, the check-in an hour after you save, and the optional weekly summary (which counts the sessions you logged that week) are scheduled on your phone from your own plan and record, and stay there. They are not sent through a server, and we use no push token. Each can be turned off under Settings → Reminders.
4. Payment
Hardround is paid-only, sold as a subscription through the Apple App Store or Google Play. We never see your card number or billing details — Apple or Google handles the payment. RevenueCat, our subscription processor, receives the store's purchase record under a random identifier: before you sign in, one it makes up; once you sign in, your account's random id. It never receives your name, email or training record. When your subscription changes, RevenueCat tells our servers, and they keep a copy of what it says: whether the subscription is active, which product and store, when the period ends and whether it is a free trial. We use that copy to check you are a subscriber before running the coach; when the copy says no, or there is none yet, our server asks RevenueCat directly, using that same random id, before refusing. It is never used with your training record, and it is not sent to our usage analytics.
To manage or cancel a subscription, use your App Store or Google Play account settings. Deleting your Hardround account does not cancel a subscription by itself. It does delete our copy, and we write no new one afterwards, even if the subscription carries on. RevenueCat's own record stays under that random id, which is then tied to nothing, for as long as RevenueCat's policy keeps it; ask us (§11) to have it removed.
5. Usage analytics (PostHog) — automatic collection
We send app events to PostHog to see which parts of the app work: which screens are viewed, which step of the paywall flow was reached, and whether a purchase succeeded or why it failed (for example: cancelled, network error).
What we never send: your training content — no sessions, logs, minutes, effort ratings, notes, technique notes, drills or links, coach stills, reviews or chat messages, and no body data. Your email and name are not sent to PostHog. Events carry a random identifier the app makes, never your account identifier.
We do not use session replay. There is no screen recording in the app. No web cookies are used. No location: the app tells PostHog not to derive a city or country from your IP address.
6. Processors and overseas transfer
We do not sell personal data or share it with other users. The following companies process data on our behalf, all of them outside Korea — in the United States, and, for the coach, in China:
| Recipient | Country | What | Purpose | Retention |
|---|---|---|---|---|
| Amazon Web Services, Inc. | United States (us-east-1) | Account (email, name, identifier), training record, saved drills | Sign-in, storing and serving your record | Until account deletion |
| RevenueCat, Inc. | United States | A random app identifier (your account's random id once you sign in), purchase records from the store, device and app version | Checking whether a subscription is active | Per the processor's policy; deleted when we ask |
| PostHog, Inc. | United States | App events (§5) | Product improvement | 1 year (free plan) or 7 years (paid plans), per PostHog's policy |
| Apple Inc. / Google LLC | United States | Handled by them under their own policies: sign-in (if you choose Apple or Google) and subscription payment | Sign-in, payment | Under their own policies |
| Amazon Web Services, Inc. | United States (us-east-1) | Coach review stills and their manifest (§2a); the reviews | Holding stills during a review; storing reviews | Stills: until the review ends, at most 1 day. Reviews: until deleted |
| Hangzhou DeepSeek Artificial Intelligence Co., Ltd. | China | Coach review stills and your note; coach chat messages, the coach's notes and your last 14 days of training (§2a) | Producing reviews and chat answers | Per the processor's policy (not published for its API) |
| Anthropic, PBC | United States | Coach review stills — only if the vision reader is enabled (§2a) | Describing the movement in the stills | Deleted within 30 days, per Anthropic's policy |
| Google LLC (YouTube) | United States | Short search words chosen by the coach — only if video search is enabled; never your data | Finding practice videos | Under Google's policy |
- When and how: over the network (encrypted in transit) each time you use the app.
- How to refuse, and what follows: deleting your account (§8) stops the transfer. Sign-in and storing your record are not possible without these companies, so refusing the transfer means the service cannot be used. The coach is the exception: it is optional. Not asking for a review and not using the coach chat means nothing is sent to DeepSeek or Anthropic, and the rest of the app works as before.
- Contacts: Amazon Web Services — https://aws.amazon.com/privacy/; RevenueCat — compliance@revenuecat.com, https://www.revenuecat.com/privacy; PostHog — https://posthog.com/privacy; DeepSeek — privacy@deepseek.com, https://cdn.deepseek.com/policies/en-US/deepseek-privacy-policy.html; Anthropic — https://www.anthropic.com/legal/privacy; Apple — https://www.apple.com/legal/privacy/; Google — https://policies.google.com/privacy.
Saved lessons. To show a thumbnail and caption, and to check that the post
still exists, a TikTok or YouTube link you save is sent from your phone to that
platform's oEmbed service, when you save it and again when the app loads your
lessons. The thumbnail image is loaded from that platform. An Instagram link is
not sent to Meta or to anyone else for this: it stays a plain link. Opening a
saved lesson opens the original post on its platform, under its own privacy
policy — in a browser sheet inside the app, or the platform's app. When you
press play on a saved YouTube video, the app loads YouTube's own embedded player
from youtube-nocookie.com (Google's privacy-enhanced mode), and your phone
talks to YouTube directly, as it would in a browser. Nothing is loaded from
YouTube until you press play.
7. How long we keep it
Your account and training record are kept while your account exists and are destroyed without delay when you delete the account (§8). A single drill, log, note or coach review is deleted when you delete it. Body information and pain areas are kept with your profile: clearing one under Profile (an empty weight, "Prefer not to say", "None") removes it, and deleting your account destroys them with the profile. Daily check-ins are kept until you delete your account. Coach review stills are deleted when the review ends, and in any case within one day. Electronic files are deleted so they cannot be recovered. We keep no purchase or payment records of our own (Apple, Google and RevenueCat hold those under their policies), and our database keeps no backups, so nothing deleted survives in one.
8. Your rights — access, correction, deletion, suspension
- See and correct: everything you entered is visible and editable in the app.
- Delete your account: you can delete your account and all stored training data in the app at Home → ⚙ → Settings → Account and backup → Delete account. Deletion in the app takes effect immediately. If you no longer have the app, email seungjun@huzlee.com from your account's address; we complete a mailed request within 30 days and reply when it is done (https://main.d21sgpgysfirm7.amplifyapp.com/delete-account). Deletion removes from our servers your training record (including your profile, body information, pain areas and daily check-ins), your lessons, your coach reviews and any stills still held for a review, our copy of your subscription status, and then your account. Your account goes last: if deletion cannot finish, the app says so and you can try again. It does not cancel a subscription (§4).
- Other requests (a copy of your data, suspension of processing, questions): contact us (§11) and we will act without delay.
9. Security
Your record can be read only by your signed-in account; every stored item belongs to one owner. Data is encrypted in transit, and access to the AWS account is restricted to the operator.
10. Children
The app is not directed at children under 14, and we do not knowingly collect personal information from them.
11. Privacy officer, contact and changes
Privacy officer: Seungjun Lee · seungjun@huzlee.com
You can also report or seek advice on a privacy infringement from these Korean bodies:
- Personal Information Dispute Mediation Committee: 1833-6972 (www.kopico.go.kr)
- Personal Information Infringement Report Center: 118 (privacy.kisa.or.kr)
- Supreme Prosecutors' Office: 1301 (www.spo.go.kr)
- Korean National Police Agency: 182 (ecrm.police.go.kr)
If this policy changes we will update this document with a new effective date, and tell you in the app when the change is material. If the data flow changes, this document changes with it, in the same commit — §2 (what is collected) and §6 (processors) must correspond one-to-one with the code.