Skripte werden nicht blockiert
Symptom
Skripte, die eine Einwilligung erfordern sollten (Google Analytics, Meta Pixel usw.), werden geladen, bevor der Nutzer mit dem Banner interagiert – sichtbar in DevTools → Netzwerk.
Ursache 1: Skripte nicht zur Blockierung markiert
Diagnose: Sehen Sie sich den Seitenquelltext an. Skripte, die blockiert werden sollen, müssen type="text/plain" und data-consent-category enthalten.
Lösung:
<!-- Falsch: wird sofort geladen -->
<script src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX"></script>
<!-- Richtig: blockiert bis zur Analytics-Einwilligung -->
<script type="text/plain" data-consent-category="analytics"
src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX"></script>
Ursache 2: Skripte über Google Tag Manager geladen
Diagnose: Wenn GA4 in GTM und nicht direkt in Ihrem HTML konfiguriert ist, funktioniert type="text/plain" nicht – GTM steuert, wann GA4 geladen wird.
Lösung: Verwenden Sie die ConsentForge GTM-Vorlage mit Consent Mode v2. Siehe GTM-Einrichtungsanleitung. Mit Consent Mode warten GTM-Tags auf die Einwilligung, bevor sie ausgelöst werden.
Ursache 3: ConsentForge-Skript wird nach den blockierten Skripten geladen
Diagnose: Überprüfen Sie die Skriptreihenfolge im <head>. ConsentForge muss vor jedem Skript geladen werden, das es blockieren soll.
Lösung: Verschieben Sie das ConsentForge <script>-Tag ganz an den Anfang des <head>, vor alle Drittanbieter-Tags.
Ursache 4: Anbieterkategorie auf necessary gesetzt
Diagnose: Dashboard → Eigenschaft → Anbieter → den Anbieter suchen → Kategorie prüfen.
Lösung: Wenn der Anbieter eine Einwilligung erfordert, ändern Sie seine Kategorie auf analytics oder marketing.
Ursache 5: Skript verwendet einen anderen Lademechanismus
Einige Skripte injizieren sich selbst über document.write oder werden von anderen Skripten geladen. Diese können nicht über type="text/plain" blockiert werden.
Lösung: Blockieren Sie stattdessen das übergeordnete Skript. Falls das injizierende Skript in GTM liegt, verwenden Sie Consent Mode zur Steuerung.