Werbeplattformen und Webshops

TikTok Events API für Shopify: Einrichtung und Deduplizierung

Die TikTok Events API sendet Käufe aus Shopify von deinem Server an TikTok. Hier erfährst du alles zu den Events, zu ttclid und _ttp, zur Deduplizierung mit event_id und zu Tests.

·Aktualisiert am ·10 Min. Lesezeit·Vom ROASaurus-Team

Das Wichtigste in Kürze
  • Die TikTok Events API sendet Conversion-Events von einem Server an TikTok, sodass ein Kauf nicht davon abhängt, dass das TikTok-Pixel im Browser des Käufers läuft.
  • TikTok hat CompletePayment in Purchase umbenannt, akzeptiert aber weiterhin den alten Namen; für die Deduplizierung müssen das Pixel und der Server denselben Namen verwenden.
  • TikTok dedupliziert ein Pixel-Event und ein Server-Event, wenn beide denselben Eventnamen und dieselbe event_id haben, und erfasst die erste Kopie, die es erhält.
  • Die Click-ID ttclid, das Cookie _ttp, gehashte E-Mail-Adresse und Telefonnummer, die IP-Adresse und der User Agent sind die Schlüssel, mit denen TikTok ein Event einer Person zuordnet.
  • Teste zuerst mit einem Test-Event-Code und trenne das Pixel in jeder anderen App, die es sendet, sonst zählt TikTok Käufe doppelt.

Die TikTok Events API ist die Server-zu-Server-Verbindung von TikTok für Conversion-Daten. Statt sich nur auf das TikTok-Pixel im Browser des Käufers zu verlassen, sendet dein Shop oder ein Tool wie ROASaurus Events wie Käufe direkt an TikTok. TikTok empfiehlt, die Events API neben dem Pixel zu betreiben und die beiden mit einer gemeinsamen event_id zu deduplizieren.

Dieser Leitfaden behandelt, was die Events API aus einem Shopify-Shop sendet, die Eventnamen Purchase und CompletePayment, die Click-ID und das Cookie, anhand derer TikTok zuordnet, wie die Deduplizierung funktioniert, wie du im TikTok Events Manager testest und wie du alles in ROASaurus einrichtest.

Was ist die TikTok Events API?

Das TikTok-Pixel ist ein Skript in deinem Shop. Es löst Events im Browser des Käufers aus und zählt daher nur, was passiert, solange das Skript lädt und läuft. Ein Adblocker, ein Skriptfehler oder ein Käufer, der den Tab schließt, bevor die Bestellbestätigung lädt, können es alle stoppen.

Die Events API sendet dieselbe Art von Event von einem Server aus. In Shopify ist die verlässlichste Aufzeichnung eines Kaufs die Bestellung selbst. Shopify meldet jede bezahlte Bestellung per Webhook, egal ob das Browser-Skript lief oder nicht. Das ist die Idee hinter Server-Side-Tracking in Shopify.

Die beiden sind keine Alternativen. TikToks Empfehlung lautet, Events über beide zu teilen, sie entlang des Einkaufswegs konsistent zu halten und TikTok die Duplikate entfernen zu lassen.

TikTok-Pixel (Browser)
  • Läuft im Browser des Käufers
  • Kann durch Adblocker und Skriptfehler gestoppt werden
  • Teilt IP-Adresse und User Agent standardmäßig
  • Löst Seitenaufrufe und Browsing-Events aus, sobald sie passieren
Events API (Server)
  • Läuft auf einem Server, aus deinen Bestelldaten
  • Hängt nicht davon ab, dass ein Skript im Browser lädt
  • Der Absender muss IP-Adresse und User Agent ergänzen
  • Sendet jede bezahlte Bestellung, auch wenn das Pixel nicht ausgelöst hat
TikTok empfiehlt beides: das Pixel für Browser-Signale, die Events API für jede Bestellung, dedupliziert mit einer event_id.

Welche Events sendet ROASaurus an TikTok?

Vier Momente in einem Shopify-Shop sind für die Optimierung von TikTok wichtig: eine Produktansicht, ein Hinzufügen zum Warenkorb, der Beginn des Checkouts und der Kauf. ROASaurus sendet alle vier an die Events API und löst dieselben vier über das TikTok-Pixel aus, mit denselben Event-IDs. Seitenaufrufe laufen nur über das Pixel.

