Spring naar de inhoud

Cookieverklaring

Schaduwplan gebruikt geen trackingcookies.

Een korte, eerlijke uitleg. We zetten geen cookies, bouwen geen advertentie-profielen en delen niets met derden voor marketing. Op publieke pagina's gebruiken we ook geen persistente analytics-identifier. Op het ingelogde gedeelte (na inloggen op /app) gebruiken we PostHog (EU) voor productanalytics — daarover hieronder onder localStorage meer. De viewer gebruikt daarnaast functionele opslag in je eigen browser om je werk tussen sessies te bewaren — die zetten we hieronder per sleutel op een rij.

Laatst bijgewerkt: 28 april 2026

In het kort

Schaduwplan plaatst geen cookies op je apparaat. We gebruiken geen Google Analytics, geen Meta Pixel, geen advertentie-netwerken en geen social-trackers. Je hoeft geen cookie-banner weg te klikken.

Voor productanalytics op het ingelogde gedeelte van de app (na inloggen op /app) gebruiken we PostHog (EU) in cookieloze modus. PostHog bewaart een eigen identifier in localStorage (geen cookie); details onder "localStorage" hieronder. Voor error-monitoring gebruiken we Sentry (EU) — die plaatst geen cookies en geen localStorage. Op publieke pagina's wordt PostHog cookieloos en zonder persistente identifier gestart, dus daar ook geen lokale opslag voor analytics.

Wat we wél doen: functionele lokale opslag in jouw browser, zodat de viewer je werk onthoudt tussen pagina-overgangen en sessies. We onderscheiden drie opslag-mechanismen — sessionStorage, localStorage en IndexedDB. Geen daarvan is een cookie en geen daarvan wordt gedeeld met derden. We sturen er ook niets van naar onze eigen servers.

Volgens artikel 11.7a Telecommunicatiewet (de Nederlandse cookiewet) valt dit alles onder "strikt noodzakelijke" opslag waar geen toestemming voor nodig is. Voor de volledigheid en transparantie zetten we hieronder elke gebruikte sleutel op een rij.

Wat we niet doen

  • Geen analytics-cookies van derden (Google Analytics, Plausible, Matomo, Cloudflare Web Analytics). PostHog gebruiken we op het ingelogde gedeelte, maar zonder cookies — alleen localStorage.
  • Geen marketing- of advertentiecookies.
  • Geen sociale-media-pixels (Meta, LinkedIn, TikTok, X).
  • Geen cross-site tracking-cookies.
  • Geen fingerprinting op browser- of hardwareniveau.
  • Geen A/B-testing of conversion-tracking tools met eigen cookies.
  • Sentry (error-monitoring) gebruikt geen cookies en geen localStorage in onze configuratie. Session-replay staat uit; IP-verzameling staat uit.

Dit is een actieve keuze. Veel websites gebruiken deze tools om gedrag te begrijpen. Wij vinden dat voor een tool die open overheidsdata visualiseert overbodig is.

Wat we wel (functioneel) gebruiken

Hieronder per opslag-mechanisme welke sleutels Schaduwplan gebruikt, waarom, en hoe lang ze blijven staan. Alles is first-party (alleen op schaduwplan.nl in jouw browser) en blijft op jouw apparaat — wij hebben geen toegang tot deze data zonder dat jij ze actief naar ons stuurt.

sessionStorage (sessieduur)

sessionStoragewordt automatisch gewist zodra je het browsertabblad sluit. We gebruiken het voor korte handovers tussen pagina's:

  • schaduwplan:pendingAddressId — PDOK-id van het adres dat je op de landingspagina hebt gekozen, zodat /app het meteen kan laden zonder URL-parameters.
  • schaduwplan:pendingAddressFull — het volledige adres-object (straat, postcode, RD-coördinaten) bij dezelfde handover, zodat de viewer geen tweede PDOK-call hoeft te doen.
  • schaduwplan:mobile-gate-dismissed — onthoudt binnen één sessie dat je de mobiel-melding hebt weggeklikt, zodat je hem niet bij elke route-overgang opnieuw ziet.

localStorage (blijft tot jij hem wist)

localStorage blijft staan totdat jij hem wist via de viewer of via je browser-instellingen. We gebruiken hem voor dingen die je tussen sessies wil terugvinden:

  • schaduwplan:recent-addresses — maximaal 6 recent gebruikte adressen (straat, huisnummer, postcode, woonplaats, RD/WGS84-coördinaten, BAG-id), zodat de adresbalk een "recent"-lijst kan tonen. Je kunt deze lijst leegmaken via de adresbalk of door je browser-data voor schaduwplan.nl te wissen.
  • schaduwplan:account-waitlist — als je via de "Inloggen / accounts komen eraan"-popover je e-mailadres achterlaat, bewaren we dat lokaal. We sturen het niet naar onze server. Zodra echte accounts live gaan, vragen we je opnieuw expliciet of je je e-mail wil indienen.
  • schaduwplan:attestation:<sha256> + schaduwplan:attestation:_index — alleen als je in "Brondata aanpassen" een PDF of foto van een vergunning of bouwtekening uploadt om een handmatige hoogtecorrectie te onderbouwen. Het bestand zelf wordt base64-gecodeerd lokaal opgeslagen (maximaal 5 MB totaal), samen met een SHA-256-hash voor referentie. Wis losse bijlagen via de knop "Verwijder bijlage" in dat formulier.
  • ph_phc_*_posthog (PostHog-sleutel met variabel suffix) — alleen na inloggen op /app. Bevat een willekeurig gegenereerd, met je account-id gekoppeld distinct_id voor productanalytics. Op publieke pagina's wordt PostHog cookieloos en zonder persistente identifier gestart, dus buiten /app staat deze sleutel niet in je localStorage. Wis hem via je browser-instellingen → privacy → site-data voor schaduwplan.nl wissen, of door uit te loggen.

