← Terug naar ScootKoers

Privacyverklaring

Laatst bijgewerkt: 4 oktober 2026

Deze privacyverklaring beschrijft welke gegevens ScootKoers verwerkt, waarom, op welke grondslag en hoe lang. Ze geldt voor de ScootKoers-app (Android, iOS en de webversie) en is van toepassing op iedereen die de app gebruikt.

Verwerkingsverantwoordelijke

SvenSite
E-mail: [email protected]
KvK-nummer: 83853049
BTW-id: NL003881492B31

Locatie

De app vraagt alleen tijdens gebruik toegang tot je precieze locatie, om je positie te tonen, een route te berekenen en actieve navigatie mogelijk te maken. De app vraagt geen achtergrondlocatie. Tijdens een actieve rit verwerkt de app gefilterde GPS-punten in het geheugen om navigatie, afwijkingen en aankomst te herkennen. Grondslag: uitvoering van de dienst waar je om vraagt.

Routeberekening en externe kaartdiensten

Om een route te berekenen worden start- en bestemmingscoördinaten via een beveiligde verbinding naar de routeringsdienst gestuurd. Voor zoeken, kaartweergave en extra routecontrole gebruikt de app daarnaast OpenStreetMap-gerelateerde diensten: Valhalla voor routering, Photon (een eigen zoekserver van ScootKoers, met als terugval de publieke Photon van Komoot) en Nominatim voor zoeken naar adressen, PDOK van het Kadaster voor de kaart en luchtfoto's binnen Nederland, MapTiler voor de kaart en luchtfoto's daarbuiten, en de Overpass API voor aanvullende wegcontrole. Deze diensten ontvangen technisch noodzakelijke gegevens zoals je IP-adres en, afhankelijk van de functie, zoektekst, kaartgebied of coördinaten. Bij het zoeken gaat je zoektekst, en als voorkeur voor resultaten in de buurt ook je ongeveer huidige locatie, naar de zoekserver. De eigen zoekserver draait op een computer van ScootKoers en is bereikbaar via Cloudflare; die bewaart geen zoektekst en logt die nooit. Voor de publieke Photon van Komoot en voor Nominatim gelden hun eigen voorwaarden. Hun eigen bewaartermijnen en privacyvoorwaarden zijn van toepassing. Grondslag: uitvoering van de dienst waar je om vraagt.

Lokale opslag

Favorieten, recente bestemmingen, instellingen, een hervatbare actieve rit en routeprobleemmeldingen worden lokaal op je apparaat opgeslagen. Wanneer een voltooide afwijkende rit aantoonbaar sneller was, bewaart de app lokaal maximaal drie tussenpunten, begin en bestemming en de gemeten reistijd, zodat hetzelfde apparaat die route bij een volgende rit opnieuw kan herkennen. Lokale geleerde routes vervallen na maximaal 180 dagen.

De Android-app sluit deze lokale gegevens uit van Android-cloudback-ups en apparaatmigratie; de gegevens blijven binnen de app-sandbox op het apparaat. De webversie gebruikt de afgeschermde site-opslag van de browser; iedereen met toegang tot het ontgrendelde apparaat of browserprofiel kan die lokale gegevens mogelijk benaderen.

Voor betere aankomsttijden bewaart de app daarnaast lokaal een grove corridorcode, spits- of dalcategorie en maximaal twintig recente bruikbare reistijden per categorie. Slechte GPS, lange pauzes, grote afwijkingen en statistische uitschieters worden geweigerd. Pas vanaf drie passende ritten wordt de lokale ETA aangepast. Er worden maximaal veertig corridormodellen bewaard; waarnemingen vervallen na maximaal 365 dagen en verdwijnen direct via Lokale appgegevens wissen in de instellingen.

Als je ScootKoers als app hebt geïnstalleerd, worden kaarttegels die je online al bekijkt daarna een tijdje offline bewaard (maximaal 3.000 tegels, oudste eerst verwijderd), zodat een eerder bekeken gebied ook zonder internet nog zichtbaar blijft. Er worden nooit tegels van een gebied opgehaald dat je niet zelf hebt bekeken; dit is dus geen download van een groter gebied. Verwijderen kan via Offline kaart wissen in de instellingen.

Ritten delen voor route-verbetering

