EU ePrivacy Directive Article 5(3) terminal equipment test
This test applies when a website, app, SDK, tag, connected device, email pixel, or analytics script stores information on a user's device or reads information already there.
Based on Article 5(3), EDPB technical-scope guidance, consent guidance, the cookie-banner taskforce report, and WP29 exemption analysis.
Apply the operation by operation. Identify the information, the subscriber's or user's , the public communications-network context, and whether the operation stores information or gains access to information already stored. Cookies, local storage, SDK identifiers, tracking pixels, URL identifiers, browser APIs, device sensor outputs, and IoT reporting can qualify, but a technology name alone does not decide the result.
1
Section 1
Run the Article 5(3) trigger test
Start with the operation, not the label used by the vendor. EDPB Guidelines 2/2023 identify four Article 5(3) elements: information, of a subscriber or user, a public electronic communications network context, and storage or gaining access. Storage and access are separate triggers, so the same assessment should catch both writing an identifier and reading a value that another party, the user, the device maker, or software already placed on the device.
Information is not limited to personal data. The test should therefore cover analytics IDs, advertising IDs, cached values, HTTP headers used for tracking, ETags, HSTS abuse, authentication tokens, device sensor results, and values generated locally by scripts or apps. For IP-only tracking, document how the address or other value originates from and is made available by the ; the mere receipt of an IP address should not be replaced with a blanket conclusion detached from the EDPB's technical scenario.
Identify every write operation: cookies, local storage, session storage, SDK storage, cache entries, tracking links, tracking pixels, and client-generated identifiers.
Identify every read operation: cookie reads, browser or OS API calls, device identifiers, private files, sensor outputs, contact or location APIs, and locally generated profile or fingerprint values.
Record whether client-side code, an SDK, email HTML, a tag manager, a browser API call, or an IoT instruction causes the device to send the value back over a network.
Treat the Article 5(3) test as technical-scope analysis first; later personal-data processing may also need a GDPR assessment.
Classify pixels, URLs, local identifiers, APIs, and IoT flows
Tracking pixels and tracked URLs are in scope when they are distributed over a public communications network and instruct the user's client to request a resource or send an identifier. The same logic applies when JavaScript or app code dynamically constructs a pixel or URL identifier.
Local processing is not automatically outside Article 5(3). If information stays strictly inside the device, the EDPB says Article 5(3) does not apply on that basis; when the information or a derived value is sent back through a communications network, the access trigger may apply. For IoT, direct reporting from a connected device and mediated reporting through a relay device must both be mapped because the relay can become the that stores and sends the data onward.
For web tags and email pixels, save the HTML or script, the requested resource URL, the identifier parameters, and the purpose assigned by the tag owner.
For local identifiers, document whether the value comes from user input, device manufacturing, an OS or browser API, a sensor, cached storage, or client-side code.
For SDKs and app APIs, list each permission, local value, derived value, endpoint, recipient, and purpose before deciding whether consent or an exception is available.
For IoT products, separate direct device-to-server reporting from phone, hub, or gateway relay reporting, then test the onward network instruction separately.
Consent is not required only where the storage or access is for the sole purpose of carrying out or facilitating transmission over an electronic communications network, or where it is strictly necessary to provide an information society service explicitly requested by the subscriber or user. WP29 Opinion 04/2012 treats the second exception as a high test: the user must have requested a clearly defined functionality, and that functionality must fail without the storage or access.
Purpose and implementation control the answer. A first-party session cookie for a shopping basket, authentication during a logged-in session, user-centric login security, multimedia playback during a session, load balancing, or a short-lived user-interface preference may qualify when the conditions described in WP29 Opinion 04/2012 are met. These are examples, not categorical exemptions. Behavioural advertising, cross-site tracking, social plug-in tracking, most third-party advertising operations, and analytics are not strictly necessary merely because the operator wants measurement or monetisation.
For the transmission exception, prove the value is solely needed to carry the communication, such as routing, session continuity, packet ordering, error detection, or load balancing.
For the explicitly requested service exception, name the specific user-requested functionality and show that it will not work if the storage or access is disabled.
Split multipurpose cookies or identifiers; an exempt purpose does not make a tracking, advertising, profiling, or analytics purpose exempt.
Set lifespan and scope to the purpose: session or short-lived values are easier to justify than persistent or third-party values, but purpose remains decisive.
When consent is needed, test the consent mechanism
Where no Article 5(3) exception applies, storage or access should wait for valid consent. EDPB consent guidance ties ePrivacy consent to the GDPR standard: freely given, specific, informed, unambiguous, and expressed through a clear affirmative action. Consent records should show the version of the notice, the purposes, the user action, and the time of the signal without collecting more proof data than needed.
The EDPB cookie-banner taskforce report is useful for testing common failure patterns. By default, cookies that require consent should not be set before consent. Pre-ticked boxes do not produce valid consent. Banner designs that hide refusal, make refusal look unavailable, push users toward accept, use confusing legitimate-interest layers for read/write operations, or make withdrawal harder than giving consent create evidence and enforcement risk.
Block non-exempt cookies, pixels, SDK reads, and local-storage writes until a valid consent signal exists for the relevant purpose.
Make accept, reject, manage, and withdrawal paths testable; save screenshots or DOM snapshots for each layer and language version.
Keep the CMP configuration, tag firing rules, consent string or log schema, vendor list, purpose mapping, and reject-all test results together.
Retest after tag-manager releases, SDK upgrades, new marketing vendors, new markets, consent-banner redesigns, and changes to cookie or local-storage classifications.
Evidence record for the terminal equipment decision
The evidence record should let a reviewer reproduce the Article 5(3) classification without relying on memory. For each technology, store the observed technical behaviour, purpose, recipient, legal classification, consent or exception basis, and test result.
Do not collapse the ePrivacy and GDPR records. The ePrivacy record should answer whether storage or access is allowed and on what basis. A separate processing record can then address any subsequent personal-data processing, including controller roles, lawful basis, transparency, retention, and data-subject rights.
Does Article 5(3) apply only to cookies?
No. EDPB Guidelines 2/2023 say Article 5(3) covers storage of, or access to, information in and is not limited to cookies. The same test can cover pixels, tracked URLs, local storage, SDK identifiers, device API reads, IoT reporting, and locally generated values sent back over a network.
Can analytics be treated as strictly necessary under Article 5(3)?
WP29 Opinion 04/2012 says first-party analytics cookies are not strictly necessary to provide a functionality explicitly requested by the user, even though they may present lower risk when limited to first-party aggregated statistics with safeguards. Treat analytics as requiring consent unless a specific cited exception is available.
What proof should teams keep for an Article 5(3) exception?
Keep the technical trace, the user-requested functionality, why the storage or access is solely for transmission or strictly necessary for that functionality, the lifespan and purpose limits, source citations, owner approval, and retest evidence showing non-exempt purposes do not run under the same identifier.
Inventory entry: technology name, owner, domain or package, storage location, value type, lifespan, first-party or third-party status, and public-network endpoint.
Scope analysis: information type, involved, storage/access event, instruction source, recipient, and whether the value leaves the device.
Basis decision: consent required, transmission exception, strictly necessary service exception, or blocked pending redesign, with source citation and reviewer approval.
Validation pack: network capture, cookie/local-storage export, consent-banner screenshots, reject-all trace, tag firing report, vendor documentation, and change history.
Review triggers: new tag, new SDK, new pixel, new API permission, new connected-device reporting path, new purpose, new vendor, new country launch, or banner redesign.
Map storage, access, consent, and exemptions before tags ship
Sorena can help convert cookies, pixels, SDKs, local identifiers, and device API calls into cited Article 5(3) classifications, consent checks, exception evidence, and retest triggers.
Historical Commission material about the proposed modernization of the EU online-privacy framework for digital communications and tracking technologies.
Explains the transmission and explicitly requested service criteria and applies them to user-input, authentication, security, media, load-balancing, preference, social plug-in, advertising, and analytics cookies.