Aktion des KäufersTikTok-EventPixel (Browser)Events API (Server)
Ruft eine Seite aufSeitenaufrufJaNein
Sieht sich ein Produkt anViewContentJaJa
Legt etwas in den WarenkorbAddToCartJaJa
Startet den CheckoutInitiateCheckoutJa, mit dem Checkout-PixelJa
Schließt eine Bestellung abCompletePaymentJa, mit dem Checkout-PixelJa, aus der Bestellung
Jedes Event, das auf beiden Wegen gesendet wird, trägt eine Event-ID, sodass TikTok eine einzelne Kopie behalten kann.

In den Pixel-Einstellungen kannst du Server-Events abwählen, die du nicht senden möchtest, und Filter hinzufügen, etwa ein Land oder einen Mindestbestellwert.

Purchase oder CompletePayment?

TikTok hat sein Kauf-Event umbenannt. Der aktuelle Name ist Purchase. Der alte Name, CompletePayment, funktioniert weiterhin: TikTok wandelt alte Namen auf seiner Seite um, zeigt sie in Reporting, Zielgruppen und Optimierung unter dem neuen Namen an und sagt, dass CompletePayment unbefristet unterstützt wird. TikTok bittet darum, bei neuen Pixel-Einrichtungen Purchase zu verwenden.

ROASaurus sendet CompletePayment, im Pixel und in der Events API. Im TikTok Events Manager und im Ads Manager erscheinen diese Events als Purchase. Für die Deduplizierung zählt, dass beide Kopien eines Kaufs denselben Eventnamen verwenden, und das tun sie.

Wie ordnet TikTok ein Event einem Käufer zu?

Ein Event hilft deinen Kampagnen nur, wenn TikTok es der Person zuordnen kann, die die Anzeige gesehen oder angeklickt hat. TikTok nennt diese Kennungen Match Keys, und sein Leitfaden zur Events API bittet darum, alle relevanten Match Keys zurückzugeben, um die Match-Raten zu erhöhen. Der Events Manager zeigt das Ergebnis als Score für die Event Match Quality, ein gewichteter Durchschnitt dafür, wie oft jeder Match Key vorhanden ist.

Match KeyWoher er stammtGesendet als
ttclidEine Click-ID, die TikTok der URL der Landingpage hinzufügt, wenn jemand eine Anzeige anklicktUnveränderter Wert
Cookie _ttpEin First-Party-Cookie des TikTok-Pixels auf der Domain deines ShopsUnveränderter Wert
E-MailDie Shopify-BestellungSHA-256-Hash
TelefonDie Shopify-BestellungSHA-256-Hash
external_idDie Shopify-Kunden-ID oder die ROASaurus-Besucher-IDSHA-256-Hash
IP-Adresse und User AgentDie Checkout-Sitzung des Käufers oder die BestellungUnveränderter Wert
TikTok verlangt, dass E-Mail-Adresse, Telefonnummer und external_id gehasht werden. Click-ID, Cookie, IP-Adresse und User Agent werden unverändert gesendet.

TikTok weist darauf hin, dass das Pixel IP-Adresse und User Agent standardmäßig teilt, die Events API sie aber von Hand ergänzt haben möchte. ROASaurus entnimmt sie der Checkout-Sitzung des Käufers oder, falls es keine Sitzung gab, der Bestellung. Zwei weitere Schlüssel brauchen in Shopify besondere Aufmerksamkeit.

ttclid: die TikTok-Click-ID

Klickt ein Käufer eine TikTok-Anzeige an, hängt TikTok ttclid an die URL der Landingpage an. Speichert dein Shop sie nicht auf dieser ersten Seite, ist sie weg, bis die Bestellung mehrere Seiten später eingeht. ROASaurus liest ttclid auf der Landingpage, speichert sie zusammen mit der Besucher-ID, schreibt sie in den Shopify-Warenkorb und fügt sie dem Server-Event hinzu, wenn die Bestellung eingeht.

_ttp: das Pixel-Cookie

Das Cookie _ttp ist ein First-Party-Cookie, das das TikTok-Pixel auf deiner Domain verwendet. ROASaurus liest es im Storefront und im Checkout und sendet es als ttp im Server-Event. Es ist ein weiterer Grund, das Pixel neben der Events API laufen zu lassen.