De instelling Deel ritten automatisch voor route-verbetering staat standaard aan; je ziet 'm direct bij de eerste keer opstarten en kunt 'm daar of later altijd uitzetten via Instellingen. Staat de instelling uit, dan wordt er niets van het onderstaande verstuurd en verzamelt de app sowieso alleen locatie tijdens een actief genavigeerde rit.

Na elke rit die je actief hebt genavigeerd, stuurt de app een met SHA-256 gemaakte corridorcode, spits/dal, reistijd, afstand en technische kwaliteitswaarden voor het gezamenlijke statistische reistijdmodel (zie hieronder). Dit gebeurt uitsluitend direct na een zojuist afgeronde, actief genavigeerde rit. De verwerking is volledig deterministisch: er wordt geen data naar een AI-aanbieder of een derde land buiten de EU gestuurd. Grondslag: gerechtvaardigd belang bij het verbeteren van reistijdvoorspellingen, met een anonieme, sterk afgeronde dataset en een altijd beschikbare opt-out.

Wanneer een rit ook aantoonbaar een snellere afwijkende route heeft opgeleverd, kan onder dezelfde instelling apart een routekandidaat worden gedeeld (zie hieronder). Een wekelijkse, eveneens volledig deterministische taak clustert de zo verzamelde routekandidaten van meerdere onafhankelijke rijders op dezelfde plek en genereert daar een korte samenvatting van (aantal bijdragers, gemiddelde locatie) voor handmatige review. Suggesties hieruit worden nooit automatisch op je route toegepast: ze doorlopen eerst dezelfde wettelijke routecontrole als een handmatig gedeelde routekandidaat, voordat ze ooit als routecorrectie kunnen worden gebruikt.

Gezamenlijk statistisch reistijdmodel

Voor dit deel ontvangt de server geen start- of bestemmingscoördinaten, adres, volledig GPS-spoor, account, naam of e-mailadres — alleen de hierboven genoemde corridorcode en cijfers. Dit deel traint geen AI- of taalmodel, alleen een statistisch praktijkmodel.

Een gezamenlijke ETA wordt pas getoond vanaf minimaal vijf geaccepteerde ritten van minimaal drie afzonderlijke deelnemers. Ritmedians per deelnemer, uitschieterfilters en een maximumaantal bijdragen per deelnemer voorkomen dat één veelrijder het model domineert. Spits en dal blijven apart. De wettelijke routecontrole en blokkade van verboden wegen gaan altijd vóór een eventuele tijdwinst. Praktijktijden vervallen na maximaal 365 dagen.

Een gedeelde routekandidaat rondt begin en einde af tot een raster van ongeveer één kilometer. Alleen maximaal drie noodzakelijke tussenpunten worden op ongeveer tien meter afgerond meegestuurd; er wordt geen GPS-deelspoor, snelheid per punt of tijdlijn naar de server gestuurd. Een routekandidaat wordt eerst op kaartregels gecontroleerd en vervalt na maximaal 90 dagen.

Je kunt delen op ieder moment uitzetten; dit voorkomt nieuwe uploads. Omdat er bewust geen account of blijvende apparaatcode wordt opgeslagen, kan een eerder gedeelde praktijktijd niet betrouwbaar aan jou worden teruggekoppeld om afzonderlijk te verwijderen; ze wordt automatisch opgeschoond en alleen in een groepsmodel uitgelezen.

Bij het opvragen van een groeps-ETA stuurt de app alleen de ondoorzichtige corridorcode en spits/dalcategorie. Cloudflare verwerkt daarbij technisch het IP-adres; ScootKoers bewaart het ruwe IP-adres niet. Een maandelijks wisselende HMAC-code telt het aantal onafhankelijke bijdragers en begrenst misbruik.

Beveiliging van de database

De centrale database is alleen vanuit de serverfunctie bereikbaar via een Cloudflare-binding en staat niet rechtstreeks open op internet. Cloudflare D1 versleutelt databaseobjecten met AES-256-GCM in rust en beveiligt verkeer tussen de serverfunctie en D1 met TLS. De geheime HMAC-sleutel staat als versleuteld Cloudflare-secret en niet in de app of broncode. API-verzoeken worden op herkomst, type, maximale grootte, veldwaarden en frequentie gecontroleerd, per IP-adres en daarnaast voor alle verzoeken samen. Antwoorden met gegevens van of over jou worden niet gecachet.

De server schrijft geen GPS-coördinaten, routes of bestemmingen naar zijn logs. Een snellere-routezoekopdracht verstuurt begin en bestemming in de versleutelde verzoekinhoud en niet in de URL.

