Tracking für Websites und Anwendungen implementieren
Entscheiden, wo Events gesendet werden
Ein Platform-Projekt installiert kein Tracking. Deine Website, dein Tag Manager oder dein Backend muss Events erzeugen und senden. Wähle in Tracking setup den Ort, die Methode und den Ingestion Key für das ausgewählte Environment.
| Integration | Ausführungsort | Key | Installation |
|---|---|---|---|
| Direktes JavaScript | Browser des Website-Besuchers | Browser-Key | Generiertes Runtime-Snippet auf der Website installieren |
| Web-GTM | Web-Tag-Manager-Container | Browser-Key | Generiertes Custom-HTML-Tag installieren |
| Adobe Launch | Tag-Library der Website | Browser-Key | Generierte Core-Custom-Code-Aktion ergänzen |
| JSON Server Tag | Server-GTM-Container | Server-Key | Ausgehenden HTTP-Request im Tag konfigurieren |
| HTTP-Integration | Eigenes Backend oder Relay | Server-Key | JSON an den Ingestion-Endpoint senden |
Für ein Backend hilft die HTTP-API-Anleitung. Für den Browser folgen die Schritte unten. Ein Administrator erstellt oder wählt den Key. Dieser bestimmt Organization, Projekt und Environment.
1. Browser-Key und erlaubte Origins einrichten
Erstelle in Ingestion keys einen Browser-Key. Trage jede sendende Website-Origin
ein, zum Beispiel https://www.example.com und https://shop.example.com. Eine Origin
enthält Protokoll, Hostname und einen eventuell abweichenden Port. Pfade und Wildcards
gehören nicht hinein. Verwende HTTPS. Für lokale Entwicklung auf localhost oder
Loopback-Adressen ist HTTP möglich.
Ein Browser-Key ist für Website-Besucher sichtbar. Private Server-Keys gehören weder in Browser-JavaScript noch in Web-GTM oder Adobe Launch. Origin-Regeln steuern den Browser-Zugriff. Sie machen den Key nicht geheim und verhindern nicht, dass ein Client außerhalb des Browsers einen Request nachahmt.
Trenne Test und Produktion durch eigene Environments und Keys. Für Tests auf
http://localhost:8080 muss genau diese Origin im Test-Environment erlaubt sein.
2. Generierte Runtime installieren
Wähle in Tracking setup die Browser-Methode und den Key. Durchlaufe anschließend die Runtime-Einstellungen. Verwende das generierte Snippet für dein Environment. Übernimm keine Keys oder Schema-Versionen aus einem anderen Projekt.
| Library Hosting | Bereitstellung |
|---|---|
| Self-hosting | Minifiziertes JavaScript herunterladen, auf der Website bereitstellen und die Library URL eintragen |
| Inline | Generiertes Snippet einschließlich Library kopieren |
| jsDelivr | Festen Release unter Library Version wählen und die erzeugte Library URL verwenden |
Erlaube die gewählte Library und den Ingestion-Endpoint gegebenenfalls in der Content Security Policy deiner Website. Verwende für Web-GTM die generierte Custom-HTML-Variante. Für Adobe Launch gehört der generierte Custom Code ohne umgebende HTML-Script-Tags in die Aktion. Bei direktem JavaScript muss die Initialisierung vor den Event-Aufrufen installiert sein. Der generierte Sender wartet vor dem Versand auf die Library.
Lege die Trigger bewusst fest. Die Runtime entscheidet nicht, welche fachlichen Aktionen Events erzeugen. Bei einer Single-Page-Anwendung müssen Seiten-Events bei relevanten Routenwechseln ausgelöst werden. Prüfe, dass eine Navigation nicht doppelt sendet.
3. Identität und Consent anbinden
Das Setup bietet im Browser erzeugte Geräte-IDs, IDs aus deiner eigenen Integration und einen Modus ohne vom Browser erzeugte Geräte-ID. Die Erzeugung von Session-IDs ist optional. Stelle Platform bei Aktivierung ebenfalls auf mitgelieferte Sessions um. Andernfalls kann Reporting Sessions anhand von Identität und Inaktivität ableiten.
Wähle für erzeugte IDs Cookie oder LocalStorage unter Shared ID storage. LocalStorage gehört zu genau einer Origin. Verwende für gemeinsame Cookies auf Subdomains übereinstimmende Speichereinstellungen und eine passende Cookie-Domain. Verschiedene Hauptdomains teilen diese IDs nicht. Trenne Test- und Produktionsspeicher.
Wenn das generierte Snippet die Browser-Identitätsverwaltung enthält, verbinde deinen
Consent Manager mit der erzeugten Funktion window.setTrackingIdentityConsent:
// Aus der Consent-Integration aufrufen, wenn ID-Speicherung erlaubt ist.
window.setTrackingIdentityConsent(true)
// Bei Widerruf dieser Erlaubnis aufrufen.
window.setTrackingIdentityConsent(false)
Das steuert ID-Speicherung und Anreicherung durch die Runtime. Es stoppt nicht den Event-Versand und bricht keine laufenden Requests ab. Steuere Erzeugung und Versand von Events separat über deine Consent-Integration. Das Consent-Filtering der Destination ist eine weitere Prüfung anhand der Boolean-Felder im veröffentlichten Schema.
Wenn deine Installation tägliche IDs ohne Browser-Speicherung anbietet, beachte die
Setup-Anleitung für X-DDA-Identity-Mode: daily und die benötigten Schema-Mappings.
Die Auswahl der Option allein aktiviert die Funktion nicht. Prüfe die Tracking-Diagnosen
des Environments mit frischen Events.
4. Eigene Events senden
Rufe nach Installation des generierten Snippets dessen Sender aus deinem Trigger auf:
window.sendTrackingEvent({
event: {name: 'button_click'},
button: {id: 'start_trial'}
}).catch(function (error) {
console.error('Tracking request failed', error)
})
Das ist eine Beispielstruktur, kein allgemeingültiges Schema. Ordne event.name als
Event name zu und definiere button.id als String im Schema für button_click.
Ergänze weitere Pflichtfelder deines Schemas. Ein abgefangener Transportfehler ist
nur ein Fehlersignal. Prüfe auch die Ingestion-Antwort und die
Ergebnisse pro Event.
Sende vor der ersten Schema-Veröffentlichung repräsentative Beispiele ohne Versionsheader. Prüfe Discovery, ordne die Felder zu und veröffentliche das Schema. Ergänze danach mit Update tracking die genaue veröffentlichte Version in deiner bestehenden Implementierung. Veröffentliche den geänderten Website-Code, Tag-Container oder die Launch-Library.
5. Den gesamten Weg prüfen
Löse ein neues Event im Test-Environment aus. Prüfe das gesendete JSON und die Antwort in den Browser-Entwicklertools oder der Tag-Manager-Preview. Key, Origin und Schema-Version müssen zusammenpassen.
sampled_for_schema_discovery bedeutet Strukturermittlung. validated_only bedeutet
Prüfung ohne Speicherung. queued bestätigt die Annahme zur Verarbeitung, nicht die
Auslieferung ins Warehouse. Schließe die Destination-Einrichtung
ab, löse frische Events aus und prüfe sie vor der Reporterstellung im Warehouse.