
GDPR cookie consent: trackers before consent
At a glance
EU-01CriticalGDPR Art. 83(5)(a); ePrivacy Art. 5(3)
Peeky looks for analytics, advertising and other non-essential trackers that load before a visitor has answered the cookie banner.
Last checked against the source:
The rule
Article 5(3) of the ePrivacy Directive, in the text inserted by Directive 2009/136/EC, allows the storing of information, or the gaining of access to information already stored, in a user’s terminal equipment only on condition that the user “has given his or her consent, having been provided with clear and comprehensive information” about the purposes of the processing. It does not stop technical storage for the sole purpose of carrying out the transmission of a communication, or storage “strictly necessary in order for the provider of an information society service explicitly requested by the subscriber or user to provide the service.”
The wording covers any storage of, or access to, information on the device. It is not limited to cookies, and it has no size threshold. A tag that reads a device identifier is within it in the same way a cookie is.
The consent the directive asks for is the GDPR’s consent. The EDPB notes that references to Directive 95/46/EC are read as references to the GDPR, and that this includes the references to consent in Directive 2002/58/EC (Guidelines 05/2020, para. 7; GDPR Art. 94(2)). Article 4(11) defines consent as an “unambiguous indication of the data subject’s wishes” given “by a statement or by a clear affirmative action”, and it must be freely given, specific and informed. Article 7(1) puts the burden of showing that consent was given on the controller, and Article 7(3) requires withdrawal to be as easy as giving it.
Timing is the point of this check. The EDPB’s view is that “consent must always be obtained before the controller starts processing personal data for which consent is needed” (para. 90), and that scrolling or swiping through a page “will not under any circumstances satisfy the requirement of a clear and affirmative action” (para. 86). The CNIL’s 2020 guidelines take the same line on continued browsing and add that refusing must be as easy as accepting.
Penalties sit in two layers. The directive leaves them to the Member States, which must lay down rules that are “effective, proportionate and dissuasive” (Art. 15a), so the ePrivacy side is sanctioned under national law. The GDPR side is separate: Article 83(5)(a) places “the basic principles for processing, including conditions for consent, pursuant to Articles 5, 6, 7 and 9” in the upper tier, with a ceiling of EUR 20 million or 4% of worldwide annual turnover. The check’s citation lists Art. 83(4)/(5); the consent conditions are in paragraph 5.
What PeekWell checks and how
EU-01 asks one question: did anything that isn’t strictly necessary load before the visitor answered the banner? The scan answers it from what the page did, not from what the site says it does.
The scan is automated. It opens your public pages the way a first-time visitor’s browser would, with no choice saved, and notes any analytics, advertising or session-replay tool that starts before anyone touches the banner. Anything that starts early becomes a finding, and what the scan saw is the evidence.
The scan has limits, and the report says so. It sees the public pages it visited, and the members area when you give it a sign-in. It doesn’t port-scan, try to get in where it isn’t allowed, run any security test or open addresses nobody linked to. Collection that happens on a server, or inside an app, is outside what a browser visit can see. A Passed means the expected behaviour was observed on the pages scanned. It doesn’t say the site complies.
Why it matters for a company
For an authority this is one of the easiest facts to establish, because it can be observed from outside with a clean browser. In procedure PS/00080/2023 the AEPD opened a website with its history and cookies cleared, took no action on the page, and recorded Google Analytics performance cookies (_ga and _gid) and a targeting cookie in use. The decision, which also covers privacy-notice and design-pattern findings, includes EUR 5,000 under Article 22.2 of Spain’s LSSI for the cookie setup.
The same pattern runs through the decisions listed below. The CNIL’s SHEIN decision records cookies placed before visitors interacted with the banner, and a Refuse all button that did not stop them. The Romanian authority ordered the cookie setup reconfigured so that cookies need prior consent.
For a company the practical consequences are of three kinds. Authorities can check the facts themselves, as the AEPD did here after a complaint reached it. Consent has to be demonstrable under Article 7(1), so a banner that is present but not wired to the tags proves little. And data that reaches an advertising or analytics vendor before the visitor chose has already left; fixing the banner afterwards does not recall it.
Smaller companies and larger companies
The rule has no size threshold, and the same facts decide it for a five-person startup and for a listed group. What differs is how the problem arises and how it shows up.
In a small company the site is often built from a template or a hosted builder. Someone in marketing adds Google Analytics, an advertising pixel and a chat widget, and a banner plugin is switched on. The banner is real, but one of the tags was pasted straight into the theme, so it loads on every visit before the banner is answered. There is often no privacy team to notice, so a complaint may be how it comes to light, as it did in Romania. Smaller companies are within reach of authorities: the Urban Home decision listed below ended in a fine of 10,000 lei and an order to correct the setup.
In a larger company there are more moving parts. A tag manager holds dozens of tags owned by different teams and agencies, the site spans several domains and apps, and a release can change which tags fire and in what order. Consent state has to carry across all of it, and the company has to be able to show it did. Scale also changes the stakes: the CNIL noted that around 12 million French residents visit shein.com each month.
Enforcement cases
Published decisions about other companies, listed for context. Each links to the authority's own page. They say nothing about any particular website.