Beveiligingslogs

Na een geautomatiseerde spamaanval op 30 september 2026 houdt ScootKoers bij de verzoeken die iets in de database schrijven (meldingen, reacties op een melding, flitsermeldingen, gedeelde ritten en reistijden, Crew-codes en herstelcodes) een beveiligingslog bij. Hetzelfde geldt voor de poorten vóór de routeserver en de zoekserver: een verzoek om een route of zoekopdracht dat die poort weigert (te veel verzoeken, of een verzoek dat een echte app nooit stuurt) wordt met je IP-adres, land en de reden gelogd. Een gewoon, geslaagd verzoek wordt niet met je IP-adres gelogd. De coördinaten van je route en de tekst van je zoekopdracht staan nooit in dit log; van een zoekopdracht wordt alleen de lengte vastgelegd. Daarin staan: je IP-adres, het land waaruit het verzoek komt, het type browser of app (User-Agent), de herkomst van het verzoek (Origin), een technisch verzoeknummer van Cloudflare, wat er met het verzoek gebeurde (bijvoorbeeld geaccepteerd, geweigerd of te vaak), en waar het verzoek over ging: de appversie, of het nummer van de melding, flitsermelding of Crew-code. De inhoud van een melding, je GPS-locatie en je route staan er niet in.

Controle dat de app echt is (Google Play Integrity). In de Android-app vraagt ScootKoers één keer per dag aan Google Play Integrity om te bevestigen dat het de echte, ongewijzigde app is op een echt toestel. Google ontvangt daarvoor technische gegevens over de app en het toestel, volgens het privacybeleid van Google. Onze server ontvangt een versleuteld resultaat dat alleen Google kan lezen, laat dat door Google beoordelen, en geeft de app een eigen controlecode terug die 24 uur geldig is. Die code bevat geen naam, account, toestelnummer of IP-adres en wordt bij routes en zoekopdrachten alleen naar onze eigen servers meegestuurd, nooit naar andere partijen. We gebruiken hem om echte apps ruimer te bedienen dan geautomatiseerd verkeer. Een geslaagde controle wordt niet met je IP-adres opgeslagen; een afgewezen controle wordt met je IP-adres, land en de reden gelogd, net als andere geweigerde verzoeken. Een toestel dat de controle niet haalt, kan de app gewoon blijven gebruiken. Rechtsgrond: gerechtvaardigd belang bij het beschermen van de dienst tegen misbruik.

Deze logs worden gebruikt om misbruik te herkennen en te blokkeren, bijvoorbeeld door een IP-adres in de firewall van Cloudflare te weren. Ze staan in Cloudflare Workers Logs en worden daar automatisch na hooguit 7 dagen verwijderd. Grondslag: gerechtvaardigd belang, namelijk de app en de gegevens van andere gebruikers beschermen tegen misbruik. Je kunt daartegen bezwaar maken via het contactadres onderaan.

Cloudflare D1 houdt automatisch een versleutelde herstelgeschiedenis bij. Een verwijderde of automatisch opgeschoonde rij kan daardoor nog maximaal de voor het Cloudflare-abonnement geldende Time Travel-periode van 7 of 30 dagen herstelbaar zijn. Die herstelgeschiedenis is niet via de app of publieke API leesbaar en wordt niet voor routeberekening gebruikt.

Vrijwillig een routeprobleem delen

Een routeprobleem blijft eerst lokaal. Alleen wanneer je bij die melding bewust op Deel anoniem met beta tikt, worden de getoonde GPS-locatie, OSM-way, appversie en technische routecontext naar de ScootKoers-database bij Cloudflare gestuurd. De bestemming, je naam, e-mailadres en een gebruikersaccount worden niet meegestuurd. Meldingen ouder dan 180 dagen worden bij de periodieke opschoning verwijderd. Grondslag: toestemming, per melding opnieuw gegeven.

Een gedeelde melding wordt ook per e-mail naar de beheerder gestuurd, via de e-maildienst Resend: het soort melding, je notitie, de GPS-locatie van de melding en de appversie. Om te voorkomen dat een spamaanval de mailbox overspoelt, gaan er hooguit een paar van zulke mails per tien minuten uit; de melding zelf staat dan nog steeds in de database.

