Privacybeleid
Laatst bijgewerkt op 1 oktober 2026
CalReady bewaart wat je erover vertelt over je lichaam en wat je eet. Dat is persoonlijk, en een deel ervan geldt als gezondheidsgegevens, dus deze pagina zet gewoon op een rij wat er wordt verzameld, waar het heen gaat, hoe lang het blijft en hoe je het terugkrijgt of weggooit. Je kunt alles exporteren of je account helemaal verwijderen vanuit Instellingen, op elk moment, zonder het aan iemand te vragen.
1. Wie verantwoordelijk is voor je gegevens
CalReady wordt gerund door Vitor Pinheiro, een particulier gevestigd in Nederland, die optreedt als verwerkingsverantwoordelijke. Er zit geen bedrijf achter.
Voor alles in dit beleid — een vraag, een verzoek of een klacht — schrijf naar contact@kcalready.com. Een antwoord hoort binnen 30 dagen te komen, de termijn die zowel de AVG als de LGPD stelt.
Dit beleid is geschreven om te voldoen aan zowel de Europese en Britse Algemene verordening gegevensbescherming als de Braziliaanse Lei Geral de Proteção de Dados. Waar de twee verschillen, geldt degene die jou meer geeft.
2. Wat er wordt verzameld
Alleen wat de app nodig heeft om zijn werk te doen, plus één ding dat je zelf aanzet: een Google Ads-tag die ons vertelt of een advertentie je hierheen bracht. Die staat uit tot je Marketing aanzet in het cookiepaneel. Er is geen datahandelaar bij betrokken.
- Account: je e-mailadres, de naam waarmee je je aanmeldt, en — als je er een instelt — een wachtwoord, dat alleen als bcrypt-hash wordt bewaard en nooit terug te lezen is. Inloggen met Google levert je e-mailadres en naam uit je Google-profiel; er wordt geen wachtwoord aangemaakt.
- Lichaamsgegevens: geslacht, leeftijd, lengte en gewicht, je trainingsbelasting, je doel en het tempo dat je aanhoudt. Die voeden de calorie- en macroberekening en verder niets.
- Maaltijden: wat je hebt gelogd, de dag en het maaltijdmoment, de grammen en macro’s per etenswaar, een eventuele notitie die je typte, en een kleine miniatuurfoto van ongeveer 192 pixels als je vanaf een foto logde.
- Voorkeuren: thema, eenheden, taal en je tijdzone, zodat "vandaag" jouw vandaag betekent en niet die van de server.
- Technisch: je browser stuurt bij elk verzoek een IP-adres en een user-agent mee, zoals browsers doen. Die worden gebruikt om de pagina te serveren en worden niet naast je account in de database bewaard.
3. Gezondheidsgegevens, en waarom toestemming hier uitmaakt
Je gewicht, lengte, geslacht, leeftijd en voedingsinname zijn gezondheidsgegevens. De AVG noemt dit een bijzondere categorie (artikel 9) en de LGPD noemt het gevoelig (artikel 11), en beide vragen een steviger grondslag dan gewone gegevens.
Die grondslag is jouw uitdrukkelijke toestemming, gegeven op het moment dat je deze gegevens invult. Je bent nooit verplicht ze in te vullen: de app werkt zonder ze als een gewoon eetdagboek, en het enige dat je mist zijn de berekende doelen.
Je kunt die toestemming op elk moment intrekken door de velden leeg te maken of je account te verwijderen. Intrekken maakt verwerking die al heeft plaatsgevonden niet ongedaan, wat onder beide wetten het gebruikelijke uitgangspunt is.
4. Waarom elk onderdeel wordt verwerkt, en op welke grondslag
- Om je account te laten draaien en je je eigen gegevens te tonen — omdat dat nodig is om de overeenkomst tussen ons uit te voeren (AVG art. 6(1)(b); LGPD art. 7(V)).
- Om je doelen te berekenen en je maaltijden te schatten — op jouw uitdrukkelijke toestemming, omdat het om gezondheidsgegevens gaat (AVG art. 6(1)(a) en 9(2)(a); LGPD art. 11(I)).
- Om je een inloglink of een wachtwoordherstel te sturen — nodig om de overeenkomst uit te voeren, en om het account veilig te houden.
- Om de dienst werkend, veilig en vrij van misbruik te houden — ons gerechtvaardigd belang bij een dienst die overeind blijft en niet wordt aangevallen (AVG art. 6(1)(f); LGPD art. 7(IX)).
- Om betaling te innen, als je een betaald plan hebt — nodig om de overeenkomst uit te voeren, en om te voldoen aan de fiscale en boekhoudkundige wetgeving die ons verplicht facturen te bewaren.
5. Je foto’s en opnames, en wat de AI ziet
Wanneer je om een schatting vraagt, wordt de foto in je eigen browser teruggebracht tot maximaal 1024 pixels en samen met een eventuele notitie en je lokale tijd verstuurd naar meer dan één AI-aanbieder — op dit moment OpenAI, Anthropic en Google. Elk leest dezelfde foto op zijn beurt en geeft de etenswaren terug die het kan herkennen, met geschatte gewichten en macro’s, en die lezingen worden gecombineerd. Welke aanbieders worden gebruikt kan veranderen; deze paragraaf wordt dan bijgewerkt. Op dat moment wordt er niets opgeslagen — jij ziet de schatting eerst, en die bereikt de database pas als je op loggen drukt.
De foto op volledige grootte wordt nooit opgeslagen. Wat bij een gelogde maaltijd bewaard blijft is een aparte miniatuur van ongeveer 192 pixels, gemaakt in je browser. Er is geen fotoarchief en geen origineel om terug te halen.
Een maaltijd beschrijven stuurt minder. Een getypte beschrijving gaat, met je lokale tijd, naar één van die aanbieders om er voedingsmiddelen van te maken. Een gesproken beschrijving wordt in je browser opgenomen alleen tussen het tikken op de microfoon en het opnieuw tikken — hooguit een minuut — en naar OpenAI gestuurd om te worden uitgeschreven; de tekst gaat daarna dezelfde weg als een getypte beschrijving en wordt je teruggetoond om te verbeteren. De opname wordt niet bewaard, niet door ons en niet in je account.
Volgens de API-voorwaarden van elke aanbieder wordt inhoud die via de API wordt verstuurd niet gebruikt om hun modellen te trainen, en elk verklaart inhoud een beperkte periode te bewaren om misbruik te signaleren voordat het wordt gewist. Wij hebben geen zeggenschap over die bewaring; zit het je dwars, vul de voedingsmiddelen dan zelf in, zonder de beschrijf-snelkoppeling, want dat stuurt helemaal niets naar wie dan ook.
De optionele planbeoordeling staat daar los van en gaat alleen naar OpenAI: je gegevens en doelen gaan als getallen mee, zonder naam of e-mailadres erbij.
6. Wie het verder onder ogen krijgt
De dienst draait op de infrastructuur van andere bedrijven. Elk daarvan is gebonden aan een verwerkersovereenkomst en mag alleen op instructie handelen.
- Supabase — de database met je account, profiel en maaltijden.
- Vercel — hosting, plus Vercel Analytics en Speed Insights voor het tellen van paginaweergaven, het tellen van een paar handelingen in de app, en laadtijden van pagina’s. Beide werken zonder cookies en stellen geen profielen van personen op.
- OpenAI — een van de lezingen achter een maaltijdschatting, het uitschrijven van een gesproken beschrijving, en de planbeoordeling, zoals hierboven beschreven.
- Anthropic — een van de lezingen achter een maaltijdschatting, zoals hierboven beschreven. Verder wordt er niets naar hen gestuurd.
- Resend — het bezorgen van inlog- en wachtwoordherstelmails.
- Google — een van de lezingen achter een maaltijdschatting, zoals hierboven beschreven; en, daarvan los, het bevestigen van wie je bent als je ervoor kiest met Google in te loggen.
- Gumroad — de betaling van een abonnement, als je er een neemt. Gumroad is de verkopende partij: zij verkopen het abonnement, innen de betaling en geven de bon uit. Kaartnummers worden volledig door hen afgehandeld en bereiken onze servers nooit; het enige dat wij ooit bewaren is een licentiesleutel en of die op dit moment geldig is.
Een deel hiervan zit in de Verenigde Staten. Doorgiften buiten de EER steunen op de modelcontractbepalingen van de Europese Commissie, en doorgiften buiten Brazilië op het gelijkwaardige mechanisme uit artikel 33 van de LGPD.
Je gegevens worden nooit verkocht, verhuurd of verhandeld. Ze zouden alleen aan een rechter of een toezichthouder worden gegeven waar de wet dat echt afdwingt.
7. Hoe lang het bewaard blijft
Je account en alles daarin blijft bewaard zolang het account bestaat. Er is geen automatische vervaltermijn, want een eetdagboek is alleen nuttig als geschiedenis.
Je account verwijderen wist je profiel en elke maaltijd onmiddellijk en definitief, en daarna het account zelf. Dit is geen zachte verwijdering en er is geen hersteltermijn — exporteer eerst als je een kopie wilt.
Twee dingen overleven het account, en alleen omdat de wet dat verlangt: facturen voor betalingen, bewaard voor de periode die de belastingdienst voorschrijft, en serverlogboeken, die binnen korte tijd vanzelf worden overschreven.
8. Je rechten
Onder zowel de AVG als de LGPD kun je:
- Zien wat er over je is vastgelegd, en daar een kopie van krijgen.
- Corrigeren wat niet klopt — elk veld in de app kun je zelf aanpassen.
- Alles laten verwijderen.
- Het meenemen, in een machineleesbaar formaat.
- Bezwaar maken tegen verwerking op grond van gerechtvaardigd belang, of die beperken zolang een geschil loopt.
- De toestemming voor de gezondheidsgegevens intrekken, op elk moment.
- Vragen met wie de gegevens zijn gedeeld — dat is de lijst in paragraaf 6.
- Gevrijwaard blijven van besluiten die puur automatisch worden genomen met rechtsgevolg of vergelijkbare gevolgen. Een calorieschatting is zo’n besluit niet, en zulke besluiten worden hier niet genomen.
De eerste vier daarvan vragen geen verzoek: Instellingen → Account heeft een exportknop die je alles als één JSON-bestand geeft, en een verwijderknop die het account voorgoed weghaalt. Voor al het andere: schrijf naar contact@kcalready.com.
Er worden geen kosten in rekening gebracht, en er wordt niet gevraagd waarom.
9. Cookies en browseropslag
CalReady plaatst één cookie: de sessiecookie die je ingelogd houdt. Die is strikt noodzakelijk — zonder die cookie is er geen manier om te weten dat jij het bent — dus er wordt geen toestemming voor gevraagd, en onder de Europese ePrivacy-regels is die ook niet nodig.
Je browser bewaart daarnaast twee kleine dingen van zichzelf: het thema dat je koos, zodat de pagina niet eerst in de verkeerde kleuren knippert, en een vastlegging van je cookiekeuze, zodat er niet bij elk bezoek opnieuw om wordt gevraagd. Geen van beide verlaat je apparaat.
Alles daarbuiten zit achter jouw keuze. Er wordt om gevraagd zodra je binnenkomt, niets in de optionele categorieën draait tot jij het actief aanzet, en weigeren is één klik op dezelfde regel als accepteren — nooit een niveau dieper.
- Strikt noodzakelijk — de twee dingen hierboven. Geen schakelaar, want zonder deze werkt de app niet.
- Gebruiksmeting — het tellen van paginaweergaven, het tellen van een paar handelingen in de app zodat we zien waar mensen vastlopen (een schatting aangevraagd, een maaltijd gelogd, het abonnementsscherm getoond, een afrekening gestart), en hoe snel pagina’s voor je laden. Die dragen een telling en een label, nooit de naam van een etenswaar, de titel van een maaltijd of iets wat je hebt getypt. Uit tenzij jij het aanzet.
- Marketing — meten of een advertentie je hier bracht, en CalReady elders tonen aan vergelijkbare mensen. Dit is de categorie die je tussen sites kan volgen. Uit tenzij jij het aanzet.
Bedenk je wanneer je wilt: "Cookievoorkeuren" staat in de voettekst en in Instellingen → Account, en iets uitzetten gaat meteen in. Met Marketing uit wordt er helemaal geen advertentietag geladen; Vercel Analytics en Speed Insights meten zonder cookie en zonder iemand te herkennen, en de lettertypen worden vanaf ons eigen domein geserveerd in plaats van bij Google opgehaald — dus een pagina bezoeken vertelt Google niets. Marketing aanzetten laadt de Google Ads-tag, die eigen cookies op dit domein zet om je bezoek aan de aangeklikte advertentie te koppelen; weer uitzetten laat die cookies verlopen.
10. Hoe het veilig wordt gehouden
Verkeer loopt over HTTPS. Wachtwoorden worden bewaard als bcrypt-hashes, nooit als leesbare tekst. Databasetoegang gebruikt een sleutel die alleen op de server staat en nooit aan je browser wordt blootgesteld, en elke query is afgebakend tot het ingelogde account.
De installeerbare app bewaart bewust vrijwel niets in een cache — pagina-inhoud en API-antwoorden gaan altijd naar het netwerk — zodat een gedeeld apparaat de maaltijden van de één niet aan de volgende laat zien.
Geen enkel systeem is perfect beveiligd, en wie iets anders beweert verkoopt iets. Treedt er een inbreuk op die waarschijnlijk een risico vormt voor je rechten, dan hoor jij het, en de toezichthouder ook, binnen 72 uur nadat die is ontdekt.
11. Leeftijd
CalReady is voor volwassenen. Je moet 18 of ouder zijn om een account te hebben, en er worden niet bewust gegevens verzameld van wie jonger is.
Denk je dat iemand onder de 18 een account heeft, schrijf dan naar contact@kcalready.com en het wordt verwijderd.
12. Wijzigingen in dit beleid
Dit beleid kan veranderen naarmate de app verandert. De datum bovenaan geeft altijd de huidige versie weer.
Alles wat je rechten wezenlijk beperkt of verbreedt wat er wordt verzameld, wordt per e-mail of in de app gemeld voordat het ingaat.
13. Klachten
Klopt hier iets niet, zeg het dan eerst tegen ons — dat is meestal sneller. Maar je hoeft niet via ons te gaan.
In de EU of het VK kun je klagen bij je nationale toezichthouder voor gegevensbescherming; in Nederland is dat de Autoriteit Persoonsgegevens. In Brazilië kun je klagen bij de Autoridade Nacional de Proteção de Dados (ANPD). Hoe dan ook: het klachtrecht is van jou en het gebruiken kost niets.