Beispiel: ein Kauf, wie ROASaurus ihn an die Events API sendet (Hashes gekürzt)
{
  "event_source": "web",
  "event_source_id": "CXXXXXXXXXXXXXXXXXXX",
  "data": [{
    "event": "CompletePayment",
    "event_time": 1793016000,
    "event_id": "order-5512345678901",
    "user": {
      "email": "a3f1…9c2e",
      "phone": "7b40…11d8",
      "external_id": "e05c…4a7f",
      "ttclid": "E.C.P.v3…",
      "ttp": "2Xb7…",
      "ip": "203.0.113.24",
      "user_agent": "Mozilla/5.0 (iPhone; …)"
    },
    "page": { "url": "https://example-store.com/checkouts/…/thank-you" },
    "properties": {
      "currency": "USD",
      "value": 84,
      "content_type": "product",
      "contents": [{ "content_id": "44123456789", "content_name": "Linen shirt", "quantity": 2, "price": 42 }],
      "order_id": "5512345678901"
    }
  }]
}

Wie funktioniert die Deduplizierung?

Melden das Pixel und die Events API denselben Kauf, erhält TikTok zwei Events für eine Bestellung. Um nur eines zu behalten, braucht TikTok zwei identische Werte in beiden Kopien: den Eventnamen und die event_id. TikTok erfasst dann die erste Kopie, die es erhält, für Messung und Reporting, sodass die Bestellung einmal zählt. Das funktioniert für übereinstimmende Kopien, die innerhalb eines Zeitfensters von 48 Stunden nach der ersten eintreffen.

ROASaurus bildet die Event-ID für einen Kauf aus der Shopify-Bestell-ID. Der Kauf aus der Bestellung 5512345678901 hat die Event-ID order-5512345678901, im Checkout-Pixel und auf dem Server. Storefront-Events wie Produktansichten und das Hinzufügen zum Warenkorb erhalten beim Auftreten eine zufällige ID, die sich die Browser-Kopie und die Server-Kopie teilen.

Checkout abgeschlossenDas Checkout-Pixel löst CompletePayment mit der event_id order-5512345678901 aus.
Bestellung bezahltShopify sendet die bezahlte Bestellung per Webhook an ROASaurus.
Events APIROASaurus sendet CompletePayment mit derselben event_id und gehashten Bestelldaten.
TikTokGleicher Name und gleiche event_id: Ein Kauf wird gezählt.
Zwei Kopien eines Kaufs erreichen TikTok. Die gemeinsame event_id lässt TikTok ihn einmal zählen.

Was das für die Zahlen bedeutet: Nimm einen Beispiel-Shop mit 200 Bestellungen in einer Woche. Das Pixel löst bei 150 davon aus. Die anderen 50 Käufer haben einen Adblocker genutzt, Marketing-Cookies abgelehnt oder die Seite verlassen, bevor die Bestätigungsseite geladen wurde. Die Events API sendet alle 200.

Purchase-Events, die TikTok in einer Woche erfasst (Beispiel-Shop, 200 Bestellungen)
Nur Pixel
150
Nur Events API
200
Pixel und Events API, unterschiedliche IDs
350
Pixel und Events API, gemeinsame event_id
200
Ohne gemeinsame event_id werden 150 Bestellungen doppelt gezählt. Mit ihr erfasst TikTok jede der 200 Bestellungen einmal.

Die 350 sind die Zahl, die Sorgen machen sollte. Sie würde die Kaufzahl von TikTok und den darauf basierenden ROAS um 75% über die Realität heben, weil 350 ÷ 200 = 1.75. TikTok nutzt diese Events auch für Optimierung und Targeting, sodass sein Bidding aus 150 Käufen lernen würde, die nie stattgefunden haben.

Warum werden Käufe in Shopify doppelt gezählt?

Doppelzählung entsteht, wenn TikTok zwei Kopien eines Kaufs erhält, die es nicht zuordnen kann. Prüfe diese Ursachen, bevor du einem Sprung bei den TikTok-Käufen vertraust:

  • Zwei Tools senden dasselbe Pixel. Die App des TikTok-Vertriebskanals in Shopify kann ebenfalls Events für dein Pixel senden. Ihre Event-IDs stimmen nicht mit den IDs überein, die ROASaurus verwendet, daher zählt TikTok jede Bestellung doppelt. Trenne das Pixel in dieser App.
  • Das Pixel steckt auch im Code deines Themes. Ein ins Theme eingefügtes Pixel-Snippet löst eigene Events ohne deine Event-IDs aus. Entferne es und lass ein einziges Tool das Pixel laden.
  • Eine Seite hat keine event_id. Ein Server-Kauf ohne event_id oder mit einer neuen zufälligen ID lässt sich der Pixel-Kopie nicht zuordnen.
  • Die Eventnamen unterscheiden sich. TikTok dedupliziert nur identische Events. Beide Kopien eines Kaufs müssen denselben Eventnamen verwenden.