IndexedDB (blijft tot jij hem wist)

IndexedDB is de structurele database in je browser. We gebruiken één database, genaamd schaduwplan, met één store:

  • projects — alle scenario's die je via Projecten → Opslaan expliciet bewaart. Bevat het adres, geplande gebouwen, meetpunten, het gekozen tijdstip en de 3DBAG-versie waarop het project gemaakt is. Eventuele afgeleide hoogtes uit een GeoTIFF-upload zitten als meetwaarde mee in het opgeslagen project — het ruwe GeoTIFF-bestand zelf bewaren we nooit ("extract-and-discard"). Verwijder een project via de Projecten-lijst in de viewer.

Ook deze data verlaat je apparaat niet. Je kunt de hele database wissen via je browser-instellingen → privacy → site-data voor schaduwplan.nl wissen.

Externe verbindingen (geen cookies)

De 3D-viewer maakt verbindingen naar externe diensten om data op te halen. Deze dienstverleners plaatsen via ons geen cookies in jouw browser:

  • PDOK (Kadaster) — voor adres-autocomplete en BAG-pand-resolutie. Overheidsdienst, rechtstreeks vanuit je browser.
  • 3DBAG API (TU Delft + 3DGI) — voor 3D-gebouwmodellen. We routeren deze calls via onze eigen Cloudflare Pages-functie op /api/bag3d/* (24 uur edge-cache, omdat 3DBAG geen CORS-headers stuurt). Cloudflare logt standaard hostingmetadata zoals IP en tijdstip; geen cookies.
  • PDOK (AHN4) — voor hoogtedata, rechtstreeks vanuit je browser.
  • Ellipsis Drive (AHN5/AHN6) — voor recentere hoogtedata, rechtstreeks vanuit je browser. Door AHN aangewezen distributiepartner — zie ahn.nl/dataroom.
  • Cloudflare Pages — onze hosting; serveert HTML/CSS/JS en de 3DBAG-cache vanuit EU-edges. Plaatst geen tracking-cookies in onze configuratie.
  • Lettertypen — Fraunces, Inter Tight en JetBrains Mono komen via @fontsource rechtstreeks uit onze build mee. Er gaat geen runtime-request naar Google Fonts of een andere CDN.
  • Sentry (eu.sentry.io / Frankfurt) — voor error-monitoring. De Sentry-client in je browser stuurt bij fouten een payload met stacktrace, browser- en runtime-context. Plaatst geen cookies en geen localStorage in onze configuratie. IP-adressen worden niet meegestuurd (sendDefaultPii: false); session-replay staat uit.
  • PostHog (eu.posthog.com / Frankfurt)— voor productanalytics op het ingelogde gedeelte van de app. Op publieke pagina's cookieloos en zonder persistente identifier; geen opslag op schaduwplan.nl. Na inloggen op /app bewaart PostHog een distinct_id-token in localStorage (zie boven onder localStorage), zonder cookies.

Stripe (betaalverwerking) plaatst eigen cookies op het Stripe-domein (niet op schaduwplan.nl) en alleen op de Stripe-checkoutpagina; daarvoor gelden de Stripe-cookieverklaring en -privacyverklaring.

Je voorkeuren wijzigen

Omdat we geen optionele cookies of trackers hebben, is er niets om te weigeren of in te stellen. Wil je toch alle lokale opslag van Schaduwplan wissen? Dat kan op meerdere manieren:

  • Per onderdeel binnen de viewer: gebruik de knoppen voor "Wis recente adressen" in de adresbalk, "Verwijder bijlage" in het Brondata-formulier, en "Verwijder project" in de Projecten-lijst.
  • Alles in één klap: ga naar je browser-instellingen → Privacy → site-data wissen voor schaduwplan.nl. Dat verwijdert sessionStorage, localStorage en de IndexedDB in één keer.
  • Privé-venster: open Schaduwplan in een privé-/incognito-tabblad — dan bewaart je browser na het sluiten niets.

Contact

Vragen over deze cookieverklaring of je privacy bij Schaduwplan? Mail hello@schaduwplan.nl. Voor de bredere context, zie de privacyverklaring.