Spring til indhold

Find de cookies, scannere overser

For danske websiteejere og bureauer: Privaci åbner dit website i en rigtig browser og læser browserens cookie-jar, så du får HTTP-only cookies, CNAME-cloaking og fingerprinting med. Det kan et JavaScript-baseret værktøj ikke.

  • Ingen kreditkort
  • Opsætning på under 2 minutter
  • Ingen binding

Scannet én gang. Intet banner blev vist, og der blev ikke klikket.

Kørsel 14.03.2026 kl. 09.14 shop.eksempel.dk klik: 0

Sådan ser en scanning ud Eksempel på en scanning. Cookie-navne og trackere varierer fra site til site. Undtaget betyder, at kategorien ikke kræver samtykke.
Fund Observeret
_ga Google Analytics google-analytics.com Fyret før samtykke
_fbp Meta Pixel connect.facebook.net Fyret før samtykke
canvas-fp Fingerprinting Canvas + WebGL Kørt før samtykke
PHPSESSID Nødvendig session shop.eksempel.dk Undtaget

Scan-id 2026-03-14-1 3 fund 1 undtagne

Konklusion positivt bevis

Alt i denne kørsel blev observeret, før nogen blev spurgt, fordi der aldrig blev spurgt. Det er positivt bevis, ikke en slutning fra fraværet af et banner.

  • Bygget i Danmark Udviklet og drevet af bon.do ApS
  • Drift og data i EU Ingen overførsel til tredjelande
  • Gratis op til 50 sider Uden kreditkort og uden tidsgrænse
  • Pro fra 30 kr./md. Prisen følger sidetal, ikke funktioner. Ekskl. moms.

Det du ikke kan se, kan du ikke dokumentere

Et cookie-banner kan kun blokere det, det kender. Og en samtykke-log mangler halvdelen af historien, hvis scanneren ikke kan se hele siden.

HTTP-only cookies

Serveren sætter dem via Set-Cookie og markerer dem HttpOnly. Så kan JavaScript ikke læse dem.

Det er hele pointen med flaget, og derfor kan et værktøj, der læser cookies gennem JavaScript, heller ikke se dem. Cookiebot beskriver det selv som en begrænsning i deres scanner. Juridisk er konsekvensen, at en cookie, du ikke har registreret, heller ikke kan indgå i den samtykkevurdering, du skal kunne dokumentere.

CNAME-cloaking

Trackeren svarer på dit eget subdomæne, for eksempel metrics.ditdomæne.dk, via en DNS-record.

I browseren ser trafikken first-party ud. I cookie-politikken står den ikke. Uden en DNS-opslagning er den usynlig for både besøgende og de fleste scannere. Oplysningspligten efter GDPR artikel 13 og 14 gælder uanset, hvordan trackeren er pakket ind.

Browser fingerprinting

Canvas, WebGL og AudioContext kan identificere en besøgende uden at sætte en enkelt cookie.

ePrivacy-direktivets artikel 5(3) handler om at lagre oplysninger på udstyr, ikke om cookies. Fingerprinting kræver derfor samtykke, selvom der intet står i cookie-listen.

Konklusion tilsynsplan 2026

Konsekvensen er ikke teknisk. Den er juridisk.

Datatilsynet gjorde i sin tilsynsplan for 2026 behandling af cookies på websites til et prioriteret område og kigger særligt på, om besøgende får en reel mulighed for at afvise. Et banner, der ikke ved hvad der kører på siden, kan ikke give den mulighed, og en log der mangler de trackere, du ikke kunne se, er ikke dokumentation.

Én kørsel. Ingen samtykke-klik.

Vi åbner siden én gang, som en besøgende der aldrig blev spurgt. Alt scanningen ser, er derfor observeret før et samtykke, ikke gættet ud fra, om der findes et banner.

  1. Siden åbnes i en rigtig browser

    Ikke en HTTP-forespørgsel og ikke en crawler. En Chromium-instans der kører JavaScript, henter tags, scroller i trin for at vække lazy-loadere og lader siden opføre sig som hos en besøgende.

  2. Cookie-jar og storage læses direkte

    Vi læser browserens egen cookie-jar, ikke document.cookie. Det er den eneste måde at få HTTP-only cookies med, og det fanger også localStorage, sessionStorage og skrivninger, der bliver ryddet op igen, før nogen kunne se dem.

  3. Alt stemples præ-samtykke ved konstruktion

    Der er ingen tilstand at stemple forkert, fordi der kun er én. Hvert fund bærer den fase, den ene kørsel havde, og et samtykke kan ikke bagefter gøre en tracker lovlig, der allerede har kørt.

