Zum Inhalt springen

Serverseitiges vs. clientseitiges Tracking

Clientseitiges Tracking sendet Events aus dem Browser und sieht den Kontext – Seite, Gerät, UTM, Referrer –, serverseitiges Tracking sendet Events aus Ihrem Backend und sieht die Wahrheit. Adblocker und die Sieben-Tage-Grenzen von Safari machen die Client-Seite lückenhaft; die Server-Seite ist blind für Kontext. Die praktische Antwort lautet: beides, aufgeteilt nach Event-Klasse.

Aktualisiert am 7 Min. LesezeitVon fromHello

Das Wichtigste in Kürze

  1. Clientseitiges Tracking erfasst den Attributionskontext – UTM, Referrer, Gerät –, aber laut GWI-Daten für Q2 2025 nutzen 29,5 % der Internetnutzer zumindest manchmal einen Adblocker, sodass ein Teil der Browser-Events nie ankommt.

  2. Die ITP von Safari begrenzt per JavaScript gesetzte Cookies auf eine Laufzeit von sieben Tagen und löscht anderen per Skript beschreibbaren Speicher – localStorage, IndexedDB – nach sieben Tagen Safari-Nutzung ohne Interaktion mit Ihrer Website. Wiederkehrende Safari-Besucher sehen dann aus wie neue.

  3. Umsatz- und Abo-Events gehören auf den Server: subscription_started passiert in Ihrem Backend, außerhalb der Reichweite jedes Blockers.

  4. Tracken Sie auf beiden Seiten, verbunden über eine einzige Nutzer-ID – Client für Kontext, Server für Wahrheit – und akzeptieren Sie eine dauerhafte Lücke zwischen beiden Zahlen.

Was ist der Unterschied, in einem Satz?

Clientseitiges Tracking sieht Kontext, serverseitiges Tracking sieht Wahrheit. Der Browser kennt die UTM-Parameter, den Referrer, das Gerät und die Seite – und verliert Events an Blocker. Ihr Backend weiß, was tatsächlich passiert ist – ein Abo hat begonnen, eine Zahlung ist fehlgeschlagen – und weiß nichts darüber, wie der Nutzer dorthin gekommen ist. Dieser Leitfaden behandelt, wo Sie instrumentieren. Was Sie tracken sollten – Benennung und die Liste der Start-Events –, steht im Event-Tracking-Plan für Startups; warum die Daten überhaupt First-Party sein sollten, erklärt First-Party-Daten und Tracking. Beide Hälften gehören in einen einzigen Tracking-Plan.

Vier Begriffe, die die Entscheidung zwischen Client und Server einrahmen.

Was sieht clientseitiges Tracking – und was nicht?

Auf der Client-Seite lebt der Kontext. Das SDK im Browser erfasst UTM-Parameter, den Referrer, die Landingpage, das Gerät und das Verhalten in der Sitzung – alles, was Attribution und Funnel-Analyse brauchen. Was ihm entgeht, sind ganze Nutzer: Laut GWI-Daten, zusammengestellt von Backlinko, nutzten im Q2 2025 weltweit 29,5 % der Internetnutzer zumindest manchmal einen Adblocker – rund 1,77 Milliarden Menschen. Viele Blocker stoppen Analyse-Skripte zusammen mit Werbung, sodass ein messbarer Teil Ihrer clientseitigen Events gar nicht erst gesendet wird.