Der Hilfeartikel zur Doppelzählung geht dieselben Prüfungen für Meta und die anderen Plattformen durch.

Wie testest du die Events API im TikTok Events Manager?

Der TikTok Events Manager hat einen Tab Test events für Browser- und Server-Events. Nutze ihn, bevor du dich auf die Daten verlässt:

  1. Einen Test-Event-Code kopieren

    Öffne im TikTok Events Manager dein Pixel und gehe zu Test events. Kopiere den Test-Event-Code.

  2. In ROASaurus einfügen

    Öffne Tracking & platforms, bearbeite das TikTok-Pixel und füge den Code in das Feld Test event code ein. Server-Events tragen ihn jetzt.

  3. Eine Testbestellung aufgeben

    Besuche deinen Shop, sieh dir ein Produkt an, lege es in den Warenkorb und schließe eine Bestellung ab.

  4. Beide Seiten prüfen

    Filtere in Test events nach Browser- und nach Server-Events. Du solltest den Kauf von beiden sehen. In ROASaurus zeigt das Event log jede Server-Auslieferung als gesendet oder fehlgeschlagen.

  5. Den Testcode entfernen

    Lösche den Test-Event-Code, wenn du fertig bist, damit deine Live-Server-Events nicht mehr als Test-Events gesendet werden.

TikTok kann eine Anfrage mit HTTP 200 beantworten und das Event trotzdem ablehnen, mit einem Fehlercode im Antwort-Body. ROASaurus liest diesen Code, sodass ein abgelehntes Event im Event log als fehlgeschlagen erscheint, statt unbemerkt durchzugehen.

Öffne nach einem Tag mit Live-Traffic die Übersicht des Pixels im Events Manager. Sie listet jedes Event mit seiner Verbindungsmethode, seinem Score für die Event Match Quality und dem Zeitpunkt des letzten Empfangs auf. Die Eventdetails enthalten Informationen zu Matching und Deduplizierung, und Diagnostics listet Qualitätsprobleme mit Hinweisen zur Behebung auf.

So richtest du die TikTok Events API in Shopify mit ROASaurus ein

Du brauchst einen Shopify-Shop mit der ROASaurus-App und Zugriff auf den TikTok Events Manager. Die Seite zur TikTok-Integration listet jedes Feld auf, das ROASaurus sendet.

  1. Shopify-Shop verbinden

    Gehe zu Add a store › Shopify, klicke auf Install app und aktiviere im Theme-Editor die ROASaurus-App-Einbettung. Die Einbettung erfasst ttclid und das Cookie _ttp auf jeder Seite. Die Shopify-Einrichtungsanleitung zeigt jeden Schritt.

  2. Das Checkout-Pixel hinzufügen

    Füge im Shopify admin › Settings › Customer events ein Custom Pixel namens ROASaurus hinzu und füge das Snippet von deiner Seite Tracking & platforms ein. Es löst das TikTok-Pixel im Checkout aus, einschließlich der Browser-Kopie des Kaufs.

  3. Ein Zugriffstoken erstellen

    Öffne im TikTok Events Manager dein Pixel und erzeuge in dessen Einstellungen ein Zugriffstoken für die Events API. Kopiere das Token und den Pixel-Code.

  4. Das TikTok-Pixel in ROASaurus hinzufügen

    Gehe zu Tracking & platforms, klicke bei der TikTok-Karte auf Add pixel und fülle Pixel code und Events API access token aus. Lass Also load the browser pixel (recommended, deduplicated) angehakt, damit Browser- und Server-Events dieselben IDs teilen.

  5. Ausgaben hinzufügen (optional)

    Trage Advertiser ID for spend und ein Marketing API token ein. ROASaurus importiert dann die TikTok-Ausgaben, sodass TikTok-Kampagnen ROAS und CPA neben deinen anderen Kanälen zeigen.

  6. Testen, dann live gehen

    Sende eine Testbestellung mit einem Test-Event-Code wie oben beschrieben und entferne den Code danach wieder.

Ist Respect visitor consent aktiviert, was die Standardeinstellung ist, richtet sich ROASaurus nach der Entscheidung des Käufers im Cookie-Banner von Shopify. Lehnt ein Käufer Marketing-Cookies ab, lädt ROASaurus das TikTok-Pixel für ihn nicht, setzt keine Besucher-ID, sodass seine Klicks ihm nicht zugeordnet werden, und sendet seine Browsing-Events nicht an TikTok. Seine bezahlte Bestellung wird weiterhin vom Server an die Events API gesendet, mit gehashten Bestelldaten sowie der IP-Adresse und dem User Agent der Bestellung, aber ohne ttclid oder _ttp. Der Leitfaden zu Einwilligung und Datenschutz erklärt, was gespeichert und gesendet wird.