Der findes ingen accept-knap og ingen kørsel efter et samtykke. Scanningens eneste tilstand er en besøgende, der aldrig blev spurgt.

Hvornår trackerne fyrer i forhold til et samtykke

En tidslinje over de første 800 millisekunder af en sideindlæsning. Fire markører viser hvornår to tracker-requests, en undtaget cookie og et fingerprinting-signal blev observeret. Båndet spænder over hele vinduet, fordi der ikke blev givet samtykke på noget tidspunkt i kørslen.

Intet samtykke blev givet i denne kørsel

  1. __cf_bm undtaget 90 ms
  2. _ga tracker 180 ms
  3. _fbp tracker 240 ms
  4. canvas-fp signal 620 ms
  5. scanningen afslutter 1500 ms

Målt: vinduet er de første 800 ms efter navigation. Hvert mærke er en hændelse, browseren selv rapporterede i den kørsel. Scanningen faldt til ro efter 1.500 ms.

Eksempel. Cookie-navne og tidspunkter varierer fra site til site.

Fig 0.5 To trackere, en undtaget cookie og et signal, alle inden for det første sekund

Et bevis, ikke et resume

En JavaScript-baseret scanner læser document.cookie. Vi læser browserens egen cookie-jar. På samme kørsel kan de to lister stilles op mod hinanden: hvad scriptet kunne se, mod hvad browseren faktisk havde. Forskellen er de cookies, der aldrig ville være kommet med i din erklæring.

document.cookie
6
cookie-jar
9
consent-klik
0

Hvad du får: funktioner og planer

Rækkefølgen er køberens, ikke ingeniørens. Det øverste er det, der holder dig ude af problemer.

Alle planer

Trackere holdes tilbage, før de hentes

Snippet’en parkerer tracker-scripts, iframes og pixels i markup’en og frigiver dem først, når den besøgende har sagt ja. Forespørgslen forlader aldrig browseren i mellemtiden. Det er ikke en rapport bagefter.

Alle planer

Dom pr. side og samtykke-log

Hver side får en dom, og hver samtykkehandling bliver logget med tidspunkt, besøgs-ID og valgte kategorier. Vi gemmer hverken IP-adresse eller user-agent, så loggen er dokumentation uden at være endnu et personoplysningsproblem.

Alle planer

De tre blinde pletter, rapporteret

HTTP-only cookies, CNAME-cloaking og fingerprinting kommer med i resultatet som selvstændige fund. Problemet ovenfor forklarer hvorfor; her er pointen, at de er med, og at hvert af dem har sin egen hjemmel.

Alle planer

Google Consent Mode v2

Alle fire signaler (ad_storage, analytics_storage, ad_user_data og ad_personalization) mappes fra de kategorier, den besøgende faktisk valgte. Ikke fra en fast antagelse.

Kræver Pro

Banner i jeres eget udtryk

Farve, placering, logo og tekst. Accept og afvis er låst til samme størrelse og vægt i koden, så ingen opsætning kan ende med at være et dark pattern.

Kræver Pro

Adgang til hele teamet

Inviter kolleger eller kunder pr. site med læse- eller redigeringsadgang. Bureauer kan administrere flere sites uden at dele en login.

Det her er den rigtige snippet, ikke en efterligning. Skift mellem Free og Pro for at se, hvad Pro tilføjer.

Læg mærke til

  • Afvis alle og Accepter alle er lige store og lige tydelige. Det er et krav fra Datatilsynet, ikke et designvalg.
  • Tilpas åbner præferencecentret, hvor hver enkelt cookie kan slås fra.
  • Sprogvælgeren i banneret skifter bannerets sprog, ikke sidens.
  • Der bliver ikke gemt noget. Demoen kører i en sandkasse uden adgang til din browser.

Sammenlign

Rækkerne er skrevet ud fra leverandørernes egne offentlige oplysninger. Kan vi ikke finde belæg for en påstand om en konkurrent, står der «ikke oplyst». Vi skriver aldrig, at en anden ikke kan noget, vi ikke kan dokumentere.

