solcom / docs / wiki / analytics-stack

Analytics-Stack

Terminbriefing für Tracking und Lead-Erfassung: Google Tag Manager als Tag-Layer, Usercentrics als Consent-Gate, GA4/Google Ads als Analytics-Ziele und Salesforce-Marketing-Cloud-Formulare als consent-pflichtige Lead-Embeds. Kritisch ist der Eventvertrag: nur erfolgreiche Lead-Übergaben zählen als Conversion, keine personenbezogenen Daten in Analytics-Payloads.

Last synced: 2026-06-29  ·  Tags: analytics, gtm, ga4, usercentrics, salesforce, tracking  ·  Audit: ../LOG.html

Projekt-Ist


Terminbriefing


ThemaAktuelle EinordnungFrage für den Termin
GTM-Konfiguration Container-ID ist gesetzt; Consent-Gate für den GTM-Loader existiert im Code. Welche Tags, Trigger und Variablen sind im GTM-Container bereits final? Wer besitzt den Container und wer macht Preview/Publish?
dataLayer Legacy-Neos hatte konkrete dataLayer-Events; Drupal hat noch keinen neuen verbindlichen Eventvertrag. Welche Legacy-Events müssen 1:1 zurückkommen: purchase, begin_checkout, view_item, Projektalert, Registrierung, Login, B2B-Anfrage, Karriere-Lead, Rückruf, Projektsuche?
Container-ID Drupal: GTM-54B6BWQP; Legacy-Kontext: GTM-ND5SFNH. Ist der neue Container bereits final befüllt, oder müssen Tags/Trigger/Variablen aus dem Legacy-Container übertragen werden?
Formular-Conversions Conversion darf erst nach erfolgreicher Annahme durch Zielsystem zählen, nicht beim Button-Klick. Welches technische Signal bestätigt Erfolg pro Formular: Drupal Webform Submit, Salesforce Callback, sichtbare Thank-you-Page oder serverseitiger Status?
Salesforce-Formulare Projekt-Ist ist Marketing-Cloud-Embed per SDC plus Usercentrics-Gating; Web-to-Lead wäre ein anderer Integrationspfad. Meint der Termin Salesforce Marketing Cloud, Web-to-Lead, Minggo, Lead Xperience oder mehrere Kanäle? Pro Kanal braucht es eigenen Tracking- und Consent-Vertrag.
Datenschutz Personenbezogene Daten dürfen nicht in GA4/GTM-Eventparameter wandern. Consent muss vor Marketing-/Analytics-Ausführung vorliegen. Welche Consent-Service-Namen sind verbindlich in Usercentrics, und wer prüft nach Consent-Wechsel im Browser die reale Script-Ausführung?
Attribution Legacy-Neos setzte 24h-Cookies für utm_time, utm_measurement, utm_ads, info und den verschlüsselten Ad-Click-ID-Cookie sol_act. Welche dieser Cookies braucht Drupal zum Launch wirklich, und wo werden gclid/msclkid nach erfolgreicher Conversion verarbeitet?

dataLayer-Aufschlüsselung


Der dataLayer ist der Übergabekanal von Drupal/Frontend zu GTM: Die Website pusht ein fachliches Ereignis mit Parametern, GTM liest diese Werte als Variablen aus und feuert daraus Tags nach GA4, Google Ads oder weitere Marketing-Ziele. Der wichtigste Schlüssel ist immer event; ohne stabilen Eventnamen gibt es keinen belastbaren GTM-Trigger.

Event-Katalog

