Skip to content
GDPR compliant. Hosted in DE.
14-day free trial →
Consent RequiredPre-Consent DetectionTag Management
Data protection 13 min read 17 Aug 2026

Google Tag Manager Needs Consent: 2026 Ruling

VG Hannover: merely loading gtm.js needs consent. Fines up to 300,000 euros. How to check whether your tags fire before consent - and how to stop it.

X

XICTRAQ Team

XICTRAQ

ConsentTag-ManagementGDPRGoogle Tag ManagerTDDDG
300,000 €
fine range per breach of Section 25 TDDDG (Section 28 TDDDG)
94.3 %
share of Google Tag Manager among all tag managers (W3Techs)
15 %
consent banners that meet the minimum requirements (Large-Scale Web Tracking Study 2025)
Google Tag Manager: what fires before consent?First visit: what loads before the consent click?Consent clickgtm.jsAnalytics beaconMarketing pixelFonts and CSS3 trackers fire before consent§ 25 TDDDG breachedTarget: load GTM only after 'Accept'Consent gate placed in frontPage loadTimeLegal exposure and prevalence€300,000max fine — § 28 TDDDG94.3%GTM share (W3Techs)15%banners minimally compliantVG Hannover, 19 Mar 2025Case 10 A 5385/22:Merely loading gtm.jsaccesses the device —consent is required.Detect pre-consent trackers: alert when a tag fires before consentFirst visit simulated and monitored continuously — by XICTRAQVG Hannover 19 Mar 2025 (Case 10 A 5385/22); § 28 TDDDG (up to €300,000); GTM share 94.3% (W3Techs 2026)
Google Tag Manager (GTM) sits on nearly every professional website and loads quietly in the background - often before the visitor has even clicked the cookie banner. Since the ruling of the Hanover Administrative Court (VG Hannover) of 19 March 2025 (case 10 A 5385/22) this is a legal problem: merely loading the gtm.js script already accesses the user's device and transmits data, which under Section 25(1) TDDDG (until May 2024 TTDSG) and Article 6(1)(a) GDPR requires prior, active consent (VG Hannover, 19 Mar 2025). Breaches of the consent requirement can be fined up to 300,000 euros under Section 28(1) no. 13 TDDDG (Section 28 TDDDG). Because 94.3% of all websites that use a tag manager rely on GTM (W3Techs 2026), the ruling touches practically every operator. This guide explains what the court decided, why merely fetching the script counts and how a GDPR scanner for pre-consent trackers reveals whether your tags fire too early.

The VG Hannover ruling in plain terms

On 19 March 2025 the Hanover Administrative Court dismissed a website operator's lawsuit against an order issued by the data protection authority (case 10 A 5385/22). The authority had objected to two things: first, the cookie banner lacked an equivalent option to reject all non-essential cookies at the first level; second, Google Tag Manager was embedded without prior consent. The court upheld both objections and confirmed that the order was lawful (VG Hannover, 19 Mar 2025).

The central finding on GTM: simply embedding the manager already accesses the user's device and triggers a data transfer - namely by loading the gtm.js script from Google servers (VG Hannover, 19 Mar 2025). That access falls under Section 25(1) TDDDG and is impermissible without prior consent, unless the tag manager provides only strictly necessary functions. In addition, the court required a 'reject all' button equivalent to the 'accept' button in visibility, accessibility and placement (VG Hannover, 19 Mar 2025).

What the ruling does NOT say

Google Tag Manager is not banned across the board. The court merely clarifies that fetching it requires consent, because doing so accesses the device and opens a connection to Google servers (VG Hannover, 19 Mar 2025). Anyone who loads GTM only after documented consent and cleanly separates strictly necessary processes can keep using it. Legal statements in this article are no substitute for legal advice.

Why merely fetching the script already counts

