Privacy policy
This app holds video and coaching records of people under 18. This policy describes what actually happens to that material in this system, not a general template. If anything here is unclear, ask us before you use the app: support@kiperformance.app.
1. Who the account holders are
There are three kinds of account: athlete, coach, and guardian. Where an athlete is under 18, an account is created only with the involvement of their parent or guardian, who receives their own guardian account with full visibility of that athlete’s record.
2. What we collect
| What | Why |
|---|---|
| Email address and password | Sign-in. Passwords are stored hashed by our authentication provider; we never see them. |
| Display name, language, role; and for athletes date of birth, stance and weight class | To show the right record to the right person and to present it correctly. |
| Video you or your coach upload — sparring, pads, bag work, shadowboxing, fights | The purpose of the app: review and coaching notes. |
| Voice notes (audio) recorded in the app | Spoken coaching notes and journal entries. |
| Coaching notes, focus tasks, progress scores, training journals, session and fight plans | The coaching record itself. |
| Recordings and transcripts of coaching video calls | Only where recording consent has been given. See section 6. |
| A device token, if you enable notifications | To send you a notification. It identifies the handset, not you personally. |
We do not collect location, contacts, advertising identifiers, or health data from a phone’s health store. There is no advertising in the app and we do not sell data to anyone.
3. Where it is stored
- Database records (accounts, notes, scores, journals) — Supabase, on infrastructure in the Asia Pacific (Mumbai) region.
- Video and audio originals — Cloudflare R2 object storage.
- Playback copies of video — Cloudflare Stream. Playback links are signed and expire; a link that leaks stops working.
- Application servers — Railway.
4. Who can see a record
Access is enforced by the database itself, per row, not only by the app screens:
- An athlete sees their own record.
- A coach sees only athletes explicitly assigned to them. A coach cannot browse other coaches’ athletes.
- A guardian sees the full record of the athlete they are responsible for, including AI drafts still awaiting coach review.
- AI-drafted observations are hidden from the athlete until the coach who requested them approves them.
Our staff do not routinely access athlete footage. Where support requires it, it is done on request and with the guardian informed.
5. Processors we send data to
| Processor | What is sent |
|---|---|
| Supabase | Account and coaching records; authentication. |
| Cloudflare (R2, Stream) | Video and audio files. |
| Railway | Application hosting. |
| OpenAI | Audio of voice notes and coaching calls, for transcription only. |
| Anthropic | Text of notes and transcripts, and sampled still frames from a video, for translation, the AI first read, and answering questions from the record. |
| Google (Firebase Cloud Messaging) | Notification delivery to your device. |
| Zoom | Where coaching calls are held on Zoom and recording consent is given. |
These providers process the data to deliver the feature and under their own terms. We do not authorise them to use athlete material to train models. If that matters to you — and for a minor it should — ask us and we will point you at the current provider terms.
6. Recording coaching calls
Coaching calls are recorded only where consent has been given, and a guardian can withdraw that consent for their athlete at any time in the app. Withdrawing consent stops future recordings being retained against that athlete. It does not retroactively erase a call already recorded — to remove those, make a deletion request under section 8.
7. How long we keep it
Records are kept for as long as the account is active, because the point of the product is a record that spans years of an athlete’s development. Playback copies of video are dropped from Cloudflare Stream after a period without being watched; the original stays in R2 until deleted. On a deletion request we remove the record as described below.
8. Deletion, and how a guardian requests it
Email support@kiperformance.app from the address on the guardian or athlete account, and say which athlete the request covers and whether you want everything deleted or only the video.
We will confirm receipt, verify that the request comes from the account holder or the guardian of the athlete, and then delete: the account, the coaching records, and the video and audio files from storage. We will confirm in writing when it is done. If any of it must be retained for a legal reason, we will tell you what and why.
You can also ask for a copy of the record, or for a correction, at the same address.
9. Security
Access is controlled per row in the database, so a request for another athlete’s record returns nothing rather than relying on the app to hide it. Video playback links are signed and short-lived. Traffic is encrypted in transit.
10. Changes
If this policy changes materially we will say so in the app before the change takes effect.
11. Contact
KI Performance — support@kiperformance.app
KI Performance