EventQuelleAuslöser / BedeutungStatus
Pageview Legacy-Neos Automatischer Seitenaufruf im alten GTM-Setup. prüfen
Impression Legacy-Neos Sichtbarkeit von Projekt-/Listen-Elementen. prüfen
productClick Legacy-Neos Klick auf Projektdetail-Link oder Projektkarte. prüfen
addToCart Legacy-Neos Legacy-E-Commerce-Semantik für Bewerbung/Projektaktion. nicht blind kopieren
checkout Legacy-Neos Legacy-E-Commerce-Semantik für Bewerbungsprozess. nicht blind kopieren
transaction Legacy-Neos Legacy-Abschluss mit transactionId. durch GA4 ersetzen
purchase Legacy-Neos Legacy-Conversion für Bewerbung/Lead-Abschluss. durch Lead-Event ersetzen
begin_checkout Legacy / GA4 Bewerbungsprozess gestartet. optional
view_item Legacy / GA4 Projektangebot oder Stelle angesehen. empfohlen
project_view Drupal-Ziel Projektangebot angesehen; kann in GTM auf GA4 view_item gemappt werden. empfohlen
project_apply_start Drupal-Ziel Bewerbung gestartet; Interaktion, keine Conversion. empfohlen
project_apply_success Drupal-Ziel Bewerbung erfolgreich angenommen. Conversion
b2b_form_submit_success Drupal-Ziel B2B-Kontaktformular erfolgreich verarbeitet. Conversion
salesforce_form_submit_success Drupal-Ziel Salesforce-Formular erfolgreich angenommen; nur nutzbar, wenn Embed ein Success-Signal liefert. offen
project_alert_signup_success Drupal-Ziel Projektalert erfolgreich angelegt oder Double-Opt-In sauber definiert. Conversion
registration_success Drupal-Ziel Projektpartner-Registrierung erfolgreich. empfohlen
login_success Drupal-Ziel Login erfolgreich. optional
project_search Drupal-Ziel Projektsuche ausgeführt, idealerweise mit Trefferzahl. empfohlen

Mechanik

BausteinRolle im TrackingSOLCOM-Beispiel
Push Frontend oder Backend-seitig gerenderter JavaScript-Code schreibt ein Ereignis in window.dataLayer. dataLayer.push({...})
Event Name des fachlichen Ereignisses. Darauf hören GTM-Trigger. lead_submit_success
Parameter Kontextwerte zum Ereignis. Diese Werte werden in GTM als Data-Layer-Variablen ausgelesen. form_id, lead_type, project_id
Trigger GTM-Regel: Wenn event und ggf. weitere Bedingungen passen, wird ein Tag ausgelöst. event == lead_submit_success
Tag Zielsystem-Aufruf, z. B. GA4 Event oder Google Ads Conversion. GA4 generate_lead

Minimaler sauberer Push für eine erfolgreiche Lead-Übergabe:

window.dataLayer = window.dataLayer || [];

window.dataLayer.push({
  event: 'lead_submit_success',
  form_id: 'contact_b2b',
  form_provider: 'drupal_webform',
  lead_type: 'b2b_contact',
  success_state: 'accepted',
  consent_category: 'marketing'
});

Nicht als Conversion zählen: Klick auf Absenden, Fokus im Formular, clientseitiger Validierungsversuch. Als Conversion zählen: Zielsystem hat den Lead angenommen, oder Drupal zeigt eine belastbare Success-Route nach erfolgreichem Submit.

Website-AktiondataLayer-EventHinweis zur Abnahme
Projekt angesehen project_view GA4-Ziel kann view_item sein; project_id nur verwenden, wenn kein Personenbezug entsteht.
Bewerbung gestartet project_apply_start Interaktions-Event, keine Conversion. Trigger auf echten Startpunkt legen, nicht auf bloße Sichtbarkeit des CTA.
Bewerbung erfolgreich project_apply_success Conversion-Kandidat. Erfolgssignal muss aus Webform/Personio/Minggo-Prozess kommen, nicht aus Button-Klick.
B2B-Formular erfolgreich b2b_form_submit_success Conversion-Kandidat. Keine Felder wie Name, E-Mail, Telefon oder Nachricht in den Push schreiben.
Salesforce-Formular erfolgreich salesforce_form_submit_success Nur möglich, wenn Salesforce-Embed ein belastbares Success-Signal liefert. Sonst nur Form-View oder CTA-Click messen.
Projektalert angelegt project_alert_signup_success Erst nach erfolgreicher Anlage beziehungsweise Double-Opt-In-Schritt sauber definieren.
Registrierung erfolgreich registration_success GA4-Ziel kann sign_up sein. Keine Account-ID oder E-Mail in Analytics senden.
Projektsuche ausgeführt project_search Suchbegriff und Trefferzahl sind fachlich nützlich; Suchbegriff auf personenbezogene Eingaben prüfen.
PII-Grenze. Kein email, phone, name, Freitext, CV-Inhalt oder Salesforce-/Personio-Personen-ID in dataLayer-Payloads. Auch gehashte E-Mail/Telefonnummern sind nicht automatisch harmlos; sie brauchen Ads-Zweck, Consent und fachliche Freigabe.