Om spam te beperken telt de server per IP-adres hoeveel verzoeken er binnenkomen. In de database komt daarvoor niet het IP-adres zelf, maar een korte HMAC-controlesleutel die met een geheime sleutel per tijdvak van tien minuten wordt gemaakt; die limietsleutels worden uiterlijk na twee dagen verwijderd. Het IP-adres zelf staat alleen in de beveiligingslog hierboven. Je kunt een gedeelde melding vanuit Mijn meldingen weer uit de centrale database verwijderen, zolang de lokale verwijdercode nog op je apparaat staat.

Een gesprek over je melding

Heeft de beheerder een vraag over een gedeelde melding, dan zie je die in de app en kun je erop antwoorden. Je antwoord wordt samen met de melding in de database bewaard en per e-mail (via Resend) naar de beheerder gestuurd. Het gesprek is alleen gekoppeld aan het meldingsnummer, niet aan een account, naam of apparaat. Het wordt verwijderd samen met de melding: na 180 dagen, of eerder als je de melding via Mijn meldingen verwijdert. Grondslag: toestemming, gegeven door zelf te antwoorden.

Flitsers en controles melden

In Nederland, België en Denemarken kun je een snelheidscontrole melden en een melding van anderen bevestigen of wegstemmen. Daarvoor bewaart ScootKoers alleen de plek van de controle, het land en het aantal bevestigingen en stemmen tegen, zonder koppeling aan jou. Andere gebruikers zien de melding op de kaart. Een melding verloopt na 45 minuten zonder bevestiging en wordt een dag na het verlopen verwijderd. Grondslag: toestemming, gegeven door zelf te melden of te stemmen.

Berichten van ScootKoers

De app haalt af en toe op of er een bericht voor alle gebruikers is, bijvoorbeeld over onderhoud of een storing. Daarbij wordt niets over jou meegestuurd. Welke berichten je al gezien hebt, onthoudt de app alleen lokaal op je apparaat.

Accounts, advertenties en tracking

ScootKoers bevat geen gebruikersaccount. De native Android/iOS-app gebruikt geen Google Analytics-SDK. De website en PWA gebruiken Google Analytics alleen nadat je daarvoor via de analyticsvoorkeuren toestemming hebt gegeven. Daarmee worden bezoeken en installatiegebeurtenissen gemeten, zoals het accepteren van de browserprompt en de eerste zelfstandige opening van de geïnstalleerde PWA. Google kan daarbij cookies, een willekeurige clientcode, IP-adres en technische browser- en apparaatgegevens verwerken. ScootKoers stuurt hiervoor geen GPS-locatie, route, bestemming, naam of e-mailadres naar Google. Grondslag: toestemming. Je keuze wordt lokaal in je browser bewaard en kan via Cookievoorkeuren op de website of Analyticsvoorkeuren in de webapp worden gewijzigd. De bewaartermijn van gebeurtenisgegevens volgt de instelling van de Google Analytics-property en de voorwaarden van Google.

Er worden geen locatiegegevens verkocht en er wordt geen persoonlijk routeprofiel voor advertenties gemaakt.

De website en PWA hebben een optionele beloningsfunctie via Google Ad Manager: alleen wanneer je zelf op Kijk een advertentie voor 1 band tikt, wordt een advertentie geopend. Na een volledig bekeken advertentie krijg je in de app 1 band. Er worden geen automatische displayadvertenties of banners geplaatst. Voor bezoekers in de EER, het Verenigd Koninkrijk en Zwitserland wordt vooraf toestemming gevraagd via Google's toestemmingsplatform. Google en eventuele advertentiepartners kunnen daarbij cookies, lokale opslag, IP-adressen en browser- of apparaatgegevens verwerken voor advertentieweergave, beveiliging, meting en rapportage. ScootKoers stuurt hiervoor geen GPS-locatie, route of bestemming naar Google. Grondslag: toestemming via het Google-privacybericht.

De native Android/iOS-app biedt dezelfde vrijwillige beloningsfunctie via Google AdMob. Ook daar worden advertenties nooit automatisch getoond en wordt een band pas toegekend nadat Google bevestigt dat de advertentie volledig is bekeken. Voorafgaand wordt toestemming gevraagd via Google's toestemmingsplatform; zonder toestemming toont de app geen advertentie.

ScootKoers Crew (uitnodigingscode)