Larger companies
Infinite Styles Services Co. Limited (SHEIN)
The CNIL found that several cookies, particularly for advertising, were placed on visitors' devices as soon as they arrived on shein.com, before they interacted with the banner. It also found that Refuse all, or withdrawing consent, did not stop new cookies being placed.
Read the CNIL (France) publication about Infinite Styles Services Co. Limited (SHEIN)Roularta Media Group
In its review of cookies on Belgian news sites, the authority found that levif.be and knack.be placed around sixty cookies that were not strictly necessary before the visitor consented. It also found pre-ticked consent boxes for third-party partners, and that consent could not be withdrawn as easily as it was given.
Read the APD (Belgium) publication about Roularta Media Group
Smaller companies
Urban Home Development S.R.L.
After a complaint, the authority found that the company's website did not show the identity of the operator and installed cookies that were not technically necessary before users gave consent. It ordered the cookie setup and privacy policy corrected.
Read the ANSPDCP (Romania) publication about Urban Home Development S.R.L.Ydail Construct SRL
After a complaint about an online shop, the authority found that the company's website stored cookies that were not technically necessary without the visitor's consent. It ordered the setup changed so that marketing and statistics cookies are placed only after the visitor consents.
Read the ANSPDCP (Romania) publication about Ydail Construct SRLLenjeria Magică SRL
After a complaint, the authority found that from 15 April 2025 the company's website stored cookies that were not technically necessary on visitors' devices, without clear information about them and without explicit consent.
Read the ANSPDCP (Romania) publication about Lenjeria Magică SRLThere's an AI for that S.R.L.
After a complaint from a visitor, the authority found that the company's website stored cookies that were not technically necessary on users' devices, without clear and complete information and without express consent.
Read the ANSPDCP (Romania) publication about There's an AI for that S.R.L.Vasile Nester, Cabinet de Avocat
The authority found that between May and October 2025, opening the operator's websites placed cookies that were not technically necessary on visitors' devices without prior consent and without complete information.
Read the ANSPDCP (Romania) publication about Vasile Nester, Cabinet de AvocatMatrix CBD Relax S.r.l.s.
An online check of the company's website found no cookie banner and no information notice, while the browser showed that the site was using cookies. The Garante issued a reprimand; the company had since taken the site offline.
Read the Garante (Italy) publication about Matrix CBD Relax S.r.l.s.Begin Restaurantes, S.L. (alleged; procedure ended by voluntary payment)
After a complaint about a restaurant's website, the AEPD opened it with history and cookies cleared, took no action, and recorded two Google Analytics cookies in use. It also found that the banner's Rechazar (reject) button did not respond. The company paid the reduced amount, which ended the procedure.
Read the AEPD (Spain) publication about Begin Restaurantes, S.L. (alleged; procedure ended by voluntary payment)
How to fix it
The order of events matters more than the tool you use. These steps fit most consent tools and tag managers, and step 4 follows Google’s own consent mode guide.
- See what loads first. Open your site in a private window with the browser’s network tab open. Do not touch the banner. Write down every third-party request and cookie that appears.
- Block by default in your consent tool. Mark analytics, advertising, session replay and chat as blocked until the visitor accepts. Most consent tools have a per-category setting for this. A category left on allowed is one way a banner can exist while tags still run.
- Start tags from the consent tool’s callback. In a tag manager, fire each tag on the consent tool’s accept event rather than on page load. Pasted scripts in the theme, a plugin or the page template need the same treatment, or they need to go.
- Set Google’s consent mode to denied before any Google tag. Google’s guide asks for the default call on every page before any command that sends measurement data, and says defaults will not work if the order is wrong. Then update the state when the visitor accepts.
- Re-scan. Clear cookies and storage, reload, and run a scan again. The finding should disappear once nothing non-essential loads before the choice.
gtag('consent', 'default', {
ad_storage: 'denied',
ad_user_data: 'denied',
ad_personalization: 'denied',
analytics_storage: 'denied',
});
Consent mode changes what Google’s tags store and send. Whether it satisfies a given authority is a question for your legal adviser, and Peeky reports only what it sees.
Questions
Can a website set cookies before the visitor accepts?
Only the ones the site needs to work, like a login or a shopping basket. Analytics, advertising and similar cookies wait until the visitor says yes.
The rule is in Article 5(3) of the ePrivacy Directive. It makes two exceptions, for sending the message itself and for what is strictly necessary to give the visitor a service they asked for. The rule has the wording.
What is the difference between essential and non-essential cookies?
Essential cookies, also called strictly necessary, are the ones the site can't work without, like a login or a basket, because the visitor asked for that feature. Non-essential ones are everything else: analytics, advertising, session replay and social tracking. Those wait for a yes.
The line is drawn by purpose, not by name. Two cookies with the same name can fall on different sides of it.
Does scrolling count as consent?
No. The European Data Protection Board says scrolling or swiping through a page will not under any circumstances be a clear affirmative action. The visitor has to click or tick something that means yes, and the choice has to come before the tracking starts.
What does the ePrivacy Directive say about cookies?
Article 5(3) says a site may store information on a visitor's device, or read it, only if the visitor has given consent after clear and comprehensive information. The exceptions are narrow. Each country writes its own penalties, so the amounts differ from one authority to the next.
How does Peeky check for trackers before consent?
Peeky opens your public pages the way a first-time visitor would and writes down every request and cookie that appears before anyone touches the banner. It never clicks Accept. How a scan works has the full path.
Filed with
The rule
ePrivacy Directive 2002/58/EC, Art. 5(3), as amended by Directive 2009/136/EC
Read the rule (ePrivacy Directive 2002/58/EC, Art. 5(3), as amended by Directive 2009/136/EC)A case
Infinite Styles Services Co. Limited (SHEIN)
Read the decision (Infinite Styles Services Co. Limited (SHEIN))Sources
The law
- Directive 2009/136/EC, Official Journal L 337, Art. 2(5) (replaces Art. 5(3) and adds Art. 15a of Directive 2002/58/EC)
- Regulation (EU) 2016/679 (GDPR), Official Journal L 119
- France, Loi n° 78-17 du 6 janvier 1978 (Informatique et Libertés), Article 82 (Légifrance)
- Spain, Ley 34/2002 de servicios de la sociedad de la información y de comercio electrónico (LSSI), consolidated text, Article 22.2 (BOE)
- Romania, Law no. 506/2004 on the processing of personal data and the protection of privacy in the electronic communications sector, Art. 4(5) (Portal Legislativ)
- Italy, Codice in materia di protezione dei dati personali, consolidated text, Art. 122 (Garante)
Guidance
- EDPB, Guidelines 05/2020 on consent under Regulation 2016/679, version 1.1, adopted 4 May 2020
- EDPB, Guidelines 2/2023 on Technical Scope of Art. 5(3) of ePrivacy Directive, version 2.0, adopted 7 October 2024
- Article 29 Working Party, Opinion 04/2012 on Cookie Consent Exemption (WP194), adopted 7 June 2012
- CNIL, Cookies et autres traceurs: lignes directrices modificatives et recommandation (deliberations 2020-091 and 2020-092, 17 September 2020)
- AEPD (Spain), Guía sobre el uso de las cookies, updated May 2024
- Garante per la protezione dei dati personali, Linee guida cookie e altri strumenti di tracciamento, 10 June 2021
Decisions and cases
- CNIL, Cookies placed without consent: SHEIN fined 150 million euros by the CNIL
- ANSPDCP (Romania), press release of 27 May 2024 on Urban Home Development S.R.L.
- AEPD (Spain), resolution in procedure PS/00080/2023 (Chatwith.io Worldwide, S.L.)
- ANSPDCP (Romania), press release of 27 June 2025 on Ydail Construct SRL
- ANSPDCP (Romania), press release of 11 September 2025 on Lenjeria Magică SRL
- ANSPDCP (Romania), press release of 4 November 2025 on There's an AI for that S.R.L.
- ANSPDCP (Romania), press release of 18 November 2025 on Vasile Nester, Cabinet de Avocat
- Garante per la protezione dei dati personali, Provvedimento del 17 ottobre 2024 [10090460] (Matrix CBD Relax S.r.l.s.)
- Autorité de protection des données (Belgium), Enquête cookies sur les sites de presse: Roularta mis à l'amende (25 May 2022)
- AEPD (Spain), resolution ending procedure PS/00405/2023 by voluntary payment (Begin Restaurantes, S.L.)
Further reading
- Court of Justice of the European Union, judgment of 1 October 2019, Case C-673/17 Planet49 (pre-ticked boxes are not valid cookie consent)
- Google Tag Platform, Set up consent mode on websites
Last checked against the source:
For information only. Not legal advice.