Many operators assume the tag manager is just an 'empty container' that tracks nothing itself and may therefore run without consent. That view falls short. Section 25(1) TDDDG covers two acts: storing information on the device and accessing information already stored on it (Section 25 TDDDG). The very connection to googletagmanager.com to load gtm.js triggers such access and transmits technical data such as the IP address to a third party (VG Hannover, 19 Mar 2025).

There is also the third-country issue: gtm.js is loaded from Google servers, which may transfer personal data to the United States (VG Hannover, 19 Mar 2025). Such transfers face additional requirements from Chapter V GDPR on top of the consent obligation. If you want to know exactly which data leaves on the first page load, it is best measured actively - the article on measuring data flow and third-country transfer shows the method.

The tag manager is not a neutral container

Even with not a single tag configured in GTM, fetching it already creates an access to the device and a connection to a third party. Legally, what matters is not what the manager later serves, but that it is loaded at all (VG Hannover, 19 Mar 2025). That is why the script belongs behind the consent gate, not in front of it.

How widespread the problem is

The reach of the ruling follows from the tool's market position. Among all websites that use a tag manager at all, 94.3% run Google Tag Manager (W3Techs 2026). According to BuiltWith analyses, GTM runs on a large share of the world's most visited websites (BuiltWith 2026). At the same time, consent handling is poor across the board: a peer-reviewed large-scale study from 2025 analysing more than a quarter of a million websites found that only about 15% of consent banners meet the minimum requirements for valid consent (Large-Scale Web Tracking Study 2025).

The picture sharpens with actual tracking behaviour: more than 50% of websites set cookies before the user had made any choice at all (Large-Scale Web Tracking Study 2025). Around 67% of the sites studied showed a consent interface, yet a large share offered no equivalent rejection (Large-Scale Web Tracking Study 2025). This exact pattern - scripts and cookies before the click, no genuine 'reject' - is what VG Hannover objected to.

MetricValueSource
GTM share of all tag managers94.3%W3Techs 2026
Consent banners minimally compliantaround 15%Large-Scale Web Tracking Study 2025
Websites with cookies before choiceover 50%Large-Scale Web Tracking Study 2025
Sites showing a consent interfacearound 67%Large-Scale Web Tracking Study 2025
Fine per breach (Section 25 TDDDG)up to 300,000 eurosSection 28 TDDDG
GDPR fine rangeup to 20M euros / 4% revenueArticle 83 GDPR

What a breach costs legally and commercially

The sanctions sit on two levels. Access without consent fulfils the fine provision of Section 28(1) no. 13 TDDDG and can be penalised with up to 300,000 euros (Section 28 TDDDG). Depending on the constellation, enforcement lies with the Federal Network Agency or the data protection authority (Section 28 TDDDG). If unlawful processing of personal data is added, the GDPR fine range of up to 20 million euros or 4% of worldwide annual turnover applies (Article 83 GDPR).

Besides fines, a second and often faster danger looms: warning letters from competitors or specialised law firms. Missing or deficient consent solutions are pursued as unfair-competition breaches, similar to what the article on the BFSG warning-letter wave over missing accessibility describes for digital accessibility. In practice, these civil-law letters tend to reach operators fastest - long before a supervisory authority steps in.

Consent errors are not a trivial offence

VG Hannover confirmed the authority's order in full (VG Hannover, 19 Mar 2025). This establishes that authorities may object to loading gtm.js before consent. Anyone relying on 'everyone does it this way' overlooks that the number of audits and warning letters typically rises after such landmark rulings.

The typical consent mistakes at a glance

Four failure patterns keep appearing in practice. They share one trait: the user is tracked before validly consenting.

GTM ungated in <head>

The classic: the standard snippet loads gtm.js right on page load, before the banner is answered. Device access thus fires before any consent (VG Hannover, 19 Mar 2025). The script belongs behind the consent gate.

No equivalent rejection

A prominent 'accept' button, but 'reject' hidden only on the second level. The court requires a rejection option equivalent in visibility and placement on the first level (VG Hannover, 19 Mar 2025). In practice it is often missing: only part of all banners offer a genuine reject (Large-Scale Web Tracking Study 2025).