ScootKoers Crew is een optioneel programma om vrienden uit te nodigen. De app maakt daarvoor lokaal op je apparaat een willekeurige code van 8 tekens aan; deze code bevat geen persoonsgegevens en is niet aan een account of apparaat-ID gekoppeld. Als je de code deelt (bijvoorbeeld via WhatsApp) en kiest voor Delen via WhatsApp, wordt alleen een kant-en-klaar bericht met die code geopend in de app van je keuze; ScootKoers stuurt zelf niets naar je contacten. Vult iemand anders jouw code in, dan onthoudt de database enkel dat die code is ingevoerd en, na een voltooide eerste rit, dat er één bevestigde vriend bij is. Er wordt geen naam, telefoonnummer, IP-adres of locatie van jou of je vriend bij de code opgeslagen. Grondslag: toestemming, per code-invoer opnieuw gegeven. Codes en het aantal bevestigde vrienden worden bewaard zolang het Crew-programma actief is; je kunt je lokale code en voortgang altijd verwijderen via Lokale appgegevens wissen.

Herstelcode voor voortgang

Je kunt vrijwillig een afzonderlijke geheime herstelcode van 16 tekens maken. Daarmee bewaart ScootKoers in Cloudflare D1 een kopie van je banden, aantal bekeken beloningsadvertenties, ontgrendelde kaarticonen, avatar- en voertuigkleuren en Crew-voortgang. Ritgeschiedenis, geleerde routes, je huidige locatie, naam en e-mailadres worden niet in deze kopie opgenomen. Je thuis- en werkadres en je opgeslagen plaatsen gaan alleen mee als je dat aan laat staan (bij een nieuwe herstelcode staat het standaard aan, bij een bestaande code uit). Die gegevens worden op je eigen apparaat versleuteld (AES-GCM, met een sleutel die uit je herstelcode wordt afgeleid) voordat ze worden verstuurd. ScootKoers bewaart alleen het versleutelde pakket en kan de adressen niet lezen; zonder je herstelcode zijn ze onleesbaar. Zet je de schakelaar uit, dan wordt de volgende cloudkopie zonder plaatsen opgeslagen en vervangt die de vorige. De openbare Crew-uitnodigingscode is niet je herstelcode.

De herstelcode werkt als een geheime sleutel: iedereen die de volledige code kent, kan de bijbehorende voortgang op een ander apparaat herstellen of de cloudkopie verwijderen. Bewaar de code daarom privé. De database bewaart niet de leesbare herstelcode maar alleen een HMAC-afdruk met een servergeheim. De kopie wordt bijgewerkt nadat je voortgang verandert en blijft bestaan totdat je in de app kiest voor Cloudkopie verwijderen of het herstelprogramma wordt beëindigd. Grondslag: toestemming, gegeven wanneer je zelf een herstelcode maakt.

Bewaartermijnen

Jouw rechten

Je hebt recht op inzage, rectificatie, verwijdering en beperking van je persoonsgegevens, en op bezwaar tegen verwerking op basis van gerechtvaardigd belang. Stuur voor het uitoefenen van deze rechten een e-mail naar het adres bij Verwerkingsverantwoordelijke. Omdat de meeste gegevens bewust anoniem worden verzameld (geen account, geen apparaat-ID), kan een individuele bijdrage aan het gezamenlijke reistijdmodel niet altijd één-op-één aan jou worden gekoppeld; lokale gegevens verwijder je rechtstreeks via Lokale appgegevens wissen in de instellingen.

Je hebt daarnaast het recht om een klacht in te dienen bij de Autoriteit Persoonsgegevens (autoriteitpersoonsgegevens.nl).

Verwijderen

Je kunt lokale appgegevens verwijderen in de instellingen van ScootKoers of via de opslaginstellingen van je browser of Android-toestel. Verwijder vrijwillig gedeelde meldingen bij voorkeur eerst via Mijn meldingen en een voortgangskopie via Cloudkopie verwijderen; na het wissen van lokale opslag raken de bijbehorende geheime codes verloren. De app heeft geen gebruikersaccount, dus er is ook geen serveraccount om te verwijderen.

Gebruikte 3D-modellen

Het avatar-dashboard gebruikt drie gratis 3D-modellen onder de Creative Commons Attribution-licentie (CC-BY), aangepast (ingekort tot één voertuig, gecomprimeerd) voor gebruik in de app:

Wijzigingen in dit beleid

Wanneer de gebruikte diensten, dataverwerking of functies van de app wijzigen, wordt deze privacyverklaring bijgewerkt en verandert de datum bovenaan.

Contact

Vragen over deze privacyverklaring of over je gegevens kun je sturen naar [email protected].