The official portal of the City of Tallinn — a single capture of a district page, 216 requests, 19 nodes, about eighty seconds. There is no consent management mechanism on the page at all, and Google analytics runs even without a consent mode (gcs=-). On load, without any choice, the Facebook / Meta Pixel fires (PageView delivered to Meta), as do GA4, Google DoubleClick advertising via the embedded video, and the Cloudflare analytics beacon; separately, the Mouseflow session-recording tool loads and initializes from the markup. All of this while the data-protection terms explicitly promise: third-party content only after consent, and without consent no data is processed. The security headers are set strictly, but that has nothing to do with consent.
Request timeline
Declared versus actual
Transfer timings
Project 730378e1-… script, from the markup; initializes recording. Not named in the policy. The recording upload is not observed within the capture window.
PageView, pixel 1368983323488812, GET /tr, response 200. Without consent.
Pulled in by the embedded YouTube video's player.
Analytics beacon from the markup. Not named in the policy.
GA4 page_view, G-XPFT2B0539, gcs=- (consent mode not configured).
Detected trackers
- Google Analytics 4 (region1.analytics.google.com, G-XPFT2B0539) — a page_view event goes out at +5589 ms with consent state gcs=- (consent mode not configured); loaded by the GTM container
- Google Tag Manager (www.googletagmanager.com) — the container from which GA4 and the Facebook pixel start
- Facebook / Meta Pixel (connect.facebook.net, www.facebook.com) — pixel ID 1368983323488812; a PageView event sent as a GET request to facebook.com/tr, response 200
- Mouseflow (cdn.mouseflow.com) — a session-recording and heatmap tool; the script of project 730378e1-5560-4d22-8540-661a3de0f618 loads at +166 ms straight from the page markup and initializes recording; not named in the policy
- Google DoubleClick (googleads.g.doubleclick.net, static.doubleclick.net) — advertising delivery pulled in by the embedded YouTube player when the video is played
- YouTube (www.youtube.com, *.googlevideo.com, i.ytimg.com, yt3.ggpht.com, jnn-pa.googleapis.com) — an embedded video; it was played (video stream from googlevideo.com)
- Cloudflare Web Analytics (static.cloudflareinsights.com) — an analytics beacon from the page markup; not named in the policy
- Google reCAPTCHA (www.google.com, www.gstatic.com), Google Fonts (fonts.gstatic.com) — functional
- There is no consent management platform in the recording at all
Indicators of GDPR non-compliance
- ePrivacy — Directive 2002/58/EC, Art. 5(3) (in conjunction with GDPR Art. 6(1)(a)) — tracking without consent and without any consent mechanismThe municipal portal has no consent management platform: across 216 requests there is no request to any CMP, and no script with the signs of a banner. Google analytics runs even without a consent mode — the GA4 page_view event (G-XPFT2B0539) goes out with the status gcs=- (Consent Mode is not configured). On page load, without any consent choice, the following fire and transmit data: the Facebook / Meta Pixel (ID 1368983323488812) sends a PageView to facebook.com/tr (response 200); GA4 transmits a page_view to Google; Google DoubleClick receives requests pulled in by the embedded YouTube player when the video is played; the Cloudflare analytics beacon goes out from the markup. Separately, at +166 ms, the Mouseflow session-recording tool (project 730378e1-…) loads and initializes straight from the markup. All of this on a site where the data-protection terms themselves state the opposite: third-party content is shown only after consent ('peate kõigepealt nõustuma'), and 'if consent is not given or is withdrawn, personal data is not processed'. There is no mechanism in the recording that would ensure this.
- GDPR Art. 5(1)(a) / Art. 13(1)(e) — transparency and recipientsThe data-protection terms name Google Analytics (with the caveat that Google stores the IP address) and list embedded third-party content — Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream — access to which, per the text, opens only after agreeing to those third parties' terms. However, the Mouseflow session-recording tool and the Cloudflare analytics beacon are not named in the policy at all. And Facebook appears in the recording not as content the visitor chose to open but as a tracking pixel sending a PageView on page load without consent. The consent model stated by the policy — 'consent first, otherwise we do not process' — does not match the actual behaviour: the recipients receive data before and without consent, and one of them (Mouseflow) is undisclosed.
Context
tallinn.ee is the official portal of the City of Tallinn; the controller is the institutions of the City of Tallinn (Tallinna linna asutused). The site is served via Cloudflare and keeps a strict header posture: Content-Security-Policy (default-src 'self' with a narrow allowlist), HSTS, X-Frame-Options SAMEORIGIN, X-Content-Type-Options nosniff.
The capture is a single recording of a district page (/et/peterburitee): 216 requests, 19 nodes, about eighty seconds, recorded on 8 September 2026. Over the course of the session an embedded YouTube video is played on the page. Processing is described by the city’s data-protection terms (‘Policy and cookies’).
Who receives data directly
Google (Analytics, DoubleClick via YouTube), Meta (Facebook Pixel), Mouseflow (session recording), Cloudflare (analytics beacon). Functionally — reCAPTCHA and Google Fonts.
Declared vs. actual
The discrepancy here is not in the details but at the very foundation: the policy promises a consent mechanism that does not exist on the page.
First — consent is not requested at all. Across 216 requests there is no consent management platform and no script with the signs of a banner in the recording. Moreover, Google analytics runs even without a consent mode: the GA4 page_view event goes out with the status gcs=-, meaning Consent Mode is not configured. On an ordinary page load, without any user choice, the Facebook / Meta Pixel fires and transmits (PageView, pixel 1368983323488812, response 200), as do GA4 (G-XPFT2B0539), Google DoubleClick (via the embedded video’s player) and the Cloudflare analytics beacon. Separately, at +166 ms, the Mouseflow session-recording tool (project 730378e1-…) loads and initializes straight from the markup.
Second — the policy states the exact opposite. The data-protection terms plainly say that embedded third-party content — Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream — is shown only after the visitor agrees to those third parties’ terms (‘peate kõigepealt nõustuma’). And separately: ‘if you do not give consent or withdraw it, we do not process your personal data’. In fact the data goes to Google, Meta and Cloudflare before and without any consent. The ‘consent first, otherwise we do not process’ model stated by the policy is not implemented on the page.
Third — the session recording and some recipients are undisclosed. Mouseflow is a session-recording and heatmap tool; on a municipal portal it loads without consent and is not mentioned in the policy even once. The Cloudflare analytics beacon is also not named. Facebook appears in the policy only as embedded content whose access opens by consent — whereas in the recording it works as a tracking pixel sending a PageView on page load.
The security headers, meanwhile, are set strictly — the site protected the transport and the content but left the question of consent unaddressed. For a portal of an executive-branch body, from which an exemplary standard is expected, this discrepancy is especially notable.
Consent: what is proven and what is not
Proven: there is no consent mechanism on the page. No request to a consent management platform and no script with the signs of a banner across 216 requests. GA4 runs with the status gcs=- — Google’s consent mode is not configured.
Proven: the trackers transmit data on load. Facebook /tr goes out at +719 ms (PageView, response 200); GA4 page_view at +5589 ms; DoubleClick at +911 ms via the YouTube player; the Cloudflare beacon at +1059 ms. All without any consent choice.
Proven: the session-recording tool is loaded and initialized. The Mouseflow script (project 730378e1-…) is pulled in at +166 ms straight from the page markup.
Not proven, and explicitly caveated: the Mouseflow recording upload. Within the capture window (about eighty seconds) no separate request uploading the recorded session to Mouseflow is observed — the loading and initialization of the recording script are recorded, but not the fact of sending the recording itself. The conclusion concerns the deployment of the tool without consent, not a confirmed transfer of a recording.
Observation boundaries
The capture covers one page — a district card — and records browser behaviour, not the services’ internal workings: server-side processing, the configuration of the tag container and contracts with recipients are not verified by a browser-level capture. The Mouseflow script in the recording is served from cache (response 304); what exactly it transmits and when is not established from this file beyond the fact of loading and initialization. The DoubleClick requests are attributed to the embedded YouTube player by the initiator (ytembeds). reCAPTCHA and Google Fonts are classified as the functional part.
The file is published redacted of personal data: cookie values in requests have been removed. Response headers, statuses, the load order and initiators are preserved, so the absence of a consent mechanism, the gcs=- status of GA4 and the delivery of the Facebook pixel are verified directly against the published file.
The legal assessment is made by the competent authority — Andmekaitse Inspektsioon.
Conclusion
The official portal of the City of Tallinn carefully protected the transport and the content — a strict content security policy, HSTS, nosniff — but left the question of consent entirely open. There is no consent management mechanism on the page, and Google analytics runs even without a consent mode (gcs=-). On an ordinary load, without any user choice, the Facebook / Meta Pixel sends a PageView to Meta, GA4 sends an event to Google, the embedded YouTube video pulls in Google DoubleClick advertising, and the Mouseflow session-recording tool loads and initializes from the markup. The Cloudflare analytics beacon goes out there too.
The site’s own data-protection terms meanwhile promise the exact opposite: third-party content only after consent, and without consent personal data is not processed. The Mouseflow session-recording tool and the Cloudflare analytics beacon are not named in the policy at all, and Facebook is described as content opened by consent — whereas it works as a pixel on load. For a site of an executive-branch body, from which an exemplary standard is expected, the gap between the promised and the actual here is fundamental.
Remediation: introduce a consent management mechanism and condition on it the loading and firing of all statistics and advertising components — GA4, the Facebook pixel, Mouseflow, embedded YouTube videos with DoubleClick advertising, and the Cloudflare beacon — so that before consent none of these requests goes out; configure Google’s consent mode (currently gcs=-); name the Mouseflow session-recording tool and the Cloudflare analytics in the data-protection terms as recipients, with the purpose and legal basis stated; and bring the description of Facebook into line with its actual role (a tracking pixel, not content by consent).
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.
4e994d8446f981f2673c2d30b9dd903664a09882b3dbb53b456b51c278702b44Want 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) — tallinn.ee Кому: [укажите адрес компании — DPO / поддержка / юридический отдел] От: [Ваше имя], [контактный email] Прошу предоставить доступ к моим персональным данным, обрабатываемым в связи с использованием сайта tallinn.ee. 1. Категории данных и цели обработки (ст. 15(1)(a)-(c)) На основании независимого технического анализа сайта прошу подтвердить и подробно раскрыть следующие категории обработки: 1) На муниципальном портале нет платформы управления согласием: за 216 запросов не встречается ни одного обращения к какой-либо CMP, ни одного сценария с признаками баннера. Аналитика Google работает даже без режима согласия — событие page_view GA4 (G-XPFT2B0539) уходит со статусом gcs=- (Consent Mode не сконфигурирован). При загрузке страницы, без какого-либо выбора согласия, срабатывают и передают данные: Facebook / Meta Pixel (ID 1368983323488812) отправляет PageView на facebook.com/tr (ответ 200); GA4 передаёт page_view в Google; Google DoubleClick получает обращения, подтянутые встроенным плеером YouTube при проигрывании ролика; аналитический маяк Cloudflare уходит из разметки. Отдельно на +166 мс прямо из разметки загружается и инициализируется инструмент записи сессий Mouseflow (проект 730378e1-…). Всё это на сайте, где сама политика защиты данных заявляет обратное: сторонний контент показывается лишь после согласия («peate kõigepealt nõustuma»), а «если согласие не дано или отозвано, персональные данные не обрабатываются». Механизма, который бы это обеспечивал, в записи нет. 2) Политика защиты данных называет Google Analytics (с оговоркой, что Google сохраняет адрес IP) и перечисляет сторонний встраиваемый контент — Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream, — доступ к которому, по тексту, открывается лишь после согласия с условиями этих третьих сторон. Однако инструмент записи сессий Mouseflow и аналитический маяк Cloudflare в политике не названы вовсе. При этом Facebook присутствует в записи не как контент, который посетитель решил открыть, а как трекинговый пиксель, отправляющий PageView при загрузке страницы без согласия. Заявленная моделью политики связка «сначала согласие — иначе не обрабатываем» фактическому поведению не соответствует: получатели получают данные до и без согласия, а один из них (Mouseflow) не раскрыт. 2. Получатели, сроки хранения и передача за пределы ЕЭЗ (ст. 15(1)(c)-(d), 46) Прошу также указать полный список третьих лиц-получателей, применимые сроки хранения по каждой категории и правовые основания передачи данных за пределы ЕЭЗ, если таковая происходит. Полный технический разбор с доказательствами (сохранённый сетевой журнал, контрольная сумма SHA-256) опубликован по адресу: https://gdpru.eu/en/audits/ee-tallinn-ee/ 3. Автоматизированная обработка и профилирование (ст. 15(1)(h)) Прошу сообщить, применяется ли в отношении меня автоматизированное принятие решений или профилирование, и если да — раскрыть логику такой обработки. С уважением, [Ваше имя] [контактный email] [Страна] [Дата]
Subject: Data access request (GDPR Art. 15) — tallinn.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 tallinn.ee.
1. Categories of data and purposes of processing (Art. 15(1)(a)-(c))
Based on an independent technical analysis of the site, I request confirmation and detailed disclosure of the following categories of processing:
1) The municipal portal has no consent management platform: across 216 requests there is no request to any CMP, and no script with the signs of a banner. Google analytics runs even without a consent mode — the GA4 page_view event (G-XPFT2B0539) goes out with the status gcs=- (Consent Mode is not configured). On page load, without any consent choice, the following fire and transmit data: the Facebook / Meta Pixel (ID 1368983323488812) sends a PageView to facebook.com/tr (response 200); GA4 transmits a page_view to Google; Google DoubleClick receives requests pulled in by the embedded YouTube player when the video is played; the Cloudflare analytics beacon goes out from the markup. Separately, at +166 ms, the Mouseflow session-recording tool (project 730378e1-…) loads and initializes straight from the markup. All of this on a site where the data-protection terms themselves state the opposite: third-party content is shown only after consent ('peate kõigepealt nõustuma'), and 'if consent is not given or is withdrawn, personal data is not processed'. There is no mechanism in the recording that would ensure this.
2) The data-protection terms name Google Analytics (with the caveat that Google stores the IP address) and list embedded third-party content — Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream — access to which, per the text, opens only after agreeing to those third parties' terms. However, the Mouseflow session-recording tool and the Cloudflare analytics beacon are not named in the policy at all. And Facebook appears in the recording not as content the visitor chose to open but as a tracking pixel sending a PageView on page load without consent. The consent model stated by the policy — 'consent first, otherwise we do not process' — does not match the actual behaviour: the recipients receive data before and without consent, and one of them (Mouseflow) is undisclosed.
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-tallinn-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) — tallinn.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 tallinn.ee kasutamisega. 1. Andmekategooriad ja töötlemise eesmärgid (IKÜM art 15(1)(a)-(c)) Sõltumatu tehnilise analüüsi põhjal palun kinnitada ja üksikasjalikult avaldada järgmised töötlemiskategooriad: 1) Munitsipaalportaalis nõusoleku haldamise platvormi ei ole: 216 päringu puhul ei ole juurdepääsu ühelegi CMP-le ega bännerifunktsioonidega skriptile. Google Analytics töötab ka ilma nõusolekurežiimita - lehevaade GA4 sündmus (G-XPFT2B0539) jätab olekuga gcs=- (nõusolekurežiim ei ole konfigureeritud). Kui leht laadib, ilma nõusoleku valikuta, käivitatakse ja edastatakse andmed: Facebook / Meta Pixel (ID 1368983323488812) saadab PageView facebook.com/tr-le (vastus 200); GA4 edastab lehevaate Google'ile; Google DoubleClick saab video esitamisel sisseehitatud YouTube'i mängija karmistatud taotlusi; Cloudflare analüütiline majakas jätab märke. Eraldi on Hiirevoo seansi salvestamise tööriist (projekt 730378e1-...) alla laaditud ja initsialiseeritud otse +166 ms märgistusest. Kõik see toimub saidil, kus andmekaitsepoliitika ise ütleb vastupidist: kolmanda osapoole sisu kuvatakse ainult pärast nõusolekut («peate kõigepealt nõustuma») ja „kui nõusolekut ei anta või tagasi ei võeta, siis isikuandmeid ei töödelda. Puudub mehhanism, mis seda protokollis annaks. 2) Andmekaitsepoliitikas helistatakse Google Analyticsile (tingimusega, et Google säilitab IP-aadressi) ja loetletakse kolmandate osapoolte manustatud sisu – Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream – millele juurdepääs avatakse vastavalt tekstile alles pärast nende kolmandate osapoolte tingimustega nõustumist. Kuid Mouseflow seansi salvestamise tööriist ja Cloudflare analüüsimajakas ei ole poliitikas üldse nimetatud. Samal ajal on Facebook kirjes mitte sisuna, mida külastaja otsustab avada, vaid jälgimispikslina, mis saadab PageView'i, kui leht laadib ilma nõusolekuta. Poliitikamudelis esitatud „nõusolek kõigepealt, muidu me ei töötle” pakett ei vasta tegelikule käitumisele: vastuvõtjad saavad andmeid enne ja ilma nõusolekuta ning ühte neist (Mouseflow) ei avalikustata. 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-tallinn-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]
RIA DigiDoc — phone · Smart-ID / Mobile-ID
Where to file: Estonian Data Protection Inspectorate (AKI) — write to info@aki.ee
Important: AKI only handles submissions in Estonian. Translate the letter before sending.
The regulator reviews complaints in its national language. There is an officially translated template from the European Data Protection Board (EDPB) — you can use it instead of or alongside this letter: Official EDPB complaint form (PDF, your language)
Тема: Жалоба на обработку персональных данных — tallinn.ee 1. Предмет жалобы Я подаю жалобу в отношении обработки моих персональных данных сайтом tallinn.ee. 2. Обстоятельства Я посетил сайт tallinn.ee и обнаружил признаки несоответствия обработки моих персональных данных требованиям GDPR. Технический разбор, опубликованный на gdpru.eu 08.09.2026 (открытая методология, воспроизводимые измерения), документирует следующие признаки: 1) На муниципальном портале нет платформы управления согласием: за 216 запросов не встречается ни одного обращения к какой-либо CMP, ни одного сценария с признаками баннера. Аналитика Google работает даже без режима согласия — событие page_view GA4 (G-XPFT2B0539) уходит со статусом gcs=- (Consent Mode не сконфигурирован). При загрузке страницы, без какого-либо выбора согласия, срабатывают и передают данные: Facebook / Meta Pixel (ID 1368983323488812) отправляет PageView на facebook.com/tr (ответ 200); GA4 передаёт page_view в Google; Google DoubleClick получает обращения, подтянутые встроенным плеером YouTube при проигрывании ролика; аналитический маяк Cloudflare уходит из разметки. Отдельно на +166 мс прямо из разметки загружается и инициализируется инструмент записи сессий Mouseflow (проект 730378e1-…). Всё это на сайте, где сама политика защиты данных заявляет обратное: сторонний контент показывается лишь после согласия («peate kõigepealt nõustuma»), а «если согласие не дано или отозвано, персональные данные не обрабатываются». Механизма, который бы это обеспечивал, в записи нет. 2) Политика защиты данных называет Google Analytics (с оговоркой, что Google сохраняет адрес IP) и перечисляет сторонний встраиваемый контент — Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream, — доступ к которому, по тексту, открывается лишь после согласия с условиями этих третьих сторон. Однако инструмент записи сессий Mouseflow и аналитический маяк Cloudflare в политике не названы вовсе. При этом Facebook присутствует в записи не как контент, который посетитель решил открыть, а как трекинговый пиксель, отправляющий PageView при загрузке страницы без согласия. Заявленная моделью политики связка «сначала согласие — иначе не обрабатываем» фактическому поведению не соответствует: получатели получают данные до и без согласия, а один из них (Mouseflow) не раскрыт. Полная техническая документация опубликована по адресу: https://gdpru.eu/en/audits/ee-tallinn-ee/ 3. Положения GDPR, соблюдение которых прошу проверить ePrivacy — Директива 2002/58/EC, ст. 5(3) (в связке с GDPR Art. 6(1)(a)) — трекинг без согласия и без механизма согласия; GDPR Art. 5(1)(a) / Art. 13(1)(e) — прозрачность и получатели 4. Требование Прошу проверить изложенные обстоятельства и, если несоответствие подтвердится, принять меры, предусмотренные статьёй 58(2) GDPR. 5. Приложения Полная доказательная база — HAR-файл, контрольная сумма SHA-256 и цитата из политики конфиденциальности сайта, документирующая указанное противоречие — опубликована и проверяема по ссылке в пункте 2 выше. С уважением, [Ваше имя] [контактный email] [Страна] [Дата]
Subject: Complaint regarding personal data processing — tallinn.ee
1. Subject of the complaint
I am filing a complaint regarding the processing of my personal data by the website tallinn.ee.
2. Circumstances
I visited the website tallinn.ee and found indications that the processing of my personal data does not comply with the GDPR. The technical analysis published on gdpru.eu on 8 September 2026 (open methodology, reproducible measurements) documents the following indications:
1) The municipal portal has no consent management platform: across 216 requests there is no request to any CMP, and no script with the signs of a banner. Google analytics runs even without a consent mode — the GA4 page_view event (G-XPFT2B0539) goes out with the status gcs=- (Consent Mode is not configured). On page load, without any consent choice, the following fire and transmit data: the Facebook / Meta Pixel (ID 1368983323488812) sends a PageView to facebook.com/tr (response 200); GA4 transmits a page_view to Google; Google DoubleClick receives requests pulled in by the embedded YouTube player when the video is played; the Cloudflare analytics beacon goes out from the markup. Separately, at +166 ms, the Mouseflow session-recording tool (project 730378e1-…) loads and initializes straight from the markup. All of this on a site where the data-protection terms themselves state the opposite: third-party content is shown only after consent ('peate kõigepealt nõustuma'), and 'if consent is not given or is withdrawn, personal data is not processed'. There is no mechanism in the recording that would ensure this.
2) The data-protection terms name Google Analytics (with the caveat that Google stores the IP address) and list embedded third-party content — Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream — access to which, per the text, opens only after agreeing to those third parties' terms. However, the Mouseflow session-recording tool and the Cloudflare analytics beacon are not named in the policy at all. And Facebook appears in the recording not as content the visitor chose to open but as a tracking pixel sending a PageView on page load without consent. The consent model stated by the policy — 'consent first, otherwise we do not process' — does not match the actual behaviour: the recipients receive data before and without consent, and one of them (Mouseflow) is undisclosed.
Full technical documentation is published at: https://gdpru.eu/en/audits/ee-tallinn-ee/
3. GDPR provisions I ask you to examine
ePrivacy — Directive 2002/58/EC, Art. 5(3) (in conjunction with GDPR Art. 6(1)(a)) — tracking without consent and without any consent mechanism; GDPR Art. 5(1)(a) / Art. 13(1)(e) — transparency and recipients
4. Request
I request that you examine the circumstances described and, if non-compliance is confirmed, apply the measures provided for in Article 58(2) GDPR.
5. Attachments
The full evidence base — the HAR file, its SHA-256 checksum and the quotation from the site's privacy policy documenting the stated contradiction — is published and verifiable at the link in point 2 above.
Sincerely,
[Your name]
[contact email]
[Country]
[Date]1. Kaebuse ese Esitan kaebuse seoses minu isikuandmete töötlemisega veebisaidil tallinn.ee. 2. Asjaolud Külastasin veebisaiti tallinn.ee ja tuvastasin märke sellest, et minu isikuandmete töötlemine ei vasta isikuandmete kaitse üldmääruse (IKÜM) nõuetele. Tehniline analüüs, mis on avaldatud aadressil gdpru.eu 08.09.2026 (avatud metoodika, korratavad mõõtmised), dokumenteerib järgmist: 1) Munitsipaalportaalis nõusoleku haldamise platvormi ei ole: 216 päringu puhul ei ole juurdepääsu ühelegi CMP-le ega bännerifunktsioonidega skriptile. Google Analytics töötab ka ilma nõusolekurežiimita - lehevaade GA4 sündmus (G-XPFT2B0539) jätab olekuga gcs=- (nõusolekurežiim ei ole konfigureeritud). Kui leht laadib, ilma nõusoleku valikuta, käivitatakse ja edastatakse andmed: Facebook / Meta Pixel (ID 1368983323488812) saadab PageView facebook.com/tr-le (vastus 200); GA4 edastab lehevaate Google'ile; Google DoubleClick saab video esitamisel sisseehitatud YouTube'i mängija karmistatud taotlusi; Cloudflare analüütiline majakas jätab märke. Eraldi on Hiirevoo seansi salvestamise tööriist (projekt 730378e1-...) alla laaditud ja initsialiseeritud otse +166 ms märgistusest. Kõik see toimub saidil, kus andmekaitsepoliitika ise ütleb vastupidist: kolmanda osapoole sisu kuvatakse ainult pärast nõusolekut («peate kõigepealt nõustuma») ja „kui nõusolekut ei anta või tagasi ei võeta, siis isikuandmeid ei töödelda. Puudub mehhanism, mis seda protokollis annaks. 2) Andmekaitsepoliitikas helistatakse Google Analyticsile (tingimusega, et Google säilitab IP-aadressi) ja loetletakse kolmandate osapoolte manustatud sisu – Google Maps, Twitter, Microsoft, Facebook, Google, LinkedIn, Livestream – millele juurdepääs avatakse vastavalt tekstile alles pärast nende kolmandate osapoolte tingimustega nõustumist. Kuid Mouseflow seansi salvestamise tööriist ja Cloudflare analüüsimajakas ei ole poliitikas üldse nimetatud. Samal ajal on Facebook kirjes mitte sisuna, mida külastaja otsustab avada, vaid jälgimispikslina, mis saadab PageView'i, kui leht laadib ilma nõusolekuta. Poliitikamudelis esitatud „nõusolek kõigepealt, muidu me ei töötle” pakett ei vasta tegelikule käitumisele: vastuvõtjad saavad andmeid enne ja ilma nõusolekuta ning ühte neist (Mouseflow) ei avalikustata. Täielik tehniline dokumentatsioon on avaldatud aadressil: https://gdpru.eu/en/audits/ee-tallinn-ee/ 3. Sätted, mille järgimist palun kontrollida e-privaatsus - direktiiv 2002/58/EÜ, artikli 5 lõige 3 (koosmõjus GDPRi artikli 6 lõike 1 punktiga a) - jälitustegevus ilma nõusolekuta ja ilma nõusolekuta; GDPR artikli 5 lõike 1 punkt a / artikli 13 lõike 1 punkt e – läbipaistvus ja saajad 4. Nõue Palun kontrollida kirjeldatud asjaolusid ja mittevastavuse kinnitamisel kohaldada IKÜM artikli 58 lõikes 2 ette nähtud meetmeid. 5. Lisad Täielik tõendusmaterjal — HAR-fail, kontrollsumma SHA-256 ning veebisaidi privaatsuspoliitika tsitaat, mis dokumenteerib nimetatud vastuolu — on avaldatud ja kontrollitav punktis 2 viidatud lingil. Lugupidamisega, [Teie nimi] [kontakt-e-post] [Riik] [Kuupäev]