> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scanova.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Automatisch erfasste Ereignisse

> Was das Scanova-Browser-SDK automatisch erfasst: Seitenaufrufe, Klicks, Scrolltiefe und Formularabsendungen, mit Ereignistyp, Metadaten und Payload je Ereignis.

Wenn Sie die Auto-Tracking-Optionen in `scanova('init', ...)` aktivieren, erfasst das SDK Nutzeraktionen automatisch, ganz ohne zusätzlichen Code. Diese Seite zeigt genau, was jede Auto-Tracking-Funktion sendet.

## Seitenaufruf

**Aktiviert durch:** `autoPageview: true`

Wird einmal pro Seitenaufruf ausgelöst, sobald sich das SDK initialisiert.

**Ereignistyp:** `pageview`

**Erfasste Metadaten:** *(keine — der Seitenkontext steckt in den Feldern der obersten Ebene)*

**Vollständiges Payload-Beispiel:**

```json theme={null}
{
  "event_id": "f9ac7db6-f900-4d8e-8918-c846834195a8",
  "event_type": "pageview",
  "site_id": "YOUR_SITE_ID",
  "scan_session_id": "7ad26d4f-3181-4ef8-b6ca-b8f59499dd43",
  "web_session_id": "2d0c328a-01d0-4010-85f4-f327130d1bd4",
  "visitor_id": "363fe851-7d8f-4090-902f-0f5a462829f5",
  "page_url": "https://yoursite.com/?scnv=7ad26d4f-3181-4ef8-b6ca-b8f59499dd43",
  "referrer": "https://google.com",
  "timestamp": "2026-05-13T10:00:00.000Z",
  "device": {
    "user_agent": "Mozilla/5.0 ...",
    "screen_width": 1440,
    "screen_height": 900,
    "language": "en-US"
  },
  "metadata": {}
}
```

**Wichtig:** `autoPageview` wird bei der Initialisierung des SDK ausgelöst. Rufen Sie zusätzlich `scanova('track', 'page_view', ...)` manuell auf, senden Sie zwei Ereignisse pro Seitenaufruf. Verwenden Sie entweder das eine oder das andere.

**Deduplizierung:** Das SDK verhindert, dass `pageview` innerhalb eines SDK-Lebenszyklus zweimal für dieselbe URL ausgelöst wird. Verlässt eine Person auf einer klassischen mehrseitigen Website die Seite und kehrt zur selben URL zurück, initialisiert der zweite Aufruf das SDK neu und löst normal aus. In einer SPA, in der sich die URL clientseitig ändert, bedeutet diese Sperre, dass die Rückkehr zu einer bereits besuchten Route den Seitenaufruf **nicht** erneut auslöst — das müssen Sie selbst behandeln. Siehe den [SPA-Leitfaden](/de/conversion-tracking/browser/spa-frameworks).

***

## Klick

**Aktiviert durch:** `autoClicks: true`

Wird ausgelöst, wenn eine Person auf einen Link (`<a>`), eine Schaltfläche (`<button>`) oder ein beliebiges Element mit `role="button"` klickt.

**Ereignistyp:** `click`

**Erfasste Metadaten:**

| Schlüssel         | Beschreibung                                                                                                                             |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `element_type`    | Name des HTML-Tags: `A`, `BUTTON`                                                                                                        |
| `element_text`    | Sichtbarer Text oder `aria-label` des Elements (max. 100 Zeichen). Ist `data-scnv-name` gesetzt, wird stattdessen dieser Wert verwendet. |
| `destination_url` | `href`-Wert bei Link-Elementen (nur enthalten, wenn vorhanden und weder `javascript:` noch `mailto:`)                                    |

**Payload-Beispiel:**

```json theme={null}
{
  "event_type": "click",
  "metadata": {
    "element_type": "A",
    "element_text": "View Pricing",
    "destination_url": "/pricing"
  }
}
```

