Wissen · Events

OpenAI Ads Standard-Events richtig wählen

Ein gutes Conversion-Setup beginnt nicht beim Code, sondern bei der Frage: Welche Aktion soll wirklich gezählt werden? Diese Bibliothek zeigt alle OpenAI Ads Standard-Events, wann welches passt und wie Beträge, Webinare und Custom Events sauber aufgebaut werden.

OpenAI Ads misst Conversions über klar benannte Events. Wer von Anfang an das passende Standard-Event wählt, bekommt saubereres Reporting, bessere Conversion-Zuordnung und weniger Sonderfälle. Diese Seite ergänzt das Tutorial als Nachschlagewerk – sie ist auch ohne die vorherigen Schritte eigenständig lesbar.

Kurzfassung

  • Erst Standard-Event wählen, nur dann Custom Event.
  • Danke-Seiten sind gute Startpunkte für Pixel-Events.
  • Käufe mit order_created und Betrag in Cent senden.
  • Webinar-Anmeldungen meist mit registration_completed plus optionalem Custom Event präzisieren.
  • API und Pixel später über dieselbe event_id zusammenführen.

Welches Event passt zu welchem Ziel?

OpenAI unterstützt aktuell diese Standard-Events: app_installed, app_opened, appointment_scheduled, checkout_started, contents_viewed, custom, items_added, lead_created, order_created, page_viewed, registration_completed, subscription_created und trial_started.

Jedes Event-Datenobjekt braucht ein type-Feld, passend zur Datenform: contents, customer_action, plan_enrollment oder custom.

ZielEventDatentypBeispielHinweis
Seitenaufrufpage_viewedcontentsDanke-Seite, LandingpageBasis-Signal für Seitenbesuche
Produkt-/Kursseite angesehencontents_viewedcontentsProduktdetail, Artikel, ListingNur für konkrete Content-Elemente, nicht jede Seite
Formular abgeschickt / Leadlead_createdcustomer_actionKontaktformular, Demo-AnfrageAuf der Danke-Seite auslösen, nicht beim Button-Klick
Meeting/Demo gebuchtappointment_scheduledcustomer_actionKalenderbuchung abgeschlossenErst nach bestätigter Buchung senden
Webinar-Anmeldung abgeschlossenregistration_completedcustomer_actionWebinar-Danke-SeiteWebinar per contents-Objekt oder Custom Event unterscheiden
Checkout gestartetcheckout_startedcontentsZahlungsprozess begonnenNoch kein Kauf – nicht mit order_created verwechseln
In Warenkorb gelegtitems_addedcontentsProdukt im WarenkorbFür E-Commerce-Trichter
Kauf abgeschlossenorder_createdcontentsBestellbestätigungMit amount (Cent) + currency
Abo gestartetsubscription_createdplan_enrollmentMonatsabo aktiviertplan_id und Betrag mitgeben
Testphase gestartettrial_startedplan_enrollment14-Tage-TrialKostenlos: kein amount nötig
SpezialfallcustomcustomInterne UnterscheidungNur mit custom_event_name als Option

app_installed und app_opened sind aktuell nur über die Conversions API verfügbar und nicht über das JavaScript Pixel.

Standard-Event oder Custom Event?

Die Entscheidungslogik ist einfach:

  • Hat OpenAI ein passendes Standard-Event, nutze das Standard-Event.
  • Custom Events sind nur für zusätzliche interne Unterscheidung oder echte Spezialfälle gedacht.
  • Für ein Webinar mit mehreren Webinaren: registration_completed als Standard-Event, plus entweder contents mit Webinar-ID/Name oder zusätzlich ein custom-Event mit custom_event_name – je nach Reporting-Ziel.

Regeln für custom_event_name: Kleinbuchstaben, Zahlen, Unterstriche oder Bindestriche, 1 bis 64 Zeichen – und niemals denselben Namen wie ein eingebautes Event.

Beträge und EUR richtig senden

Monetäre Werte werden als Integer in der kleinsten ISO-4217-Währungseinheit gesendet – bei EUR also in Cent. Wenn amount gesendet wird, muss auch currency gesendet werden.

BetragSo senden
0 EUR / kostenloses Webinarkein amount nötig
9,90 EURamount: 990, currency: "EUR"
99,00 EURamount: 9900, currency: "EUR"
129,99 EURamount: 12999, currency: "EUR"

Codebeispiele