Cookies before the click

Analytics and marketing cookies are set the moment the page loads. Over half of all websites show exactly this behaviour (Large-Scale Web Tracking Study 2025). Each such act is a potential breach of Section 25 TDDDG (Section 25 TDDDG).

Consent mode as a fig leaf

A server-side consent mode signals 'no consent', yet the GTM container itself is still loaded. Merely fetching the script remains subject to consent - regardless of which tags are suppressed afterwards (VG Hannover, 19 Mar 2025).

Whether your website is affected can be determined by simulating the first page visit - the state before any consent has been given. The practical steps:

  1. Simulate a first visit: open the page in a fresh state with no consent set, so you see exactly what a new visitor triggers.
  2. Watch the network requests: check whether a request to googletagmanager.com (gtm.js) goes out before the banner is answered - this fetch is the decisive point (VG Hannover, 19 Mar 2025).
  3. Log cookies and storage access: capture every cookie and every access to device storage that occurs before the click (Section 25 TDDDG).
  4. Break down third-party connections: record which domains and which countries data flows to, to assess the third-country question (Article 83 GDPR).
  5. Repeat regularly: a deploy, a new marketing tag or a changed container configuration can flip the state at any time - a one-off check is not enough.
Reproduce the first visitor automatically

In its GDPR scanner, XICTRAQ simulates a first-time visitor without cookie consent and detects every tracker, cookie and network request set before consent - including the gtm.js fetch. So you see in black and white whether your container fires before the click, instead of guessing.

The technical fix is straightforward: nothing that requires consent loads before consent. This applies to the GTM container just as much as to every individual tag. This sequence has proven itself:

  • Blocker first: the consent tool loads before everything else and blocks all non-essential scripts until a decision is made.
  • GTM only after 'accept': the container is loaded solely once the user has actively consented - technically via an event, not via an already embedded snippet.
  • Equivalent rejection: 'accept' and 'reject' stand on the first level as equals (VG Hannover, 19 Mar 2025).
  • Document consent: the time, scope and version of consent are stored verifiably to be able to prove the consent (Article 6(1)(a) GDPR).
  • Enable withdrawal: the user must be able to withdraw their decision as easily as they gave it.

In code this means: the standard GTM snippet in the <head> is replaced by a function that fires only after documented consent. A schematic example:

gtm-consent-gate.html
<!-- Wrong: GTM loads immediately in <head>, before any consent exists -->
<script>(function(w,d,s,l,i){/* gtm.js is loaded straight away */})(window,document,'script','dataLayer','GTM-XXXX');</script>

<!-- Right: load GTM only after documented consent -->
<script>
  function loadTagManager(){
    var s = document.createElement('script');
    s.src = 'https://www.googletagmanager.com/gtm.js?id=GTM-XXXX';
    document.head.appendChild(s);
  }
  // The consent tool calls this ONLY after the visitor clicks 'Accept'
  window.addEventListener('consent:granted', loadTagManager);
</script>

If you would rather avoid consent-requiring cookies altogether, the article on cookieless analytics without consent banners shows an alternative route, and the fundamentals of a legally sound banner are covered in the guide to implementing cookie consent correctly.

Monitor continuously instead of checking once

A clean consent configuration is not a permanent state. It tips over precisely when no one is watching: a marketing team adds a new pixel, an update changes the container logic, a developer comments out the consent gate 'just to test'. Such regressions stay unnoticed without ongoing control, until a warning letter makes them visible.

AspectOne-off checkContinuous monitoring
Timingmanual, occasionalautomatic, at fixed intervals
Detects new pre-consent tagsonly by chanceyes, in the next run
Reaction after a deployoften too latealert within the interval
Evidence trailsnapshotseamless record over weeks
Protection from consent driftnonedeviation triggers a notification

