A telecom operator's website — a single capture of a product page, 234 requests, 9 nodes, about three seconds. The audit is clean: Elisa has its own consent management module, and the advertising-and-analytics stack declared in its cookie declaration — Google Analytics, Microsoft Clarity, Meta, AdForm, VWO and others — does not fire once in this capture. Of the external requests, only functional ones remain: Google Fonts, Google's client library and a single thumbnail of an embedded YouTube video, all sending the IP address to Google. The security headers are set. No violations are recorded; the only soft caveat is that functional embeds contact Google before the consent choice.
Request timeline
Declared versus actual
Transfer timings
Google client library (gapi).
GTM-TKQ57SKW, GTM-59BK54P. No downstream requests.
Open Sans web font from Google's CDN.
Embedded-video thumbnail; the youtube.com player is not loaded.
Detected trackers
- Elisa's own consent module (www.elisa.ee/modules/custom/elisa_cookie/…/elisaConsent.js) — the first-party consent management platform
- Google Tag Manager (www.googletagmanager.com, containers GTM-TKQ57SKW and GTM-59BK54P) — loads, but not a single downstream tag fires in this capture
- Google Fonts (fonts.googleapis.com, fonts.gstatic.com) — web fonts, the IP address goes to Google
- Google API client / gapi (apis.google.com) — Google's client library, functional
- YouTube (img.youtube.com) — a single thumbnail of an embedded video on the product page, the IP address goes to Google
- First party: annika.elisa.ee (the 'Annika' chatbot), sso.elisa.ee (login), pilt.elisa.ee (images) — Elisa's functional components
- Declared but not fired stack: Google Analytics, Microsoft Clarity, Meta/Facebook, AdForm, VWO, Reddit, Optinmonster, Leadfeeder — disclosed in the cookie declaration by consent category, but with no requests to them in this capture
Context
elisa.ee is the website of the telecom operator Elisa. The controller is Elisa Eesti AS, part of the Elisa group; the processing principles are drawn up under Regulation (EU) 2016/679. Consent is handled by Elisa’s own module (elisa_cookie / elisaConsent.js) rather than a third-party platform. The site keeps a good header posture: Content-Security-Policy (frame-ancestors), HSTS with preload, X-Frame-Options SAMEORIGIN, X-Content-Type-Options nosniff.
The capture is a single recording of a product page (a robot vacuum for business clients): 234 requests, 9 nodes, about three seconds, recorded on 7 September 2026. Processing is described by Elisa’s personal-data-processing principles and a detailed cookie-use policy.
Who receives data directly
Google — functionally only: web fonts (Google Fonts), the gapi client library, and a single thumbnail of an embedded YouTube video. Everything else is first party (the ‘Annika’ chatbot, login, images). There are no analytics or advertising recipients in this capture.
Declared vs. actual
Here the declared and the actual line up — and, rarely for this project, in the direction where the actual is cleaner than the declared.
Elisa’s cookie declaration is detailed and honest: it lists the entire advertising-and-analytics stack by name and by consent category. Under statistics — Google Analytics and Microsoft Clarity (the latter described plainly as collecting navigation and behaviour data, building heatmaps and recording ‘rage clicks’). Under marketing — Meta/Facebook, AdForm, VWO, Reddit, Optinmonster, Leadfeeder. The third-party providers are named as a list: Microsoft, Meta, Google, YouTube, Reddit, AdForm, VWO, Optinmonster, Leadfeeder.
In fact, in this capture none of them fired. Across 234 requests there is no request to google-analytics.com, to Microsoft Clarity nodes, to Meta, to AdForm or to any other recipient from that list. Two Google Tag Manager containers load, but not a single downstream request to analytics or advertising follows them — the tags remain unfired. This is the behaviour expected in the absence of consent for statistics and marketing: Elisa’s own consent module held the entire declared stack.
There remains a thin point, not raised to the level of a violation: functional external resources contact Google before any consent choice. The Open Sans web font is pulled from Google’s CDN (fonts.gstatic.com), the gapi client library from apis.google.com, and the embedded-video thumbnail from img.youtube.com. Each of these requests carries the visitor’s IP address to Google. This is a common practice for fonts and media embeds and is not advertising-and-analytics tracking; it is noted as a caveat, not as a discrepancy.
Consent: what is proven and what is not
Proven: the declared advertising-and-analytics stack did not fire in this capture. No request to Google Analytics, Microsoft Clarity, Meta, AdForm or any other recipient from the cookie declaration is recorded across 234 requests. The Google Tag Manager containers load but launch no downstream tags.
Proven: the consent platform is Elisa’s own and first-party. The elisaConsent.js module from modules/custom/elisa_cookie is loaded on the page; there is no third-party CMP (OneTrust, Cookiebot, CookieYes or similar) in the recording.
Not proven, and not required: the exact consent state. Since no tag with a consent signal (such as GA4’s gcs) fired, there is no machine flag of ‘given/refused’ in the recording. What matters is that the declared stack did not in fact make any outward request; the conclusion rests on that, not on a reconstruction of the consent state.
Observation boundaries
The capture covers one page — a product card — and records browser behaviour, not the services’ internal workings: the configuration of the Google Tag Manager containers, server-side processing and contracts with recipients are not verified by a browser-level capture. Script bodies (including the GTM container contents) are redacted in the published file, so which tags are configured in them is not established from the recording — only the fact that the downstream requests to analytics and advertising did not occur is recorded. The first-party components annika.elisa.ee (chatbot), sso.elisa.ee (login) and pilt.elisa.ee (images) are classified as Elisa’s functional delivery.
The file is published redacted of personal data: cookie values in requests have been removed. Response headers and the load order are preserved, so the composition of the requests and the initiators are verified directly against the published file.
The legal assessment is made by the competent authority — Andmekaitse Inspektsioon.
Conclusion
The audit is clean. The telecom operator runs its own consent management module, discloses its entire advertising-and-analytics stack in detail and by name in the cookie declaration — Google Analytics, Microsoft Clarity, Meta, AdForm and others — and launches none of it in this capture: the Google Tag Manager containers load, but the downstream tags do not fire. The security headers are set. The declared lines up with the actual, and the actual turns out to be cleaner — the trackers are held.
The only caveat is that functional external resources (Google web fonts, the gapi client library, an embedded-video thumbnail from YouTube) contact Google before the consent choice and carry the visitor’s IP address there. This is not advertising tracking and is not recorded as a violation.
Remediation (as hardening, not as a fix for a violation): consider self-hosting the web fonts instead of fonts.gstatic.com, and loading embedded-video thumbnails via a facade placeholder (or the youtube-nocookie domain), so that the visitor’s IP address does not go to Google before the consent choice.
How to verify: download the file and compute its checksum — sha256sum file.har (Linux, macOS) or certutil -hashfile file.har SHA256 (Windows); it must match the one shown. The conclusions apply to the scope of this measurement — see the limitations of the method.
92d709e9e6b6b47cab8325c2d19042bf7663d2c489d2bd772276fd32e514cf09Want a response from the company about this audit? → Open the tool
Fill in once — it will be inserted into every letter below:
All fields are required to print the document — this is a formal requirement of the letter itself (the particulars of an official submission), not data collection: nothing is sent or saved anywhere, it all stays in your browser and disappears when you close the page. See the methodology for details.
RIA DigiDoc — phone · Smart-ID / Mobile-ID
Send this letter directly to the company first — before contacting the regulator it has the right to respond (GDPR Art. 12(3) — 30 days).
Тема: Запрос доступа к персональным данным (ст. 15 GDPR) — elisa.ee Кому: [укажите адрес компании — DPO / поддержка / юридический отдел] От: [Ваше имя], [контактный email] Прошу предоставить доступ к моим персональным данным, обрабатываемым в связи с использованием сайта elisa.ee. 1. Категории данных и цели обработки (ст. 15(1)(a)-(c)) Прошу предоставить информацию по всем категориям, целям и получателям обработки моих данных на этом сайте — независимо от того, выявлены ли на сегодняшний день какие-либо несоответствия. 2. Получатели, сроки хранения и передача за пределы ЕЭЗ (ст. 15(1)(c)-(d), 46) Прошу также указать полный список третьих лиц-получателей, применимые сроки хранения по каждой категории и правовые основания передачи данных за пределы ЕЭЗ, если таковая происходит. Полный технический разбор с доказательствами (сохранённый сетевой журнал, контрольная сумма SHA-256) опубликован по адресу: https://gdpru.eu/en/audits/ee-elisa-ee/ 3. Автоматизированная обработка и профилирование (ст. 15(1)(h)) Прошу сообщить, применяется ли в отношении меня автоматизированное принятие решений или профилирование, и если да — раскрыть логику такой обработки. С уважением, [Ваше имя] [контактный email] [Страна] [Дата]
Subject: Data access request (GDPR Art. 15) — elisa.ee To: [insert the company's address — DPO / support / legal department] From: [Your name], [contact email] I request access to my personal data processed in connection with the website elisa.ee. 1. Categories of data and purposes of processing (Art. 15(1)(a)-(c)) I request information on all categories, purposes, and recipients of my data processed on this site — regardless of whether any non-compliance has been identified to date. 2. Recipients, retention periods, and transfers outside the EEA (Art. 15(1)(c)-(d), 46) I also request the full list of third-party recipients, the applicable retention period for each category, and the legal basis for any transfer of data outside the EEA. The full technical audit with evidence (saved network log, SHA-256 checksum) is published at: https://gdpru.eu/en/audits/ee-elisa-ee/ 3. Automated processing and profiling (Art. 15(1)(h)) Please state whether I am subject to automated decision-making or profiling, and if so, disclose the logic involved. Sincerely, [Your name] [contact email] [Country] [Date]
Teema: Isikuandmetele juurdepääsu taotlus (IKÜM art 15) — elisa.ee Kellele: [märkige ettevõtte aadress — DPO / tugi / juriidiline osakond] Kellelt: [Teie nimi], [kontakt-e-post] Palun anda mulle juurdepääs minu isikuandmetele, mida töödeldakse seoses veebisaidi elisa.ee kasutamisega. 1. Andmekategooriad ja töötlemise eesmärgid (IKÜM art 15(1)(a)-(c)) Palun esitada teave kõigi minu andmete töötlemise kategooriate, eesmärkide ja vastuvõtjate kohta sellel veebisaidil — sõltumata sellest, kas praeguseks on tuvastatud mingeid mittevastavusi. 2. Vastuvõtjad, säilitustähtajad ja edastamine väljapoole EMP-d (IKÜM art 15(1)(c)-(d), 46) Palun samuti esitada täielik loetelu kolmandatest isikutest vastuvõtjatest, iga kategooria puhul kohaldatavad säilitustähtajad ning andmete EMP-välisele edastamisele kohaldatav õiguslik alus, kui selline edastamine toimub. Täielik tehniline analüüs koos tõenditega (salvestatud võrgulogi, SHA-256 kontrollsumma) on avaldatud aadressil: https://gdpru.eu/en/audits/ee-elisa-ee/ 3. Automatiseeritud töötlemine ja profiilianalüüs (IKÜM art 15(1)(h)) Palun teatada, kas minu suhtes kohaldatakse automatiseeritud otsuste tegemist või profiilianalüüsi, ning kui jah, siis avaldada selle loogika. Lugupidamisega, [Teie nimi] [kontakt-e-post] [Riik] [Kuupäev]