Alle Beispiele nutzen ausschließlich Platzhalter-IDs. Jedes Event sollte eine eigene, pro Abschluss eindeutige event_id erhalten – dieselbe ID nutzt später die Conversions API zur Deduplizierung.

Meeting gebucht

appointment-scheduled.js
oaiq("measure", "appointment_scheduled", {
  type: "customer_action"
}, {
  event_id: "meeting_12345"
});

Lead-Formular abgeschickt

lead-created.js
oaiq("measure", "lead_created", {
  type: "customer_action"
}, {
  event_id: "lead_12345"
});

Webinar-Anmeldung mit Webinarname

webinar-registration.js
oaiq("measure", "registration_completed", {
  type: "customer_action",
  contents: [{
    content_type: "webinar",
    id: "webinar_youtube_ads_2026",
    name: "YouTube AI Ads Webinar 2026",
    quantity: 1
  }]
}, {
  event_id: "webinar_registration_12345"
});

Optionales Custom Event für ein bestimmtes Webinar

Wichtig: custom_event_name gehört in die Optionen (4. Parameter), nicht ins Datenobjekt.

webinar-custom-event.js
oaiq("measure", "custom", {
  type: "custom",
  contents: [{
    content_type: "webinar",
    id: "webinar_youtube_ads_2026",
    name: "YouTube AI Ads Webinar 2026",
    quantity: 1
  }]
}, {
  event_id: "webinar_registration_12345_custom",
  custom_event_name: "webinar_registration_youtube_ads_2026"
});

Produktkauf in EUR

order-created.js
oaiq("measure", "order_created", {
  type: "contents",
  amount: 9900,
  currency: "EUR",
  contents: [{
    content_type: "product",
    id: "kurs_youtube_ads_2026",
    name: "YouTube AI Ads Kurs 2026",
    quantity: 1
  }]
}, {
  event_id: "order_12345"
});

Abo gestartet

subscription-created.js
oaiq("measure", "subscription_created", {
  type: "plan_enrollment",
  plan_id: "academy_monthly",
  amount: 4900,
  currency: "EUR"
}, {
  event_id: "subscription_12345"
});

Test im Ereignisstream

So prüfst du, ob deine Events technisch ankommen:

  1. Im Ads Manager unter Tools > Conversions > Ereignisstream die Abfrage starten.
  2. Die relevanten Danke-Seiten selbst aufrufen: Lead-Danke-Seite, Kauf-Danke-Seite, Webinar-Danke-Seite.
  3. Seite refreshen und kurz interagieren – danach sollten die Events im Ereignisstream erscheinen.

Der Ereignisstream zeigt den technischen Eingang. Das Kampagnenreporting hängt zusätzlich vom konfigurierten Conversion-Event, der Kampagnenverknüpfung, der Attribution und dem Zeitfenster ab.

Typische Fehler

  • custom_event_name ins Datenobjekt geschrieben statt als Option (4. Parameter).
  • Betrag als 99.00 statt 9900 gesendet.
  • currency vergessen, obwohl amount vorhanden ist.
  • Event beim Button-Klick ausgelöst, obwohl der Abschluss später scheitern kann.
  • Jeden Seitenaufruf als Lead oder Kauf gemessen.
  • Webinarname nur im Eventnamen versteckt statt zusätzlich als Content-Objekt dokumentiert.

Weiterführende Kapitel

Hinweis: Ein zentraler Tool-Hub mit Event-Generator ist für später vorgemerkt und wird hier verlinkt, sobald er verfügbar ist.

Häufige Fragen

Wann nutze ich ein Custom Event statt eines Standard-Events?
Nur wenn kein Standard-Event passt oder du eine zusätzliche interne Unterscheidung brauchst. Custom Events nutzen den Eventnamen 'custom' plus custom_event_name als Option (nicht im Datenobjekt).
Wie sende ich Beträge in EUR?
Monetäre Werte werden als Integer in der kleinsten ISO-4217-Einheit gesendet – bei EUR also Cent. 99,00 EUR werden zu amount: 9900, currency: 'EUR'. Wird amount gesendet, muss currency immer mitgesendet werden.
Kann ich app_installed und app_opened über das Pixel messen?
Nein. app_installed und app_opened sind aktuell nur über die Conversions API verfügbar, nicht über das JavaScript Pixel.
Welche Zeichen sind in custom_event_name erlaubt?
Kleinbuchstaben, Zahlen, Unterstriche und Bindestriche, 1 bis 64 Zeichen. Der Name darf nicht identisch mit einem eingebauten Eventnamen sein.

Quellen