Sammenlign
Egenskab Privaci Cookiebot Cookie Information
HTTP-only cookies Cookies serveren sætter, som JavaScript ikke kan læse Ja Deres egen dokumentation beskriver begrænsningen Ikke oplyst
Browser fingerprinting Canvas, WebGL, AudioContext og OffscreenCanvas: et selvstændigt fund, ikke en fodnote Ja Ikke oplyst Ikke oplyst
localStorage, sessionStorage og IndexedDB Læst i samme kørsel som cookie-jar’en, også når nøglen ryddes op igen Ja Ikke oplyst Ikke oplyst
CNAME-cloaking DNS-kæden følges for hvert tredjeparts-hostnavn, per side Ja Ikke oplyst Ikke oplyst
Bevis for hvornår et tag kørte Hvert fund er stemplet præ-samtykke, fordi kørslen aldrig klikker accepter Ja Ikke oplyst Ikke oplyst
Blokering ud over scripts Afvises før de forlader browseren: fetch, XHR, beacons, storage og service workers Ja Ikke oplyst Ikke oplyst
Blokeret eller kørt Et stoppet tag rapporteres som stoppet, med sin egen tilstand Ja Ikke oplyst Ikke oplyst
Trackere ingen blokering kan nå Flagges med en konkret rettelse, fx en modul-import Ja Ikke oplyst Ikke oplyst
Samtykke-log Ingen IP-adresse, ingen user-agent. Politik-hash, sprog og version Ja Ikke oplyst Ikke oplyst
Afvis og Accepter er lige store Låst i koden, så et tema ikke kan bygge et dark pattern Låst i koden Konfigurerbart Ikke oplyst
Scanner og blokering på Free Med fra første scanning, uden funktionsgate Ja Ja, på Free (1 domæne, op til 50 undersider) Ingen Free-plan, kun 14 dages prøve
Pris for et site med 50 sider Offentliggjorte prislister, ekskl. moms. Tjekket 22.09.2026 fra 0 kr./md. 0 kr./md. på Free, ellers fra ca. 52 kr./md. Fra ca. 146 kr./md.

Cookiebot og Cookie Information er gengivet efter deres egne offentligt tilgængelige oplysninger og prislister, tjekket 22.09.2026. Beløb i euro er omregnet til kroner, og de skal bekræftes i en konkret aftale, før du regner med dem. Alle Privaci-beløb er uden moms.

Prisen følger sidetal, ikke funktioner

Der er ét betalt produkt: Pro. Du betaler for hvor mange sider, sitet har, og alle Pro-trin indeholder de samme funktioner. Et site med 12 sider skal ikke betale for en med 5.000.

sider

Find tallet i dit CMS’ sitemap. Et gæt er nok. Trinnet flytter sig selv, når vi har scannet.

  1. Pro Starter ≤ 50 sider 30 kr./md.
  2. Pro Business 51–350 sider 80 kr./md.
  3. Pro Scale 351–500 sider 180 kr./md.
  4. Pro Enterprise 501+ sider 275 kr./md.

ikke målfast · ekskl. moms

Med i alle Pro-trin

  • Egen farve, logo og placering på banneret
  • Slå enkelte cookies til og fra
  • Consent Mode v2

Free ≤ 50 sider Samtykke på kategoriniveau · 1 scanning om måneden · Support via fællesskabet

Privaci · månedlig scanning

Gratis · op til 50 sider · uden eget brand prøve

Pro Starter ≤ 50 sider

30 kr./md. · ekskl. moms

324 kr./år · du sparer 36 kr. mod månedlig betaling

Trinnet flytter sig selv

Vi rykker dig op ved første scanning over grænsen og ned igen efter to scanninger under. Flytningen prorates fra den dag, antallet krydser grænsen. Du får en mail 30 dage før en opjustering, og der er ingen binding.

Vælg Pro

I produktion tæller vi selv dit sitemap, så du ikke skal slå det op.

Se alle trin

Målt: en side er en URL, vi faktisk henter og scanner. Redirects tælles på målet, query-parametre og dubletter tælles én gang, og subdomæner tælles med i samme site.

Trin Sider kr./md. kr./år kr. pr. side
Pro Starter ≤ 50 sider 30 324 0,60
Pro Business 51–350 sider 80 864 0,23
Pro Scale 351–500 sider 180 1.944 0,36
Pro Enterprise 501+ sider 275 2.970 0,28

Alle beløb er i danske kroner og uden moms. Free har ingen tidsgrænse og kræver ikke et betalingskort.

Det kører i produktion i dag

Hver linje er en funktion, der er i drift, med den grænse vi selv kender. Vi skriver grænsen med, fordi en funktion uden sin begrænsning er en påstand og ikke et faktum.

Listen er ikke en plan. Alt herunder er bygget og i brug på privaci.io selv, og hvert punkt kan efterprøves i produktet.

11 funktioner i drift