Selbst ohne Blocker macht Safari clientseitiges Tracking lückenhaft. Laut der ITP-Dokumentation von WebKit begrenzt Safari per JavaScript gesetzte Cookies auf eine Laufzeit von sieben Tagen und löscht allen anderen per Skript beschreibbaren Speicher – localStorage, IndexedDB – nach sieben Tagen Safari-Nutzung ohne Interaktion mit Ihrer Website. Sobald dieses Fenster von sieben Nutzungstagen verstrichen ist, sieht ein wiederkehrender Besucher aus wie ein völlig neuer, und die Zuordnung der Identität reißt ab. Der Verlust ist messbar: Als Plausible bei einem Test Ende August 2021 die eigenen Zahlen mit Google Analytics auf einer Website verglich, die auf Hacker News und Reddit gerade viel Aufmerksamkeit bekam, verpasste Google Analytics 58,67 % der Besucher – ein extremer, technikaffiner Fall; Plausible verweist auf frühere Untersuchungen, nach denen die Blockierrate auf Lifestyle-Websites unter 10 % und auf technikorientierten Websites über 25 % liegt.

Was sieht serverseitiges Tracking – und was nicht?

Beim serverseitigen Tracking meldet Ihr Backend Zustandsänderungen an die Events-API: subscription_started, payment_failed, plan_changed. Diese Events passieren auf Ihren Servern, nicht im Browser – sie dort zu erfassen, ist kein Workaround, sondern die ehrliche Quelle. Kein Blocker steht im Weg, keine Speichergrenze lässt sie verfallen, und die Zahl stimmt mit Ihrer Datenbank überein, weil sie aus Ihrer Datenbank kommt. Ein serverseitiges Event ist maßgeblich, weil es festhält, was Ihr System getan hat, nicht was ein Browser zu melden geschafft hat. Der blinde Fleck ist der Kontext: Ihr Backend hat keine Ahnung, welche Kampagne, welcher Referrer oder welches Gerät den Nutzer gebracht hat – dieser Kontext existierte immer nur auf der Client-Seite.

Client vs. Server: Welche Events gehören wohin?

Event-KlasseWo trackenWarum
Seitenaufrufe & Kampagnen-AttributionClientUTM, Referrer und Landingpage gibt es nur im Browser.
Feature-Nutzung im ProduktClient (bei kritischen auch Server)Der UI-Kontext zählt; ergänzen Sie eine Server-Kopie, wenn eine Kennzahl davon abhängt.
Anmeldung & LoginBeideDer Punkt, an dem Identitäten zusammenkommen – dieselbe Nutzer-ID auf beiden Wegen.
Umsatz & Abo-StatusServerGeld-Events passieren in Ihrem Backend; die Zahl muss mit Ihrer Datenbank übereinstimmen.
E-Mail-, Webhook- & Integrations-EventsServerSie kommen als Webhooks von Ihren Anbietern – auf der Client-Seite gibt es nichts zu erfassen.

Wie sollte ein kleines Team das aufteilen?

  • Alles, was mit Geld zu tun hat – Testphasen, Abos, Zahlungen, Erstattungen –, gehört auf den Server. Wenn Churn oder MRR stimmen müssen, ist der Server die maßgebliche Quelle.
  • Alles, was mit Attribution zu tun hat – Seitenaufrufe, Kampagnen, Referrer –, bleibt auf dem Client. Dieser Kontext lässt sich später nicht rekonstruieren.
  • Identifizieren Sie auf beiden Wegen mit derselben Nutzer-ID, damit Funnels zusammenpassen und A/B-Tests bei wenig Traffic jeden Nutzer geräteübergreifend einer Variante zuordnen.
  • Akzeptieren Sie die Lücke. Client-Zahlen liegen systembedingt zu niedrig; nutzen Sie sie für die Richtung und Server-Events für alles, was in Berichte eingeht.

Warum stimmen die beiden Zahlen nie überein?

