Privacy Policy
Last updated: 2026-10-25 Applies to: Basketball Mind app version 1.0 and the website basketball-mind.com
This policy explains, in plain language, what data Basketball Mind uses, where it goes and what you can do about it. It describes the app as it works today.
1. Who we are
Data controller: Basketball Mind, an independent developer based in the Netherlands.
Privacy contact: privacy@basketball-mind.com
In this policy, "we" and "us" mean the data controller above.
2. The short version
- You can use Basketball Mind without an account. Then almost everything stays on your phone.
- An account is optional. If you create one, we store your account details and your completed training sessions on our server, so your progress (XP, levels, streaks) is kept.
- Your journal entries and assessment answers stay on your device. The app does not send them to us.
- The app sends crash reports to Sentry. These are not linked to your account.
- There are no ads, no analytics or tracking tools, no AI features and no in-app purchases. We do not sell your data.
- You can export your account data and delete your account yourself in the app (Profile).
3. Data that stays on your device
The app stores the following on your phone only. We cannot see it.
- Your onboarding answers: role, position, level, goals, birth year and language.
- Your mental-skills assessment answers and the profile calculated from them.
- Your journal entries (pre-game reflection, post-game journal and free journal), including what you write.
- Your session history, XP, badges, program progress and settings.
This data is stored in the app's own storage and protected by your phone's security (for example your passcode). The app does not add its own encryption to it. If you have an account, your login tokens are stored in the phone's secure keychain.
You can remove all of this in the app under Profile → Delete My Data (without an account) or Profile → Delete Account (with an account). Uninstalling the app also removes it.
4. What we collect and why
| Data | When | Why | Legal basis (GDPR) |
|---|---|---|---|
| Email address | When you create an account | Your login name | Contract (Art. 6(1)(b)) |
| Password | When you create an account | Login. We store only a bcrypt hash, never the password itself | Contract (Art. 6(1)(b)) |
| Display name | When you create an account | Shown in the app. A nickname is fine | Contract (Art. 6(1)(b)) |
| Role (player, coach or psychologist) and app language | When you create an account | Show the right content and language | Contract (Art. 6(1)(b)) |
| Timezone | When you create an account | Decide where your day starts and ends, for streaks and XP | Contract (Art. 6(1)(b)) |
| Birth year (optional) | When you create an account, if you entered it during onboarding | Show age-appropriate content and the right help lines | Contract (Art. 6(1)(b)) |
| Completed training sessions: which exercise, when you started and how long you listened | Each time you finish an exercise while signed in | Keep your progress, XP, levels and streaks | Contract (Art. 6(1)(b)) |
| XP and streak records | Calculated on our server from your sessions | Show your progress | Contract (Art. 6(1)(b)) |
| Account ID | Created with your account | Link your data to your account | Contract (Art. 6(1)(b)) |
| Server logs: IP address, time and the address of each request to our API | Every request to our API | Keep the service running, fix errors and prevent abuse | Legitimate interest (Art. 6(1)(f)) |
| Crash and error reports (see section 5) | When the app crashes or hits an error, with or without an account | Find and fix bugs | Legitimate interest (Art. 6(1)(f)) |
| Audio requests: IP address and device or browser information | When you play an exercise, the audio file is downloaded | Deliver the audio | Legitimate interest (Art. 6(1)(f)) |
| Emails you send us | When you contact us | Answer you and handle your request | Legitimate interest (Art. 6(1)(f)), or a legal obligation when you exercise your rights (Art. 6(1)(c)) |
Our server also has storage for features that are not in version 1.0 (such as server-side journals, goals, assessments and teams). The app does not use them and stores nothing there.
5. Crash reports (Sentry)
In the App Store and Google Play versions, the app sends crash and error reports to Sentry, from the moment the app starts and whether or not you have an account. A report can contain:
- the error and where in the app it happened (including the screen name);
- device model, operating system, app version and similar technical details;
- recent app events ("breadcrumbs"), such as screen changes, app log messages and the addresses of network requests;
- for about 1 in 5 app actions, timing information to measure performance.
We do not send your account ID, email address, journal text or assessment answers to Sentry, and we do not link reports to your account. Sentry receives your IP address when a report is sent, as with any internet connection; we do not use it to identify you. Sentry stores the reports in the EU.
6. Journal entries
Your journal entries are stored only on your device. Version 1.0 does not upload, sync or back them up to our server, and they are not analysed by AI. Because we do not have them, we cannot recover them if you delete the app or lose your phone, and they are not part of the data export.
Our server is built to encrypt journal text with AES-256-GCM, with a separate key for each user, if journal syncing is ever added. That feature is not active. If we add it, we will update this policy before it goes live.
7. Service providers (processors)
We use these providers to run Basketball Mind. They process data only on our instructions.
| Provider | What they do for us | Data they process | Where |
|---|---|---|---|
| Railway (Railway Corp.) | Hosts our API and database | Account data, completed sessions, XP and streaks, server logs (including IP addresses) | US company; data may be processed in the US (see section 8) |
| Vercel (Vercel Inc.) | Hosts the website basketball-mind.com and the exercise audio files (Vercel Blob) | IP address and device or browser information in standard request logs. No account data | US company; audio files are served from the US |
| Sentry (Functional Software, Inc.) | Crash and error reports | The report contents listed in section 5. Not linked to your account | Stored in the EU (Germany) |
When you email us, your message is stored with our email provider.
Apple and Google distribute the app. When you download it, they process data under their own privacy policies, not on our behalf.
We do not use Redis, analytics services, advertising networks or AI providers.
8. Data outside the EU
Railway, Vercel and Sentry are US companies, and some data (for example the API data hosted by Railway and the audio requests served by Vercel) may be processed in the United States. These transfers are protected by the EU-US Data Privacy Framework where the provider is certified, or by the EU Standard Contractual Clauses in the provider's data processing terms.
9. How long we keep data
| Data | How long |
|---|---|
| Account data, completed sessions, XP and streaks | Until you delete your account. We do not delete inactive accounts automatically |
| Data on your device | Until you delete it in the app or uninstall the app |
| Server logs | A limited period set by our hosting provider's log retention; we do not copy them elsewhere |
| Crash reports | Up to 90 days at Sentry |
| Emails you send us | As long as we need them to answer and handle your request |
10. Deleting your account and your data
In the app: go to Profile → Delete Account and confirm. The app deletes your account and all data linked to it from our server, permanently, and then clears the data on your device. This cannot be undone. If our hosting provider keeps database backups, the deleted data disappears from them when those backups expire.
Without an account: go to Profile → Delete My Data to clear everything stored on your device.
Without the app: email privacy@basketball-mind.com from the email address of your account and ask us to delete it. We will confirm the request and delete the account within one month.
Crash reports at Sentry are not linked to your account, so we cannot find them by account; they are deleted automatically after the retention period above.
11. Your rights (GDPR / AVG)
You have the right to:
| Right | What it means | How |
|---|---|---|
| Access (Art. 15) | Get a copy of the personal data we hold about you | In the app: Profile → Export My Data, or email us |
| Data portability (Art. 20) | Receive your data in a machine-readable format | Profile → Export My Data gives a JSON file through your phone's share sheet. It contains the data on our server; data that only exists on your device (such as journal entries) is not included |
| Rectification (Art. 16) | Correct wrong data | Email us |
| Erasure (Art. 17) | Have your data deleted | Profile → Delete Account, or email us (section 10) |
| Restriction (Art. 18) | Ask us to limit how we use your data | Email us |
| Objection (Art. 21) | Object to use based on legitimate interest, such as crash reports and logs | Email us |
Email privacy@basketball-mind.com. We answer within one month. To protect your account, we may ask you to confirm that the request comes from the account's email address.
You can also complain to the Dutch Data Protection Authority (Autoriteit Persoonsgegevens): autoriteitpersoonsgegevens.nl, or to the authority in your own EU country.
12. Security
- The app talks to our server only over encrypted connections (HTTPS).
- Passwords are stored as bcrypt hashes, never in readable form.
- Login tokens on your phone are kept in the device's secure keychain.
- Only the developer has access to the production systems.
13. Website and cookies
The website basketball-mind.com uses no cookies, no analytics and no tracking pixels. Vercel, which hosts the site, keeps standard request logs (see section 7). The coach sign-in page stores a login token in your browser's local storage, only after you sign in.
The app shows no ads and does not track you across apps or websites.
14. Children and young players
Basketball Mind is for players aged 13 and older. If you are under 16, ask a parent or guardian before you create an account. An account is not needed to use the app.
If you are a parent or guardian and think your child gave us personal data without your permission, email privacy@basketball-mind.com and we will delete it.
15. Changes to this policy
When the app changes how it uses data, we update this policy first and change the date at the top. For important changes, we will also tell you in the app.
16. Contact
Questions about privacy or your data: privacy@basketball-mind.com. For who we are, see section 1.
Basketball Mind Privacybeleid
Laatst bijgewerkt: 25 oktober 2026 Geldt voor: de Basketball Mind-app versie 1.0 en de website basketball-mind.com
Dit beleid legt in gewone taal uit welke gegevens Basketball Mind gebruikt, waar ze naartoe gaan en wat je zelf kunt doen. Het beschrijft de app zoals die nu werkt.
1. Wie wij zijn
Verwerkingsverantwoordelijke: Basketball Mind, een zelfstandige ontwikkelaar gevestigd in Nederland.
Contact voor privacy: privacy@basketball-mind.com
In dit beleid betekent "wij" of "ons" de verwerkingsverantwoordelijke hierboven.
2. In het kort
- Je kunt Basketball Mind zonder account gebruiken. Dan blijft bijna alles op je telefoon.
- Een account is optioneel. Maak je er een aan, dan bewaren wij je accountgegevens en je afgeronde trainingen op onze server, zodat je voortgang (XP, levels, streaks) bewaard blijft.
- Je dagboeknotities en assessmentantwoorden blijven op je apparaat. De app stuurt ze niet naar ons.
- De app stuurt crashrapporten naar Sentry. Die zijn niet gekoppeld aan je account.
- Er zijn geen advertenties, geen analyse- of trackingtools, geen AI-functies en geen in-app-aankopen. Wij verkopen je gegevens niet.
- Je kunt je accountgegevens zelf exporteren en je account zelf verwijderen in de app (Profiel).
3. Gegevens die op je apparaat blijven
De app bewaart het volgende alleen op je telefoon. Wij kunnen het niet zien.
- Je antwoorden bij het instellen: rol, positie, niveau, doelen, geboortejaar en taal.
- Je antwoorden op het mentale-vaardighedenassessment en het profiel dat daaruit volgt.
- Je dagboeknotities (pre-game reflectie, post-game dagboek en vrij dagboek), inclusief wat je schrijft.
- Je sessiegeschiedenis, XP, badges, programmavoortgang en instellingen.
Deze gegevens staan in de eigen opslag van de app en worden beschermd door de beveiliging van je telefoon (bijvoorbeeld je toegangscode). De app voegt zelf geen extra versleuteling toe. Heb je een account, dan staan je inlogtokens in de beveiligde sleutelhanger van je telefoon.
Je kunt dit allemaal wissen in de app via Profiel → Mijn gegevens verwijderen (zonder account) of Profiel → Account verwijderen (met account). De app verwijderen wist het ook.
4. Wat wij verzamelen en waarom
| Gegeven | Wanneer | Waarom | Rechtsgrond (AVG) |
|---|---|---|---|
| E-mailadres | Als je een account maakt | Je inlognaam | Overeenkomst (art. 6 lid 1 sub b) |
| Wachtwoord | Als je een account maakt | Inloggen. Wij bewaren alleen een bcrypt-hash, nooit het wachtwoord zelf | Overeenkomst (art. 6 lid 1 sub b) |
| Weergavenaam | Als je een account maakt | Getoond in de app. Een bijnaam mag | Overeenkomst (art. 6 lid 1 sub b) |
| Rol (speler, coach of psycholoog) en taal van de app | Als je een account maakt | De juiste inhoud en taal tonen | Overeenkomst (art. 6 lid 1 sub b) |
| Tijdzone | Als je een account maakt | Bepalen waar je dag begint en eindigt, voor streaks en XP | Overeenkomst (art. 6 lid 1 sub b) |
| Geboortejaar (optioneel) | Als je een account maakt, als je het bij het instellen hebt ingevuld | Inhoud en hulplijnen passend bij je leeftijd tonen | Overeenkomst (art. 6 lid 1 sub b) |
| Afgeronde trainingen: welke oefening, wanneer je begon en hoe lang je luisterde | Elke keer dat je ingelogd een oefening afrondt | Je voortgang, XP, levels en streaks bijhouden | Overeenkomst (art. 6 lid 1 sub b) |
| XP- en streakgegevens | Op onze server berekend uit je trainingen | Je voortgang tonen | Overeenkomst (art. 6 lid 1 sub b) |
| Account-ID | Aangemaakt met je account | Je gegevens aan je account koppelen | Overeenkomst (art. 6 lid 1 sub b) |
| Serverlogs: IP-adres, tijdstip en het adres van elk verzoek aan onze API | Bij elk verzoek aan onze API | De dienst draaiend houden, fouten oplossen en misbruik voorkomen | Gerechtvaardigd belang (art. 6 lid 1 sub f) |
| Crash- en foutrapporten (zie sectie 5) | Als de app crasht of een fout tegenkomt, met of zonder account | Bugs vinden en oplossen | Gerechtvaardigd belang (art. 6 lid 1 sub f) |
| Audioverzoeken: IP-adres en apparaat- of browsergegevens | Als je een oefening afspeelt, wordt het audiobestand gedownload | De audio leveren | Gerechtvaardigd belang (art. 6 lid 1 sub f) |
| E-mails die je ons stuurt | Als je contact opneemt | Je antwoorden en je verzoek afhandelen | Gerechtvaardigd belang (art. 6 lid 1 sub f), of een wettelijke plicht als je je rechten uitoefent (art. 6 lid 1 sub c) |
Onze server heeft ook opslag voor functies die niet in versie 1.0 zitten (zoals dagboeken, doelen, assessments en teams op de server). De app gebruikt die niet en slaat daar niets op.
5. Crashrapporten (Sentry)
In de versies uit de App Store en Google Play stuurt de app crash- en foutrapporten naar Sentry, vanaf het moment dat de app start en ook als je geen account hebt. Een rapport kan bevatten:
- de fout en waar in de app die optrad (inclusief de naam van het scherm);
- apparaatmodel, besturingssysteem, appversie en vergelijkbare technische gegevens;
- recente gebeurtenissen in de app ("breadcrumbs"), zoals schermwissels, logberichten van de app en de adressen van netwerkverzoeken;
- bij ongeveer 1 op de 5 acties in de app: tijdmetingen om de snelheid te meten.
Wij sturen je account-ID, e-mailadres, dagboektekst en assessmentantwoorden niet naar Sentry, en wij koppelen rapporten niet aan je account. Sentry ontvangt je IP-adres wanneer een rapport wordt verstuurd, zoals bij elke internetverbinding; wij gebruiken het niet om je te identificeren. Sentry bewaart de rapporten in de EU.
6. Dagboeknotities
Je dagboeknotities staan alleen op je apparaat. Versie 1.0 uploadt, synchroniseert of back-upt ze niet naar onze server, en ze worden niet door AI geanalyseerd. Omdat wij ze niet hebben, kunnen wij ze niet terughalen als je de app verwijdert of je telefoon kwijtraakt, en ze zitten niet in de gegevensexport.
Onze server is erop gebouwd om dagboektekst te versleutelen met AES-256-GCM, met een aparte sleutel per gebruiker, mocht synchronisatie ooit worden toegevoegd. Die functie staat niet aan. Voegen wij die toe, dan passen wij dit beleid aan voordat de functie live gaat.
7. Dienstverleners (verwerkers)
Wij gebruiken deze dienstverleners om Basketball Mind te laten werken. Zij verwerken gegevens alleen in onze opdracht.
| Dienstverlener | Wat zij voor ons doen | Gegevens die zij verwerken | Waar |
|---|---|---|---|
| Railway (Railway Corp.) | Host onze API en database | Accountgegevens, afgeronde trainingen, XP en streaks, serverlogs (inclusief IP-adressen) | Amerikaans bedrijf; gegevens kunnen in de VS worden verwerkt (zie sectie 8) |
| Vercel (Vercel Inc.) | Host de website basketball-mind.com en de audiobestanden van de oefeningen (Vercel Blob) | IP-adres en apparaat- of browsergegevens in standaard verzoeklogs. Geen accountgegevens | Amerikaans bedrijf; audiobestanden worden vanuit de VS geleverd |
| Sentry (Functional Software, Inc.) | Crash- en foutrapporten | De inhoud van rapporten uit sectie 5. Niet gekoppeld aan je account | Opgeslagen in de EU (Duitsland) |
Als je ons mailt, wordt je bericht opgeslagen bij onze e-mailprovider.
Apple en Google verspreiden de app. Als je de app downloadt, verwerken zij gegevens onder hun eigen privacybeleid, niet in onze opdracht.
Wij gebruiken geen Redis, analysediensten, advertentienetwerken of AI-providers.
8. Gegevens buiten de EU
Railway, Vercel en Sentry zijn Amerikaanse bedrijven, en sommige gegevens (bijvoorbeeld de API-gegevens bij Railway en de audioverzoeken via Vercel) kunnen in de Verenigde Staten worden verwerkt. Die doorgifte is beschermd door het EU-VS Data Privacy Framework als de dienstverlener daarvoor gecertificeerd is, of door de Standaardcontractbepalingen van de EU in de verwerkersvoorwaarden van de dienstverlener.
9. Hoe lang wij gegevens bewaren
| Gegevens | Hoe lang |
|---|---|
| Accountgegevens, afgeronde trainingen, XP en streaks | Tot je je account verwijdert. Wij verwijderen inactieve accounts niet automatisch |
| Gegevens op je apparaat | Tot je ze in de app verwijdert of de app verwijdert |
| Serverlogs | Een beperkte periode, bepaald door de logbewaring van onze hostingprovider; wij kopiëren ze nergens naartoe |
| Crashrapporten | Maximaal 90 dagen bij Sentry |
| E-mails die je ons stuurt | Zolang wij ze nodig hebben om je te antwoorden en je verzoek af te handelen |
10. Je account en gegevens verwijderen
In de app: ga naar Profiel → Account verwijderen en bevestig. De app verwijdert je account en alle gegevens die eraan gekoppeld zijn definitief van onze server, en wist daarna de gegevens op je apparaat. Dit kan niet ongedaan worden gemaakt. Als onze hostingprovider databaseback-ups bewaart, verdwijnen de verwijderde gegevens daaruit wanneer die back-ups verlopen.
Zonder account: ga naar Profiel → Mijn gegevens verwijderen om alles op je apparaat te wissen.
Zonder de app: mail privacy@basketball-mind.com vanaf het e-mailadres van je account en vraag ons het account te verwijderen. Wij bevestigen het verzoek en verwijderen het account binnen een maand.
Crashrapporten bij Sentry zijn niet gekoppeld aan je account, dus wij kunnen ze niet per account terugvinden; ze worden automatisch verwijderd na de bewaartermijn hierboven.
11. Je rechten (AVG)
Je hebt het recht op:
| Recht | Wat het betekent | Hoe |
|---|---|---|
| Inzage (art. 15) | Een kopie krijgen van de persoonsgegevens die wij over je hebben | In de app: Profiel → Exporteer mijn gegevens, of mail ons |
| Overdraagbaarheid (art. 20) | Je gegevens krijgen in een machineleesbaar formaat | Profiel → Exporteer mijn gegevens geeft een JSON-bestand via het deelmenu van je telefoon. Het bevat de gegevens op onze server; gegevens die alleen op je apparaat staan (zoals dagboeknotities) zitten er niet in |
| Rectificatie (art. 16) | Onjuiste gegevens laten corrigeren | Mail ons |
| Verwijdering (art. 17) | Je gegevens laten wissen | Profiel → Account verwijderen, of mail ons (sectie 10) |
| Beperking (art. 18) | Vragen dat wij je gegevens minder gebruiken | Mail ons |
| Bezwaar (art. 21) | Bezwaar maken tegen gebruik op basis van gerechtvaardigd belang, zoals crashrapporten en logs | Mail ons |
Mail privacy@basketball-mind.com. Wij antwoorden binnen een maand. Om je account te beschermen kunnen wij vragen te bevestigen dat het verzoek van het e-mailadres van het account komt.
Je kunt ook een klacht indienen bij de Autoriteit Persoonsgegevens: autoriteitpersoonsgegevens.nl, of bij de toezichthouder in je eigen EU-land.
12. Beveiliging
- De app praat alleen via versleutelde verbindingen (HTTPS) met onze server.
- Wachtwoorden worden opgeslagen als bcrypt-hash, nooit leesbaar.
- Inlogtokens op je telefoon staan in de beveiligde sleutelhanger van het apparaat.
- Alleen de ontwikkelaar heeft toegang tot de productiesystemen.
13. Website en cookies
De website basketball-mind.com gebruikt geen cookies, geen analysetools en geen trackingpixels. Vercel, dat de site host, houdt standaard verzoeklogs bij (zie sectie 7). De inlogpagina voor coaches bewaart een inlogtoken in de lokale opslag van je browser, alleen nadat je inlogt.
De app toont geen advertenties en volgt je niet over andere apps of websites.
14. Kinderen en jonge spelers
Basketball Mind is voor spelers van 13 jaar en ouder. Ben je jonger dan 16, vraag dan een ouder of voogd voordat je een account maakt. Je hebt geen account nodig om de app te gebruiken.
Ben je ouder of voogd en denk je dat je kind ons zonder jouw toestemming persoonsgegevens heeft gegeven, mail dan privacy@basketball-mind.com en wij verwijderen ze.
15. Wijzigingen in dit beleid
Als de app verandert in hoe hij gegevens gebruikt, passen wij eerst dit beleid aan en wijzigen wij de datum bovenaan. Bij belangrijke wijzigingen laten wij het je ook in de app weten.
16. Contact
Vragen over privacy of je gegevens: privacy@basketball-mind.com. Wie wij zijn staat in sectie 1.