Status pr. september 2026

  1. 01 Browserscanning Playwright-crawl der kører JavaScript som en rigtig besøgende
  2. 02 HTTP-only cookies Læst fra browserens cookie-jar, ikke fra document.cookie
  3. 03 CNAME-cloaking DNS-kæden bag hvert tredjeparts-hostnavn, per side
  4. 04 Fingerprinting Canvas, WebGL, AudioContext og OffscreenCanvas
  5. 05 Pre-consent blokering 148 tracker-domæner indbygget, plus sitespecifikke regler
  6. 06 Google Consent Mode v2 Alle fire signaler mappet, uden planbegrænsning
  7. 07 Cookie-erklæring Genereret fra scanningen og hostet på dit eget domæne
  8. 08 Månedlig scanningskadence Sitet scanner sig selv hver måned, med backoff hvis en scanning fejler
  9. 09 Samtykke-log Tidsstempler og pseudonymt id, uden IP-adresse og user-agent
  10. 10 Teamadgang Invitationer med læse- eller redigeringsret
  11. 11 WordPress-plugin Installerer snippet og erklæring fra wp-admin. Endnu ikke på wordpress.org

Ofte stillede spørgsmål

Er Privaci et fuldt alternativ til Cookiebot?

Til de fleste danske websites, ja, og på detektion er vi længere fremme, fordi vi finder HTTP-only cookies, CNAME-cloaking og fingerprinting. Men hvis dit site er annoncefinansieret og har brug for IAB TCF 2.2, eller hvis du vil have en automatisk genereret cookie-erklæring, så kan vi ikke løse det i dag. Vi skriver det hellere direkte end at lade dig opdage det.

Hvad koster det?

Gratis op til 50 sider, uden tidsgrænse og uden betalingskort. Derover er der ét Pro-abonnement, hvor prisen følger sidetallet: 30 kr./md. op til 50 sider, 80 kr./md. op til 350, 180 kr./md. op til 500 og 275 kr./md. derover. Alle Pro-trin indeholder de samme funktioner. Betaler du årligt, får du 10 % rabat. Alle beløb er uden moms.

Hvordan adskiller en browserscanning sig fra en almindelig cookie-scanner?

En almindelig scanner henter sidens HTML og leder efter cookie-navne i koden. Den ser ikke cookies, der sættes via JavaScript eller i et AJAX-kald, og den ser slet ikke HTTP-only cookies. Vi åbner siden i en Chromium-browser, lader den køre færdig og læser derefter browserens egen cookie-jar, den samme liste, du ser i udviklerværktøjer under Application.

Blokerer Privaci trackere, eller rapporterer det bare?

Begge. Snippet’en parkerer tracker-tags, før browseren henter dem, og frigiver dem først efter et samtykke. Det er ikke en efterfølgende rapport. Reglerne kommer fra den seneste scanning af dit site, suppleret med 148 tracker-domæner, der er indbygget i snippet’en og virker fra første dag.

Gemmer I personoplysninger om vores besøgende?

Vi gemmer ikke IP-adresse og ikke user-agent. Samtykke-loggen indeholder et pseudonymt besøgs-ID, tidspunktet og hvilke kategorier der blev valgt. Det er nok til at dokumentere over for en tilsynsmyndighed, uden at loggen selv bliver endnu et register over identificerbare personer.

Hvor lang tid tager opsætningen?

Under to minutter. Du opretter et site, bekræfter ejerskabet med en DNS-post eller et meta-tag, og indsætter ét script-tag. Du får en gratis prøvescanning, allerede før du har bekræftet ejerskabet, så du kan se resultatet før du beslutter dig.

Hvem står bag Privaci?

Privaci udvikles og drives af bon.do ApS, et dansk softwarehus i Svendborg med CVR 43473425. Produktet er bygget til det danske og nordiske marked, og al drift og alle data ligger i EU.

Kan jeg opsige, når jeg vil?

Ja. Der er ingen binding, og du opsiger selv i kundeportalen. Abonnementet løber til udgangen af den betalte periode og falder derefter tilbage til Free. Dine data og din log bliver ikke slettet.

Se hvad der kører på dit website, før du beslutter dig

Opret en konto og kør en gratis prøvescanning. Du får listen over fund og en dom pr. side, og du behøver ikke at bekræfte ejerskabet eller indtaste et kort for at komme dertil.

  • Gratis op til 50 sider
  • Ingen kreditkort
  • Ingen binding

Bygget af bon.do

Privaci er udviklet og drives af bon.do ApS, et dansk softwarehus i Svendborg, der bygger software til regulerede miljøer. Vi bygger ikke generiske SaaS-produkter: hvert produkt løser et afgrænset problem for en afgrænset gruppe, og det gælder også dette.