Exit-Intent-Widgets
Pro FeatureErreichen Sie Besucher, bevor sie die Seite verlassen. Exit-Intent-Widgets sind vom Kunden definierte Popups, die in dem Moment ausgelöst werden, in dem ein Besucher signalisiert, die Seite zu verlassen — mit integrierter Analyse für jede Einblendung, jeden Klick und jede Schließung.
Exit-Intent-Widgets sind in den Plänen Pro, Scale und Enterprise verfügbar. Aktualisieren Sie Ihren Plan, um diese Funktion zu aktivieren.
Übersicht
Ein Widget ist ein kleines, konfigurierbares Overlay, das vom Zenovay-Tracking-Skript gerendert wird, sobald ein Exit-Intent-Signal erkannt wird. Sie gestalten den Inhalt, definieren das Targeting, und Zenovay kümmert sich um Auslieferung, Frequency Capping und Analyse.
Wann Widgets ausgelöst werden
Der Tracker verwendet zwei gerätespezifische Exit-Signale:
| Gerät | Signal |
|---|---|
| Desktop | mouseleave-Ereignis, wenn der Cursor den oberen Viewport-Rand überschreitet |
| Mobile / Tablet | Schnelles Hochscrollen (Back-to-Top-Geste) oder Rückkehr der Seite aus dem Hintergrund-Tab via visibilitychange |
Beide Signale sind entprellt und respektieren den pro Widget konfigurierten Frequency Cap, sodass derselbe Besucher dasselbe Widget nicht zweimal pro Sitzung sieht.
Vom Tracker eingeblendete Widgets laufen clientseitig. Im Cookieless-Modus speichert der Tracker keine Besucher-IDs zwischen Seitenaufrufen, daher ist die tabübergreifende Deduplizierung nur ein Best-Effort — ein einzelner Besucher, der dieselbe Seite in zwei Tabs öffnet, kann das Widget in jedem Tab sehen.
Einrichtung
Widgets werden vollständig über das Zenovay-Dashboard verwaltet — abgesehen von der bereits installierten Tracking-Skript sind keine Codeänderungen erforderlich.
- Öffnen Sie Ihr Dashboard und wählen Sie die Website aus, der Sie ein Widget hinzufügen möchten.
- Öffnen Sie den Tab Widgets.
- Klicken Sie auf New widget.
- Durchlaufen Sie den vierstufigen Builder.
Der vierstufige Builder
Schritt 1 — Inhalt
Definieren Sie, was das Widget anzeigt.
- Titel — die Überschrift (max. 120 Zeichen)
- Body — der unterstützende Text (max. 500 Zeichen, Plain Text)
- Primärer CTA — Button-Beschriftung und Ziel-URL (oder ein
goal_event-Name, wenn Sie statt einer Weiterleitung eine Zielerfüllung erfassen möchten)
Schritt 2 — Targeting
Legen Sie fest, wer das Widget sieht.
- Seitenmuster — auf welchen URLs das Widget läuft (siehe Targeting-Semantik)
- Land — Liste von ISO 3166-1 alpha-2-Ländercodes (z. B.
US,DE,FR); leer lassen für alle Länder - Gerät — eine oder mehrere Optionen aus
desktop,mobile,tablet - Frequency Cap — maximale Anzahl Einblendungen pro Besucher pro N Tagen (z. B. einmal alle 7 Tage)
- Min. Besuchsanzahl — erst beim N-ten Seitenaufruf des Besuchers auf dieser Site auslösen (erfordert Nicht-Cookieless-Modus)
Schritt 3 — Design
Gestalten Sie das Widget passend zu Ihrer Marke.
- Position, Breite, Eckenrundung (siehe Design-Enums)
- Hintergrund-, Text- und Button-Farben (Hex)
- Bild mit auswählbarer Position (oben, links, rechts oder vollflächiger Hintergrund)
- Sekundärer Button (optional) — entweder eine passive
dismiss-Aktion oder ein sekundärerlink
Schritt 4 — Zeitplan
- Status —
draft,activeoderpaused - Startdatum / Enddatum (optional) für zeitlich befristete Kampagnen
Klicken Sie auf Speichern und das Widget ist innerhalb einer Minute aktiv (der Tracker lädt die aktiven Widgets beim nächsten Seitenaufruf neu).
Targeting-Semantik
Seitenmuster
Standardmäßig ist das Seitenmuster-Feld eine Substring-Übereinstimmung mit dem pathname des Besuchers.
| Muster | Trifft auf |
|---|---|
/blog | /blog, /blog/post-1, /de/blog/x, /team-blog/about |
/checkout | /checkout, /checkout/payment, /api/checkout/v2 |
* | jede Seite |
Für präzisere Übereinstimmungen verwenden Sie explizite Globs:
| Muster | Trifft auf |
|---|---|
/blog/* | /blog/post-1, /blog/category/x (NICHT /de/blog/...) |
/checkout/*/payment | /checkout/abc/payment, /checkout/xyz/payment |
/products/[id] | /products/123, /products/abc-def |
Substring ist der Standard, weil die meisten Kunden erwarten, dass "/blog" alle Blog-Seiten unabhängig vom Sprachpräfix trifft. Verwenden Sie Globs (*), wenn Sie den Anfang oder das Ende des Pfads verankern müssen.
Land
Komma-getrennte ISO 3166-1 alpha-2-Codes:
US,CA,GB,DE,FR
Die Lande-Erkennung verwendet die IP-Geolokalisierung des Besuchers zum Zeitpunkt des Seitenaufrufs. EU-Besucher mit aktiviertem GPC werden nicht angereichert, sodass für diese Besucher die länderbezogene Filterung auf "alle Länder" zurückfällt.
Gerät
Wählen Sie einen oder mehrere der drei Buckets:
desktop
mobile
tablet
Der Tracker klassifiziert Geräte anhand User-Agent und Viewport-Breite — identisch zum Rest des Dashboards.
Frequency Cap
Definiert als max_shows_per_n_days. Der Tracker speichert einen Widget-spezifischen Einblendungs-Zeitstempel im Besucher-Datensatz (serverseitig, niemals in Cookies/localStorage). Solange frequency_cap_n_days seit dem letzten shown-Ereignis dieses Widget × Besucher-Paares noch nicht abgelaufen ist, wird das Widget unterdrückt.
Min. Besuchsanzahl
Wenn min_visit_count > 1 gesetzt ist, muss der Tracker sich merken, wie oft dieser Besucher die Site bereits aufgerufen hat. Da der Tracker von Zenovay standardmäßig cookieless läuft, solange keine Einwilligung vorliegt, fällt diese Targeting-Regel im Cookieless-Modus stillschweigend auf "beim ersten Besuch auslösen" zurück.
Wenn Sie sich auf diese Regel verlassen, stellen Sie sicher, dass der Tracker mit data-cookieless="false" (also nach Einwilligung) geladen wird, andernfalls ist die Regel für den Großteil des EU-Traffics ohne Wirkung.
Design-Enums
Die Design-Felder sind sicherheitsgehärtete Enums — die API akzeptiert ausschließlich die unten aufgeführten Werte. Das schützt jedes von Zenovay ausgelieferte Widget vor CSS-Injection.
Position
center
top-banner
bottom-banner
top-right
top-left
bottom-right
bottom-left
top-banner und bottom-banner sind Vollbreite-Streifen. Die vier Eckpositionen sind kleinere, fixierte Karten.
Breite
sm (max. 320px)
md (max. 480px)
lg (max. 640px)
xl (max. 800px)
Die Breiten sind responsiv — sie schrumpfen auf kleineren Viewports und überschreiten niemals die Bildschirmbreite des Besuchers.
Eckenrundung
none
sm
md
lg
full
full rundet das Widget zu einer Pille (sinnvoll nur in Kombination mit einer Banner-Position).
Bildposition
top
left
right
background
background platziert das Bild als vollflächigen Hintergrund mit einem Kontrast-Schleier hinter dem Text.
Sekundäre Aktion
dismiss
link
dismiss schließt das Widget, ohne einen Klick zu erfassen. link erfasst ein secondary_clicked-Ereignis und navigiert zur konfigurierten URL.
Analyse
Jedes Widget erfasst vier Ereignistypen:
| Ereignis | Wann es ausgelöst wird |
|---|---|
shown | Das Widget wurde im Viewport sichtbar |
clicked | Der Besucher hat den primären CTA geklickt |
secondary_clicked | Der Besucher hat den sekundären Button geklickt (wenn als link konfiguriert) |
dismissed | Der Besucher hat das Widget geschlossen, ohne zu klicken |
Detailansicht
Öffnen Sie ein beliebiges Widget aus dem Widgets-Tab, um zu sehen:
- CTR —
clicked / shown, mit Vergleich zum Website-Durchschnitt - Tagesdiagramm — tägliche Einblendungs- / Klick- / Schließ-Balken mit Sparklines
- Konversions-Funnel —
shown → clicked → goal completed(wenn der CTA auf ein erfasstes Ziel zeigt) - Top-Seiten — die URLs, auf denen das Widget am häufigsten ausgelöst wurde, inklusive Per-Seite-CTR
- Geräte-Aufschlüsselung — Desktop / Mobile / Tablet-Verteilung für Einblendungen vs. Klicks
Alle Metriken respektieren die gleichen Datums- und Segmentfilter wie der Rest des Dashboards.
Datenschutz
Widget-Analysereignisse verwenden dieselbe cookieless Event-Pipeline wie der Rest von Zenovay:
- Die Besucher-ID ist ein serverseitig berechneter, täglich salted SHA-256-Hash aus (IP-Subnetz + User-Agent + täglichem Salt). Es werden keine Cookies und kein
localStorageim Browser des Besuchers geschrieben. - Die tabübergreifende Deduplizierung (damit derselbe Besucher das Widget nicht zweimal in zwei Tabs sieht) ist im Cookieless-Modus nur Best-Effort — ohne persistenten Speicher sind zwei Tabs nicht von zwei Besuchern mit demselben IP-/UA-Fingerprint zu unterscheiden.
- Besucher mit aktiviertem Global Privacy Control (
Sec-GPC: 1) werden nicht angereichert — Land- und B2B-Felder werden serverseitig verworfen, das Widget wird aber dennoch ausgelöst, wenn Seitenmuster, Gerät und Frequency Cap erfüllt sind. - Es werden keine Widget-Inhalte, keine DOM-Snapshots und keine Besucher-Eingaben erfasst. Nur die vier oben aufgeführten Ereignistypen.
Wenn Sie strengeres Targeting benötigen (z. B. nur eingeloggte Nutzer), lösen Sie das Widget über ein Custom Event aus Ihrem eigenen Anwendungscode aus, statt sich auf tabübergreifende Persistenz zu verlassen.
Plan-Limits
| Plan | Widgets pro Website |
|---|---|
| Free | 0 (gesperrt) |
| Pro | 3 |
| Scale | 10 |
| Enterprise | Unbegrenzt |
Die Limits werden bei der Erstellung serverseitig durchgesetzt und im Dashboard als Fehler angezeigt, wenn Sie versuchen, sie zu überschreiten. Um Ihr Limit zu erhöhen, aktualisieren Sie Ihren Plan.
API-Zugriff
Verwalten Sie Widgets programmatisch:
# Liste der Widgets einer Website
GET /api/popup-widgets/:websiteId
Authorization: Bearer YOUR_API_KEY
# Einzelnes Widget abrufen
GET /api/popup-widgets/:websiteId/:widgetId
# Analyse für ein Widget abrufen
GET /api/popup-widgets/:websiteId/:widgetId/stats
# Erstellen
POST /api/popup-widgets/:websiteId
# Aktualisieren
PATCH /api/popup-widgets/:websiteId/:widgetId
# Löschen
DELETE /api/popup-widgets/:websiteId/:widgetId
Der öffentliche, vom Tracker aufgerufene Endpunkt (GET /api/popup-widgets/active/:trackingCode) wird automatisch vom Tracking-Skript aufgerufen und benötigt keine Authentifizierung.
Best Practices
- Beginnen Sie mit Mehrwert, nicht mit Panik. "Sichern Sie sich 20 % auf Ihre erste Bestellung" performt deutlich besser als "Warten Sie! Gehen Sie nicht!".
- Mindestens einmal pro Besucher pro Woche cappen. Ein Widget bei jedem Besuch wird zum Adblocker-Köder.
- Mobile separat testen. Die mobilen Signale (Hochscrollen + Sichtbarkeitsrückkehr) lösen anders aus als das
mouseleaveauf dem Desktop. Ein Widget, das auf dem Desktop konvertiert, kann auf Mobile unsichtbar sein. - Den CTA mit einem Ziel verknüpfen. Wenn der primäre CTA auf eine erfasste URL oder ein
goal_eventzeigt, sehen Sie den vollständigen Funnelshown → clicked → convertedstatt nur Klicks. - Pausieren Sie vor dem Iterieren. Löschen Sie kein Widget, das Sie A/B-testen — pausieren Sie es, damit die historische Analyse erhalten bleibt.
Nächste Schritte
- Conversion Funnels - Verfolgen Sie mehrstufige Konversionspfade, in die das Widget einfließen kann
- Goals - Definieren Sie die Ereignisse, die Ihr Widget-CTA erfüllen soll
- Konvertierungsvorfälle - Lassen Sie sich benachrichtigen, wenn Widget-getriebene Konversionen einbrechen