Sind die Ausgaben synchronisiert, erscheinen TikTok-Kampagnen in den Attributionsberichten neben Meta, und die Creative-Analysen ergänzen die Videostatistiken von TikTok pro Anzeige. ROASaurus ordnet Bestellungen den Anzeigenklicks und UTMs zu, die es erfasst hat, und zählt View-Through-Conversions nur als modellierte Schätzung im Modell Clicks & views, daher weichen seine Summen meist vom TikTok Ads Manager ab. Zu den anderen serverseitigen Plattformen siehe den Leitfaden zur Pinterest Conversions API und den Leitfaden zur Meta Conversions API.

Quellen

  1. TikTok For Business: About Events API
  2. TikTok Ads Manager: About Event Deduplication
  3. TikTok Ads Manager: How to Adopt TikTok's Updated Standard Events
  4. TikTok Ads Manager: How to set up matching events with Events API
  5. TikTok Ads Manager: About diagnostic and monitoring tools in TikTok Events Manager

In ROASaurus

Weiterlesen

Werbeplattformen und WebshopsConversion-Tracking bei Nachnahme und externen CheckoutsConversion-Tracking bei Nachnahme: Warum Pixel Nachnahme-Bestellungen und Bestellungen aus externen Checkouts verpassen, wann du den Kauf senden solltest und wie du mit verweigerten Bestellungen umgehst.Werbeplattformen und WebshopsConversion-Tracking für CCV Shop: eine EinrichtungsanleitungConversion-Tracking für CCV Shop: Sende bezahlte Bestellungen mit einem signierten Webhook an Meta und TikTok, verknüpfe sie mit Anzeigenklicks, richte alles ein, teste es und gehe mit verspäteten Zahlungen um.Werbeplattformen und WebshopsErweiterte Conversions für Google Ads in ShopifyErweiterte Conversions fügen Käufen in Google Ads gehashte Kundendaten hinzu, hier in Shopify. So funktionieren sie, worin sie sich von Offline-Importen unterscheiden und wie du sie einrichtest.
FAQ

Antworten auf deine Fragen

Ist CompletePayment bei TikTok dasselbe wie Purchase?

Ja. CompletePayment ist der alte Name des Kauf-Events von TikTok. TikTok wandelt ihn auf seiner Seite um, zeigt ihn im Reporting als Purchase an und sagt, dass es den alten Namen weiter unterstützen wird.

Brauche ich das TikTok-Pixel noch, wenn ich die Events API nutze?

TikTok empfiehlt, beides zu nutzen. Das Pixel liefert Browser-Signale wie das Cookie _ttp, die Events API sendet jede Bestellung, und eine gemeinsame event_id verhindert, dass TikTok einen Kauf doppelt zählt.

Was ist ttclid?

ttclid ist die Click-ID, die TikTok der URL deiner Landingpage hinzufügt, wenn jemand eine Anzeige anklickt. Speichere sie, wenn der Käufer landet, und sende sie mit dem Kauf, damit TikTok die Bestellung dem Klick zuordnen kann.

Wie lange wartet TikTok mit der Deduplizierung von Events?

TikTok dedupliziert Events mit demselben Eventnamen und derselben event_id, die innerhalb eines Zeitfensters von 48 Stunden nach dem ersten eintreffen. Es erfasst die erste Kopie, die es erhält, für Messung und Reporting.

Brauche ich zusätzlich die TikTok-App in Shopify?

Nein. Wenn du sie behältst, trenne das Pixel in der TikTok-App. Ihre Events haben andere IDs, daher würde TikTok jeden Kauf doppelt zählen.

Werden Käufe weiterhin gesendet, wenn ein Käufer Cookies ablehnt?

Ist Respect visitor consent aktiviert, lädt ROASaurus das Pixel nicht und verknüpft keine Click-IDs mit diesem Käufer. Die bezahlte Bestellung wird weiterhin serverseitig mit gehashten Bestelldaten sowie der IP-Adresse und dem User Agent der Bestellung gesendet.

Jeder Verkauf, zurückverfolgt zur Anzeige, die ihn gebracht hat

Server-Side-Tracking, Gewinn und Customer Lifetime Value in einer App. 14 Tage kostenlos testen, ohne Kreditkarte.

Starte deine kostenlose Testphase →