Zum Inhalt springen
Kiwiq
Dokumentation

Kiwiq in wenigen Minuten startklar

Installiere das SDK, verweise auf einen CSS-Selector, und schon laufen Impressions, Klicks und Scroll-Events ein.

Zwei Wege zur Installation

Nutze npm, wenn du ohnehin einen Build-Schritt hast, oder binde einfach das CDN-Script ein, wenn nicht.

Über npm

Empfohlen

Installiere das Paket und importiere es wie jede andere Abhängigkeit.

terminal
npm install kiwiq
Verwendung
app.js
import Kiwiq from "kiwiq";

Kiwiq.start({
  apiKey: "pk_live_xxxxxxxxx",
  action: "scroll",
  selector: ".feature-section",
});

Über CDN

Kein Build-Schritt nötig — füge das einfach in dein HTML ein und nutze das globale Kiwiq-Objekt.

index.html
<script src="https://unpkg.com/kiwiq/dist/kiwiq.global.js"></script>
<script>
  Kiwiq.start({
    apiKey: "pk_live_xxxxxxxxx",
    action: "scroll",
    selector: ".feature-section",
  });
</script>

Konfigurationsoptionen

Werden an Kiwiq.start() übergeben. Rufe es einmal pro Selector/Action-Paar auf, oder übergib ein Array, um mehrere auf einmal zu registrieren.

OptionTypStandardBeschreibung
apiKeystringErforderlichDer öffentliche API-Key deines Projekts.
action"impression" | "click" | "scroll" | "hover" | "submit"ErforderlichWelche Interaktion für passende Elemente getrackt werden soll.
selectorstringErforderlichEin CSS-Selector, der das oder die zu trackenden Elemente identifiziert.
endpointstringKiwiqs gehosteter CollectorÜberschreibt, wohin Events gesendet werden.
thresholdnumber0.5Sichtbarkeits-Anteil (0–1), der vor impression/scroll erreicht sein muss.
hoverDelaynumber200Mindest-Verweildauer in Millisekunden, bevor hover feuert.

Getrackte Actions

Fünf Interaktionstypen, alle über dieselbe action-Option verfügbar.

impression

Feuert einmal pro Element, sobald es erstmals im sichtbaren Bereich erscheint.

click

Feuert bei Klick. Läuft intern über Event Delegation, erfasst also auch Elemente, die erst später zur Seite hinzukommen.

scroll

Wie impression, feuert aber erneut jedes Mal, wenn das Element den Sichtbarkeits-Schwellenwert überschreitet — nützlich, um wiederholtes Re-Engagement zu messen.

hover

Feuert, sobald der Mauszeiger mindestens hoverDelay Millisekunden auf dem Element verweilt.

submit

Feuert, wenn ein passendes <form>-Element abgeschickt wird.

Zu deinem API-Key

Dein apiKey identifiziert, zu welchem Projekt ein Event gehört. Er ist ein öffentlicher Identifier, kein Geheimnis — ähnlich wie ein Stripe Publishable Key — und kann daher problemlos direkt im Client-Code stehen, der an jeden Besucher ausgeliefert wird.

Öffentliche Keys sind in Produktion mit pk_live_ vorangestellt.

Wie Daten gesendet werden

Events werden gebündelt (bis zu 10, oder alle 2 Sekunden) und als ein einzelner Request per navigator.sendBeacon verschickt, mit fetch inklusive keepalive als Fallback, falls sendBeacon nicht verfügbar ist. Netzwerkfehler, Ad-Blocker und CORS-Fehler werden dabei stillschweigend abgefangen — Kiwiq wirft niemals einen Fehler auf deiner Seite.

Funktioniert mit dynamischen Inhalten

impression- und scroll-Tracking erfasst automatisch auch Elemente, die erst nach dem Aufruf von Kiwiq.start() zur Seite hinzukommen — praktisch für Single-Page-Apps und alles, was asynchron nachgeladen wird. start() muss dafür nicht erneut aufgerufen werden.

Sieh dir getrackte Daten in Aktion an

Schau dir das Dashboard an, um zu sehen, wie Impressions, Klicks und Scroll-Events zusammenkommen.

Wir legen Wert auf deine Privatsphäre

Wir verwenden Cookies, um diese Website zu betreiben, deine Einstellungen zu speichern und zu verstehen, wie sie genutzt wird. Wähle aus, welchen Kategorien du zustimmst – du kannst deine Auswahl jederzeit ändern.