Track
Attribution & AnalyticsLeitfadenFortgeschrittene

Offline-Conversions aus dem CRM: Uploads mit Originalzeitstempel, gehashten Kennungen und ehrlichen Werten

Wie du CRM-Ergebnisse — qualifizierte Leads, abgeschlossene Deals, Ladenkäufe — über die Import-Quelle von Track an Google Ads, Meta, LinkedIn, TikTok und Microsoft zurückspielst, welche Kennungen jede Plattform braucht und welche Zeitregeln gelten.

Von
Track-Redaktion
Veröffentlicht
Zuletzt fachlich geprüft
Lesedauer
3 Min. Lesezeit

Das Wichtigste in Kürze

  • Exportiere eine Zeile pro CRM-Ergebnis, sende sie mit einem CRM-Source-Key an den Server-Event-Endpunkt, und sie wird zum kanonischen Event mit Originalzeitstempel und erfasstem Consent-Stand.
  • Normalisiere und hashe Kennungen vor dem Senden; Zeilen mit Klartext-Kennungen scheitern an der Validierung, und ein Event ohne Consent-Information erreicht keine Werbe-Destination.
  • Jede Plattform hat einen eigenen Mechanismus, eine benötigte Kennung und eigene Zeitregeln; lade die Zeit des Ergebnisses hoch, nie die Exportzeit.
  • Speichere Click-IDs am Lead für deterministisches Matching, halte Werte echt, als dokumentierte Konstanten oder leer, und sende nachgelagerte Ergebnisse als eigene Events, statt das Browser-Event zu duplizieren.

Der Workflow

  1. Export aus dem CRM: eine Zeile pro Ergebnis mit Ergebniszeit, den vorhandenen Kennungen (E-Mail, Telefon, Click-ID falls am Lead gespeichert, Bestellnummer) und dem Wert.
  2. Senden der Zeilen an den Server-Event-Endpunkt mit einem für das CRM angelegten Source-Key. Jede Zeile wird zu einem kanonischen Event (qualified_lead, purchase, refund, subscribe) mit props.offline: true, dem Originalzeitstempel und dem Consent-Stand, den dein System für diese Person erfasst hat. Ein kleines Skript oder der ausgehende Webhook des CRM erledigt das; der Endpunkt nimmt Batches an und antwortet mit der Zahl angenommener Events oder einem Validierungsfehler, der das Feld benennt.
  3. Vor dem Senden normalisieren und hashen: E-Mails kleingeschrieben und getrimmt, Telefonnummern in E.164, dann SHA-256. Zeilen mit Klartext-Kennungen scheitern an der Validierung; nichts wird stellvertretend gehasht.
  4. Routen genau wie Browser-Events: Die Policy-Engine wendet den vom Event getragenen Consent-Stand je Destination an. Ein Event ohne Consent-Information trägt nur den Zweck „notwendig“ und erreicht keine Werbe-Destination.
  5. Zustellen über dieselben Connectoren, mit den Offline-Varianten jeder API.

Der Event-Debugger zeigt jedes importierte Event mit seiner Quelle, und der Destination-Monitor zeigt den Zustellstatus je Destination.

Je Plattform

PlattformMechanismusBenötigte KennungZeitregeln
Google AdsClick-Conversion-Uploadgclid/gbraid/wbraid oder gehashte E-Mail/Telefon (Enhanced Conversions for Leads)nach dem Klick, innerhalb des Fensters; nicht älter als das Click-through-Fenster der Aktion
MetaConversions API mit action_source: physical_store oder system_generatedgehashte E-Mail/Telefon, external_id; fbc falls gespeichertinnerhalb von 62 Tagen
LinkedInConversions APIgehashte E-Mail oder li_fat_idinnerhalb von 90 Tagen
TikTokEvents API mit event_source: offline und der ID eines Offline-Event-Setsgehashte E-Mail/Telefon7 Tage für Web, länger für Offline-Sets
MicrosoftConversions APImsclkid oder gehashte E-Mail/Telefoninnerhalb des Zielfensters
Affiliate-NetzwerkePostback mit gespeicherter Click-IDNetzwerk-Click-IDje Programm

Der hochgeladene Zeitstempel muss die Zeit sein, zu der das Ergebnis eingetreten ist, nicht die Exportzeit. Die Deals von gestern mit dem Zeitstempel von heute hochzuladen verschiebt die Attribution und kann Conversions aus dem Klickfenster schieben.

Speichere die Click-ID am Lead

Matching über die Click-ID ist zuverlässiger als über gehashte E-Mail. Kopiere die Click-ID-Parameter der Landing-URL (gclid, msclkid, fbclid, li_fat_id, ttclid) bei erteiltem Marketing-Consent in versteckte Formularfelder und speichere sie am Lead im CRM. Wird der Lead später abgeschlossen, trägt der Export die Click-ID und der Upload matcht deterministisch.

Werte: modellieren oder leer lassen

Ein qualifizierter Lead hat keinen Bestellwert. Optionen, die ehrlich bleiben:

  • Den Wert leer lassen; zählbasierte Optimierung funktioniert weiterhin.
  • Einen dokumentierten Erwartungswert je Lead-Stufe nutzen (etwa durchschnittliche Dealgröße × Abschlussquote), als Konstante im Destination-Mapping gesetzt und im Audit-Log sichtbar.
  • Den tatsächlichen Dealwert beim Abschluss hochladen, als separate Conversion.

Was Track nicht tut: Werte erfinden. Nicht gemappte Werte bleiben null, und ein Mapping, das eine fehlende Property referenziert, scheitert an der Validierung, statt einen Standard einzusetzen.

Deduplizierung mit Browser-Events

Sende die CRM-Zeile „Formular gesendet“ nicht als dasselbe Event, das der Browser schon geschickt hat; du würdest doppelt zählen, außer die Event-ID reist mit dem Lead. Sende nachgelagerte Ergebnisse (qualified_lead, purchase) als eigene Events, gemappt auf separate Conversion-Aktionen oder Regeln. Bei Käufen, die auch der Browser gesehen hat, behalte die Bestellnummer auf beiden, damit Plattformen, die über die Bestellnummer deduplizieren, sie zusammenführen.

Checkliste

  • Offen: Export enthält die Ergebniszeit in ISO 8601 mit Zeitzone
  • Offen: Kennungen vor dem Hashing normalisiert; bereits gehashte Spalten als gehasht markiert
  • Offen: Click-IDs beim Formularversand am Lead gespeichert
  • Offen: Werte entweder echt, dokumentierte Konstanten oder leer
  • Offen: Batch-Antworten geprüft: abgelehnte Zeilen korrigiert, Zustellung je Destination im Destination-Monitor bestätigt

Primärquellen

Dokumentationen und Standards, auf denen dieser Artikel beruht.

  1. Google Ads-Hilfe — Offline-Conversion-Importesupport.google.com
  2. Meta for Developers — Conversions API für Offline-Eventsdevelopers.facebook.com

War dieser Artikel hilfreich?

Fachlich verantwortlich

Track-Redaktion

Produkt & Engineering

Die Menschen hinter Track: Engineers und Analysts, die täglich an Server-Side Tracking, Consent-Tooling und Connector-Integrationen arbeiten.