**Eigene Element-Bezeichnungen:**

Fügen Sie einem beliebigen Element `data-scnv-name` hinzu, um die in Berichten erfasste Bezeichnung zu steuern:

```html theme={null}
<button data-scnv-name="Hero CTA">Get Started Free</button>
<a href="/pricing" data-scnv-name="Nav Pricing">Pricing</a>
```

***

## Formularabsendung

**Aktiviert durch:** `autoForms: true`

Wird ausgelöst, wenn eine Person ein beliebiges `<form>` auf der Seite absendet. Feldwerte werden **nie erfasst** — nur die Identität des Formulars.

**Ereignistyp:** `form_submit`

**Erfasste Metadaten:**

| Schlüssel     | Beschreibung                                                                                                                  |
| ------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `form_name`   | Kennung des Formulars. Reihenfolge der Priorität: `data-scnv-name` → `aria-label` → Attribut `name` → `id` → `"unnamed-form"` |
| `form_action` | Das Attribut `action` des Formulars, oder der aktuelle Pfad, wenn es nicht gesetzt ist                                        |

**Payload-Beispiel:**

```json theme={null}
{
  "event_type": "form_submit",
  "metadata": {
    "form_name": "Contact Form",
    "form_action": "/contact"
  }
}
```

**Eigener Formularname:**

```html theme={null}
<form data-scnv-name="Newsletter Signup" action="/subscribe">
  ...
</form>
```

***

## Scrolltiefe

**Aktiviert durch:** `autoScroll: true`

Wird ausgelöst, wenn die Person bestimmte Marken auf der Seite überscrollt. Jede Marke wird **einmal pro Seitenaufruf** ausgelöst — wiederholtes Hoch- und Runterscrollen löst dieselbe Marke nicht erneut aus.

**Ereignistyp:** `scroll`

**Marken:** 25 %, 50 %, 75 %, 90 %

**Erfasste Metadaten:**

| Schlüssel      | Beschreibung                                       |
| -------------- | -------------------------------------------------- |
| `scroll_depth` | Erreichte Prozentmarke: `25`, `50`, `75` oder `90` |

**Payload-Beispiele:**

```json theme={null}
{ "event_type": "scroll", "metadata": { "scroll_depth": 25 } }
{ "event_type": "scroll", "metadata": { "scroll_depth": 50 } }
{ "event_type": "scroll", "metadata": { "scroll_depth": 75 } }
{ "event_type": "scroll", "metadata": { "scroll_depth": 90 } }
```

Scroll-Ereignisse nutzen ein Debounce von 100 ms, damit kleine Scroll-Bewegungen nichts auslösen.

**SPA-Einschränkung:** Scroll-Marken werden im Arbeitsspeicher gehalten und bei Routenwechseln in einer SPA **nicht zurückgesetzt**. Scrollt eine Person auf `/home` bis 75 % und navigiert dann zu `/pricing`, löst das SDK auf `/pricing` keine Ereignisse für 25 %, 50 % oder 75 % aus — nur für Marken oberhalb der bereits erreichten. Um das Scroll-Tracking bei einem Routenwechsel zurückzusetzen, laden Sie das SDK neu oder setzen Sie für SPAs auf manuelle Scroll-Ereignisse.

***

## Auto-Tracking mit eigenen Ereignissen kombinieren

Automatisch erfasste und eigene Ereignisse bestehen konfliktfrei nebeneinander. Eine typische Einrichtung erfasst Seitenaufrufe und Scrolltiefe automatisch und ergänzt eigene Ereignisse für besonders wichtige Aktionen:

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', {
  autoPageview: true,
  autoScroll: true,
  autoClicks: false,  // disabled; we use custom click tracking below
  autoForms: false
});

// Manual click event for a specific button
document.getElementById('cta-btn').addEventListener('click', () => {
  scanova('track', 'cta_click', { plan: 'pro', section: 'hero' });
});
```