Wenn Sie beides betreiben, werden die Zahlen voneinander abweichen – dauerhaft. Die Client-Zahl liegt zu niedrig, weil Blocker und ITP Events schlucken; der Server-Zahl fehlt der Kontext, um zu sagen, woher Nutzer kamen. Das ist kein Fehler, den Sie beheben, sondern eine Eigenschaft, die Sie benennen: Rechnen Sie mit einer dauerhaften Lücke zwischen Client-Analyse und Server-Wahrheit, kennen Sie ihre ungefähre Größe für Ihre Zielgruppe und hören Sie auf, ihr hinterherzulaufen. Weisen Sie jede Zahl von ihrer ehrlichen Seite aus – Attribution und Funnel-Richtung aus Client-Daten; alles, was in einem Investoren-Deck oder auf einer Rechnung landet – Churn-Rate, MRR, aktive Abos –, berechnet aus Server-Events. Engagement-Plattformen wie Iterable und Ortto akzeptieren aus demselben Grund beide Quellen.

Wie geht fromHello damit um?

fromHello behandelt die Aufteilung als Standard. Das JS/TS-SDK trackt clientseitig und führt eine Offline-Warteschlange auf Basis von localStorage – Events, die während eines Verbindungsabbruchs ausgelöst werden, bleiben erhalten und werden erneut gesendet, sobald der Browser wieder online ist. Dieselbe Events-API nimmt auch serverseitig gesendete Events an, sodass subscription_started mit einem API-Schlüssel direkt aus Ihrem Backend kommt. Beide Wege schreiben in ein einziges Profil: Die Attribution, die das SDK erfasst hat, und die Umsatz-Events, die Ihr Server gesendet hat, beschreiben dieselbe Person. Segmente, Journeys und Analysen lesen aus diesem einen Profil – Sie teilen die Instrumentierung auf, nicht die Identität.

FAQ

Häufige Fragen

  • Sollte ich das gesamte Tracking auf serverseitig umstellen?

    Nein. Serverseitige Events haben keinen Kontext zu UTM, Referrer oder Gerät. Wer alles dorthin verlagert, tauscht Verlust gegen Blindheit. Lassen Sie Attribution und Kontext aus dem Produkt auf der Client-Seite, verlagern Sie Geld und Lifecycle-Status auf den Server und verbinden Sie beides über eine einzige Nutzer-ID. Die Aufteilung nach Event-Klasse schlägt jedes Extrem.

  • Umgeht serverseitiges Tracking Adblocker?

    Ehrlich formuliert: Ihre eigenen First-Party-Events, die Sie aus Ihrem Backend senden, laufen nie durch den Browser, also gibt es für einen Blocker nichts zu blockieren. Das ist kein Schlupfloch gegen Nutzer – die eigenen Events Ihres Produkts sind keine Werbetechnik, und die Regeln zur Einwilligung gelten so oder so. Unter der DSGVO geht es bei der Einwilligung um die Person und den Zweck, nicht um den Weg, den das Event genommen hat.

  • Welche Events sollten zuerst auf den Server wandern?

    Umsatz und Abo-Lifecycle: subscription_started, payment_failed, plan_changed, Kündigungen, Erstattungen. Sie passieren ohnehin in Ihrem Backend, sie treiben die Berechnung von Churn und MRR, und bei ihnen kostet Sie eine zu niedrige Zahl echte Entscheidungen.

  • Wie werden Client- und Server-Events zusammengeführt?

    Über eine gemeinsame Nutzer-ID. Geben Sie dem SDK im Browser dieselbe ID, die Ihr Backend an die Events-API sendet, und beide Datenströme landen in einem Profil. Funnels, Experimente und Segmente sehen dann eine Person statt zwei halber Personen.

fromHello ist Open-Source-Software für Marketing-Automation: Nachrichten, ausgelöst durch das, was Menschen tun.

fromHello Cloud ist im Early Access über die Warteliste verfügbar.

Early Access

fromHello Cloud

Niemand gründet, um klein zu bleiben.

Der Early Access für fromHello Cloud öffnet schrittweise. Das Onboarding ist persönlich: Wir helfen Ihnen bei der Einrichtung und beim Umzug Ihrer Kontakte.

Wir schreiben Ihnen, sobald Ihr Platz frei wird. Kein Spam.

Noch nicht so weit? Auf GitHub ansehen