Skripte bis zur Einwilligung blockieren: Drei Methoden im Vergleich

Das Problem: Tags, die zu früh feuern

Ein Consent-Banner funktioniert nur, wenn die Tags dahinter die Entscheidung des Besuchers respektieren. Der häufigste Fehler ist simpel: Das Banner erscheint, aber Analytics- und Werbeskripte sind bereits geladen und haben Kennungen gesetzt, bevor jemand etwas angeklickt hat. Die Lösung heißt, Skripte bis zur Einwilligung zu blockieren. Dafür gibt es drei praktikable Wege.

Methode 1: Den Skripttyp umschreiben

Browser führen ein Script-Element nur aus, wenn sein Typ ein JavaScript-Typ ist. Wenn Sie den Typ auf text/plain ändern, ignoriert der Browser das Skript. Anschließend fügen Sie ein Data-Attribut hinzu, das festhält, zu welcher Einwilligungskategorie das Skript gehört:

Geeignet für: eine Handvoll bekannter Inline- oder externer Skripte in Ihren Templates. Achtung: Skripte, die von anderen Skripten eingeschleust werden, durchlaufen Ihre Templates nie und werden daher nie umgeschrieben.

Methode 2: Tags in einem Tag Manager steuern

Liegen Ihre Tags im Google Tag Manager oder einem ähnlichen Tool, können Sie den Container auf der Seite lassen und das Auslösen über einwilligungsbewusste Trigger steuern. Jedes Tag erhält eine Einwilligungsanforderung, und der Tag Manager feuert es nur, wenn der passende Einwilligungsstatus erteilt ist. Der große Vorteil ist die zentrale Kontrolle: Das Marketing kann Tags hinzufügen, ohne Templates anzufassen, und die Regel wandert mit dem Tag.

Geeignet für: Websites mit vielen Marketing-Tags. Achtung: fest eincodierte Skripte außerhalb des Containers und Custom-HTML-Tags, die ihrerseits weitere Skripte laden.

Methode 3: Skripte bei Einwilligung dynamisch laden

Hier entfernen Sie die Script-Tags komplett aus der Seite und schreiben eine Funktion, die sie erst nach einem Consent-Ereignis einfügt. Das ist die sauberste Option für Single-Page-Anwendungen und für Entwickler, die volle Kontrolle wollen:

  1. Hören Sie auf den Consent-Callback Ihrer CMP.
  2. Prüfen Sie, welche Kategorien erteilt wurden.
  3. Erstellen Sie ein Script-Element, setzen Sie seine Quelle und hängen Sie es an das Dokument an.
  4. Führen Sie Initialisierungscode im Load-Handler des Skripts aus.

Geeignet für: moderne Anwendungen mit Build-Schritt. Achtung: Das Vergessen wiederkehrender Besucher, deren gespeicherte Entscheidung beim Seitenaufruf das Laden ohne neuen Klick auslösen muss.

Widerruf behandeln

Blockieren vor der Einwilligung ist nur die halbe Arbeit. Widerruft ein Besucher seine Einwilligung später, hören Sie auf, die Tools aufzurufen, und stellen Sie sicher, dass sie keine Kennungen weiter lesen oder schreiben. Ein Skript von der Seite zu entfernen, entfernt keinen Code, der bereits im Speicher läuft; ein Neuladen nach dem Widerruf ist daher oft der einfachste zuverlässige Weg.

Welche Methode sollten Sie wählen?

So testen Sie es

  1. Öffnen Sie ein privates Fenster mit geleertem Cache.
  2. Öffnen Sie die Entwicklertools des Browsers auf den Tabs Network und Application, bevor Sie die Seite laden.
  3. Laden Sie die Seite und berühren Sie das Banner nicht. Bestätigen Sie, dass keine Analytics- oder Werbeanfragen gesendet werden und keine zugehörigen Cookies oder Speichereinträge erscheinen.
  4. Akzeptieren Sie nur eine Kategorie und bestätigen Sie, dass nur die passenden Skripte laden.
  5. Lehnen Sie alles ab, laden Sie neu und wiederholen Sie die erste Prüfung.
  6. Widerrufen Sie die Einwilligung und prüfen Sie das oben beschriebene Verhalten.

Wo FlexyConsent ins Spiel kommt

FlexyConsent unterstützt IAB TCF 2.4 und Google Consent Mode v2 und ist eine von Google zertifizierte CMP (CMP ID 317). Für welche Blockiermethode Sie sich auch entscheiden: Die Aufgabe des Banners ist es, Ihrem Code ein klares Signal zu geben, was der Besucher gewählt hat. Ihre Aufgabe ist es sicherzustellen, dass jedes Skript sich daran hält.

Wichtigste Erkenntnisse

← Blog Alle lesen →