Zum Hauptinhalt springen
Kostenlos5 minutesEinsteiger

Custom Events: Wie sende ich ein Custom Event aus JavaScript?

Nutzen Sie die globale Funktion window.zenovay(), um ein benanntes Event mit optionalen Properties zu senden. Hier sind die API und einige gängige Muster.

custom-eventsjavascripttracker-api
Zuletzt aktualisiert:

Sobald der Zenovay-Tracker auf Ihrer Seite geladen ist, stellt er eine globale Funktion window.zenovay() bereit. Sie nutzt ein Command-API-Pattern: Das erste Argument ist der Befehl ('track', 'identify', 'goal', 'revenue', …), gefolgt von befehlsspezifischen Argumenten. Verwenden Sie den track-Befehl, um alles zu erfassen, was kein Pageview ist — Klicks, Formulareinreichungen, Geschäftsereignisse.

Der einfachste Aufruf

window.zenovay('track', 'cta_clicked');

Dies sendet ein einzelnes Event ohne Properties. Es erscheint innerhalb von ~30 Sekunden in der Registerkarte Analytics Ihres Dashboards.

Mit Properties

window.zenovay('track', 'cta_clicked', {
  cta_label: 'Start free trial',
  page_section: 'hero',
  variant: 'B'
});

Property-Werte können Strings, Zahlen oder Booleans sein. Verschachtelte Objekte und Arrays werden nicht unterstützt — flachen Sie sie an der Aufrufstelle ab.

Revenue-Events

Für Käufe verwenden Sie den spezialisierten revenue-Befehl. Er nimmt den Betrag und die Währung direkt entgegen:

window.zenovay('revenue', 29.00, 'USD');

Dies erfasst eine Revenue-Umwandlung, die Ihre Registerkarte Revenue füllt. Wenn Sie die Währung weglassen, wird sie standardmäßig auf USD gesetzt.

Wenn Sie lieber zusätzlichen Kontext hinzufügen möchten, können Sie auch ein reguläres Event mit Betrag und Währung als Properties senden:

window.zenovay('track', 'purchase', {
  revenue: 29.00,
  currency: 'USD',
  product_id: 'pro-annual'
});

Einen Nutzer identifizieren

Wenn sich ein Besucher anmeldet, verknüpfen Sie die Sitzung mit ihrem Account mit dem identify-Befehl:

window.zenovay('identify', 'user_42', {
  email: '[email protected]',
  plan: 'pro'
});

Sie können auch ein einzelnes Objekt verwenden, wenn Sie das bevorzugen:

window.zenovay('identify', {
  user_id: 'user_42',
  email: '[email protected]',
  plan: 'pro'
});

Nach diesem Aufruf wird das Besucherprofil gespeichert und nachfolgende Events werden mit dieser Identität verknüpft.

Property-Namenskonventionen

Verwenden Sie snake_case (page_section, nicht pageSection). Das Dashboard gruppiert Properties alphabetisch — konsistente Benennung erleichtert Filtervorgänge.

Der Tracker erfasst automatisch den Kontext wie URL, Referrer, Bildschirmgröße, Browser, Betriebssystem und ungefähre Standort, daher müssen Sie diese nicht selbst senden.

Plan-Limits

Custom Events zählen auf Ihr monatliches Event-Kontingent:

PlanMonatliche Events
Free10.000
Pro100.000
Scale1.000.000
EnterpriseBenutzerdefiniert

Häufige Fallstricke

  • Aufruf, bevor der Tracker geladen ist — wickeln Sie Aufrufe in eine if (window.zenovay)-Prüfung ein oder stellen Sie sie in die Warteschlange, bevor das Skript ausgeführt wird. Der Tracker spielt alles ab, das Sie auf window.zenovay.q verschieben: window.zenovay = window.zenovay || function(){(window.zenovay.q = window.zenovay.q || []).push(arguments)}; window.zenovay('track', 'cta_clicked').
  • PII als Property senden — E-Mails, Namen und Telefonnummern sollten nicht als Custom-Event-Properties gesendet werden. Verwenden Sie stattdessen den identify-Befehl für Kontodaten.
  • Cookieless-Modus + identify() — wenn im Cookieless-Modus ausgeführt, funktioniert der identify-Aufruf immer noch für die aktuelle Seite, aber die Verknüpfung wird beim nächsten Seitenaufruf zurückgesetzt (kein persistenter Speicher).

Verwandte Lektüre

War dieser Artikel hilfreich?