Because tags are often loaded through the container, watching consent behaviour belongs together with controlling embedded scripts. The article on monitoring consent tag drift deepens the pattern, and script integrity monitoring fires when a third-party script silently changes its behaviour. Complemented by alerting across multiple channels, the snapshot becomes an early-warning system.

Uncover pre-consent tracking with XICTRAQ

After the VG Hannover ruling, the question is no longer whether Google Tag Manager requires consent, but whether your container obeys the rule. That cannot be ticked off once - every deploy, every new tag and every changed consent configuration can alter the state. That is why the check belongs in the same toolbox as running cookieless analytics, which works without consent-requiring cookies from the outset.

XICTRAQ reproduces a first visit without consent, detects every tracker and every gtm.js fetch before consent and reports deviations automatically. Combined with the GDPR scanner for mandatory pages and pre-consent trackers, you see in one place whether banner, scripts and data flows fit together. Anyone looking for a privacy-friendly analytics alternative instead of a tracker sidesteps the consent problem at its root.

Start with the free test and check what your homepage really loads on the first visit. Or see in a personal demo how pre-consent detection and alerting work together day to day.

Sources

This article draws on: VG Hannover, ruling of 19 March 2025 (case 10 A 5385/22, consent requirement for Google Tag Manager, fetching gtm.js as access to the device, equivalent 'reject all' button); Section 25(1) and Section 28(1) no. 13 TDDDG (consent requirement and fine range up to 300,000 euros); Article 6(1)(a) and Article 83 GDPR (legal basis of consent, fine range up to 20M euros / 4%); W3Techs 2026 and BuiltWith 2026 (market share of Google Tag Manager); peer-reviewed Large-Scale Web Tracking Study 2025 (compliance of consent banners, tracking before choice). Legal statements are no substitute for legal advice.

Does Google Tag Manager really need consent?
After the VG Hannover ruling of 19 March 2025 (case 10 A 5385/22), merely fetching the gtm.js script requires prior consent, because doing so accesses the device and opens a connection to Google servers (VG Hannover, 19 Mar 2025). The legal basis is Section 25(1) TDDDG and Article 6(1)(a) GDPR. This applies regardless of which tags are later configured in the container.
Does this apply even if no tags are active in GTM?
Yes. The court focuses on the fact that fetching the manager already accesses the device and transmits data (VG Hannover, 19 Mar 2025). Whether tags are configured in the container is not decisive for the consent requirement. Strictly necessary processes must be cleanly separated from it.
How high can the fine be?
A breach of the consent requirement in Section 25 TDDDG fulfils the fine provision of Section 28(1) no. 13 TDDDG and can be penalised with up to 300,000 euros (Section 28 TDDDG). If unlawful data processing is added, the GDPR range of up to 20 million euros or 4% of annual turnover applies on top (Article 83 GDPR). In practice, warning letters are more common than fines.
Is Google consent mode enough to solve the problem?
A server-side consent mode suppresses tags but does not change the fact that the container itself is loaded. It is exactly this fetch that remains subject to consent (VG Hannover, 19 Mar 2025). The safe approach is to load the GTM container only after documented consent, rather than leaving it embedded.
How do I tell whether my container fires before consent?
Simulate a first visit without consent and check whether a request goes out to googletagmanager.com and cookies are set before the banner is answered. XICTRAQ reproduces this first visit automatically and detects all pre-consent trackers, so a too-early gtm.js fetch can typically be uncovered right away instead of only through a warning letter.
Must the cookie banner have a 'reject' button?
After the VG Hannover ruling, the first level must carry a rejection option equivalent to the 'accept' button in visibility, accessibility and placement (VG Hannover, 19 Mar 2025). A reject path that is merely hidden or moved to a second level is generally insufficient, because it steers the decision one-sidedly towards consent.

Related in XICTRAQ

Start in 60 seconds

Let XICTRAQ watch your website.

Permanent free plan available. No credit card, no installation, no hidden fees.