Aggregierte Quellen


StrandRefInhalt
context 0001-it-landscape Marketing-/Lead-Landschaft: Usercentrics, Salesforceformular, GTM, Google Ads, GA, Lead Xperience, Salesforce Marketing Cloud, Kundendaten aus Leads.
context 0003-traffic-baseline Traffic-Baseline ~40k Unique Visitors/Monat via GA4 (Stand Snapshot); Größenordnung für Analytics-Setup.
context 0009-neos-projektportal-flow-inventory Legacy-Vertrag für GTM, dataLayer, Universal-Analytics-Measurement-Protocol-Calls, UTM-/Ads-Cookies, gclid/msclkid und hashed email/phone. Wichtige Basis für Migrationsabgleich.
stories F-200-analytics-konfiguration GA4-Aktivierung, Conversion-Tracking, Klickpfade; Datenschutz-Kopplung via F-210/F-300. Cross-System-Tracking ist Wunsch, aber nicht als fertige Spezifikation dokumentiert.
stories F-210-data-privacy-cookie-consent Cookie-Banner und DSGVO-Opt-In; Klaro/Usercentrics-Drift ist dokumentiert. Aktueller Codepfad nutzt Usercentrics-Bridges.
stories F-310-google-tag-manager GTM-Container via google_tag ≥2.0; Container-ID-Konfiguration; Voraussetzung für Matelso. Status: code only.
stories F-320-calltracking-matelso Matelso Calltracking via GTM oder direkt im Theme; Nummern-Replacement-Region offen. Status: gap.
stories F-330-minggoformular Externes Minggo-Formular mit Datenfluss Minggo → Salesforce/Bullhorn; kein Drupal-Datendurchsatz. Tracking muss separat vom Salesforce-Marketing-Cloud-Embed betrachtet werden.
stories F-390-lead-xperience Externe Lead-Management-Lösung im Karriere-Bereich; Status Gap/abhängig von fachlicher Entscheidung.
adr ADR-0054-salesforce-marketing-form Ursprüngliche Topologie für Salesforce-Marketing-Cloud-Formulare als Canvas-SDC. Code-Ist hat danach Usercentrics-Gating für Host- und Inline-Scripts ergänzt.
external Google dataLayer Primärdoku für strukturierte Übergabe von Events und Variablen an GTM.
external Google Consent Mode Primärdoku für Consent-Signale an Google-Tags. Wichtig: ersetzt kein Consent-Management, sondern verarbeitet dessen Signal.
external GA4 Events Primärdoku zu GA4-Events und Parametern; Projekt braucht daraus eine konkrete Eventmatrix.
external Google Analytics PII Policy Personenbezogene Daten wie E-Mail, Name oder Telefonnummer dürfen nicht an Google Analytics gesendet werden.

Operative Kurzfassung


Für Termin und Launch-Abnahme:

Was diese Page nicht ist


Keine Decision. Wahl zwischen GTM-First, direkter Einbindung, Web-to-Lead, Marketing-Cloud-Embed oder weiteren Lead-Tools gehört in ADR/Story-Refinement — nicht hier.
Kein DSGVO-Leitfaden. Datenschutz-Anforderungen, Rechtsgrundlagen und Consent-Texte müssen fachlich/juristisch freigegeben werden; diese Page beschreibt technische Prüfstellen.
Keine GTM-Container-Dokumentation. Der tatsächliche Container-Inhalt liegt außerhalb des Repos. Diese Page benennt, welche Fragen im GTM-Preview und in Usercentrics geprüft werden müssen.