GA4 Auditor – Features & Testkatalog
GA4 Auditor – Was die App prüft und wie die Checks zu verstehen sind
Techniker wollen meist zwei Dinge: erstens schnell erkennen, ob eine GA4 Property „gesund“ ist, zweitens die Ursachen sauber eingrenzen. Genau dafür ist der GA4 Auditor gebaut.
Die App kombiniert vier Arten von Prüfungen:
- GA4 Live Check: schnelle GA4 Setup- und Datenqualitätschecks auf Basis der GA4 APIs
- Ampel Checks: komprimierte Pass, Warning, Fail Bewertung mit Fokus auf BigQuery Rohdatenchecks
- SST Analyse: technische Einschätzung mit Scoring, ob serverseitiges Tracking sinnvoll ist
- OnPage Checks: Browser-basierte Analyse einer URL auf Tracking-Setup, Consent und Third-Party Tools
Datenquellen und Grenzen
GA4 APIs
- GA4 Admin API: Konfiguration und Setup wie Streams, Enhanced Measurement, Key Events, Google Ads Linking, BigQuery Linking, Custom Definitions, Annotations, Audiences
- GA4 Data API: aggregierte Metriken und Dimensionen zur Plausibilisierung wie Channel-Anteile, PageTitle Muster, E-Commerce Signale, Site Search
Wichtig: Die Data API ist oft zeitverzögert. Darum basieren manche Checks bewusst nicht auf den letzten Tagen, damit die Bewertung stabil bleibt.
BigQuery Export
Wenn der BigQuery Export aktiv ist, nutzt die App Rohdaten aus dem Export. Das ermöglicht tiefe Checks wie PII Hinweise, Duplikate, Query Parameter Muster, Payment Referrals oder Funnel-Konsistenz.
Playwright (OnPage)
Für die OnPage-Analyse wird ein Headless-Browser (Chromium via Playwright) genutzt. Die Seite wird in zwei Phasen geladen: vor und nach Consent-Akzeptanz. Dabei werden Netzwerk-Requests, DataLayer und DOM analysiert.
Statuslogik in der Praxis
Die meisten Checks landen in einer von drei Klassen:
- Pass: Keine Auffälligkeit oder ausreichend gute Datenlage
- Warning: Erkennbares Risiko oder unvollständiges Setup, das häufig zu falschen Reports führt
- Fail: Hohe Wahrscheinlichkeit eines echten Tracking- oder Datenproblems
Ob ein Check Count-basiert oder anteilsbasiert ist, erkennt man am Signal: entweder „Anzahl betroffener Events“ oder „Anteil in Prozent“.
Vollständige Check-Übersicht als Tabelle
Die Tabelle ist so aufgebaut, dass du sie direkt als technische Referenz nutzen kannst. Sie beschreibt pro Check:
- Bereich: Live Check, Ampel, SST oder OnPage
- Datenquelle: Admin API, Data API, BigQuery Export oder Playwright
- Signal: was konkret gemessen wird
- Typische Ursachen: häufige technische Gründe
- Empfohlene Maßnahmen: nächste sinnvolle Schritte
GA4 Live Check (API-basiert)
| Check | Datenquelle | Signal | Typische Ursachen | Empfohlene Maßnahmen |
|---|---|---|---|---|
| Streams vorhanden | Admin API | Es existiert mindestens ein Stream | Property unvollständig, Migration noch nicht fertig | Stream anlegen, Tagging prüfen, Datenfluss in Realtime verifizieren |
| Enhanced Measurement aktiv | Admin API | Enhanced Measurement ist aktiv für Web | bewusst deaktiviert, falscher Stream konfiguriert | Stream Settings prüfen, nur benötigte Auto-Events aktivieren |
| Key Events vorhanden | Admin API | Mindestens ein Key Event ist definiert | Ziele nicht gepflegt, historisch nur Conversions genutzt | Kernziele definieren und als Key Events markieren |
| Google Ads Linking vorhanden | Admin API | Mindestens eine Ads-Verknüpfung | fehlende Berechtigungen, Linking nie eingerichtet | Linking herstellen, Produktlinks und Berechtigungen prüfen |
| BigQuery Export verknüpft | Admin API | BigQuery Linking vorhanden und erreichbar | Dataset Location, IAM, Export nicht aktiv | Linking einrichten, IAM sauber setzen, Exportstatus prüfen |
| Annotations vorhanden | Admin API | Es existieren Data Annotations | Governance fehlt, keine Release Notes im Reporting | Deployment, Kampagnen und Tracking-Änderungen annotieren |
| Custom Definitions vorhanden | Admin API | Custom Dimensions oder Metrics existieren | Parameter nicht registriert, Daten unlesbar im UI | relevante Parameter als Custom Definitions registrieren |
| Privacy Signals | Admin API | Data Retention und Google Signals Status | Retention zu kurz, Signals bewusst aus | Retention prüfen, Signals-Entscheidung dokumentieren |
| Basis Events vorhanden | Data API | session_start und page_view sind vorhanden | Tag nicht feuert, Consent blockiert, falscher Stream | Tagging und Consent prüfen, DebugView und Realtime nutzen |
| Direct Anteil plausibel | Data API | Anteil Direct ist erhöht oder stabil | UTMs fehlen, Redirects verlieren Parameter, Consent Effekte | UTM Governance, Redirect-Kette, Referrer Policy prüfen |
| Unassigned Anteil plausibel | Data API | Anteil Unassigned oder Other ist erhöht | Channel Rules fehlen, Source Medium inkonsistent | UTM Standards, Channel Definitionen, Kampagnenlinks prüfen |
| PageTitle not set Anteil | Data API | Anteil PageTitle not set | SPA setzt Titel zu spät, Tracking Timing, Consent Timing | SPA Title Handling fixen, Virtual Pageviews, Timing debuggen |
| PageTitle enthält 404 Anteil | Data API | Anteil PageTitle mit 404 Mustern | kaputte Links, fehlende Redirects | 404 URLs identifizieren, Redirects setzen, interne Links fixen |
| Traffic Source not set Anteil | Data API | Anteil sessionSource not set | UTMs fehlen, Referrer verloren, Consent Mode | UTM Pflicht, Redirects, Consent Implementierung prüfen |
| E-Commerce Plausibilität | Data API | Add to Cart und Purchase Signale passen zusammen | Checkout Events fehlen, Purchase doppelt, Value fehlt | E-Commerce Eventplan, purchase Params, QA über Debug und BQ |
| Site Search Nutzung | Data API | Search Terms tauchen auf | Enhanced Measurement aus, view_search_results fehlt | Site Search Tracking aktivieren oder korrekt mappen |
| Audiences vorhanden | Admin API | Audiences existieren mit Bedingungen | kein Remarketing Setup | Basis Audiences definieren, Segmentierung planen |
Ampel Checks (BigQuery-basiert)
| Check | Datenquelle | Signal | Typische Ursachen | Empfohlene Maßnahmen |
|---|---|---|---|---|
| Event Errors | BigQuery | Fehlende Items, IDs, Values, PII, Debug-Mode | Schema-Fehler, falsches Tagging | Event-Schema validieren, QA-Prozess einführen |
| Duplicate Events | BigQuery | Doppelte Events (gleicher Timestamp + User) | Trigger doppelt, Reload-Probleme | Trigger Audit, Event Idempotenz prüfen |
| Event Values | BigQuery | Events ohne Value bei wertbasierten Events | Value nicht gesetzt, falsche Param-Namen | Param-Standardisierung, Value und Currency setzen |
| Page Quality | BigQuery | Seiten mit not set oder 404 Indikator | SPA Timing, kaputte Links | Title Handling, Redirects, Linkhygiene |
| URL Parameters | BigQuery | PII-verdächtige oder Session-ID Parameter | PII in URL, IDs in Query String | Parameter bereinigen, PII entfernen, URL Strategy |
| PII Hinweise | BigQuery | E-Mail, Telefon, Name in URLs/Referrern | Formulare, Redirects, Legacy-Links | Leaks stoppen, Redirects, Server-Side Filtering |
| Content Grouping | BigQuery | Content Groups nicht befüllt | Taxonomie fehlt, Parameter nicht gesetzt | Content Taxonomie definieren, Parameter konsistent senden |
| Site Search | BigQuery | Suchevents und Terms vorhanden | Search nicht getrackt | view_search_results implementieren |
| Session Consistency | BigQuery | Sessions ohne session_start, ohne page_view, Bot-Muster | Bot Traffic, Trigger Loops, Consent | Bot Filter, Trigger Audit, SPA Setup prüfen |
| Session Gap | BigQuery | Zeitabstände zwischen Sessions (Bucket-Verteilung) | Session Timeout Einstellungen | Session-Konfiguration prüfen |
| User ID Coverage | BigQuery | Anteil user_id Events | Login fehlt, user_id nicht gesetzt | user_id Strategie, Set und Clear bei Login/Logout |
| Acquisition Channels | BigQuery | Keine Quelle, kein Medium, ungültige UTMs | UTMs fehlen, Redirects | UTM Governance, Redirect-Kette prüfen |
| Self Referrals | BigQuery | Eigene Domain als Referrer | Cross Domain kaputt, Payment Flows | Referral Exclusions, Cross Domain Setup |
| Channel Distribution | BigQuery | Anteil Unassigned und Direct hoch | UTMs fehlen, Channel Rules | UTM Pflicht, Channel Definitionen |
| Ecommerce Funnel | BigQuery | Funnel-Sprünge (Purchase ohne Cart/Checkout) | Events fehlen, Reihenfolge falsch | Funnel Eventplan, Implementierung prüfen |
| Ecommerce Transactions | BigQuery | Revenue null, fehlende transaction_id | value nicht gesetzt, Backend-Fehler | Value und Currency, Backend validieren |
| Duplicate Transactions | BigQuery | Doppelte Purchases | Reload Thank You, Trigger doppelt | Dedupe über transaction_id, Trigger Audit |
| Payment Referrals | BigQuery | Payment Domains als Referrer | Checkout Domainwechsel | Referral Exclusions, Return URL prüfen |
SST Analyse (Scoring-basiert)
Die SST-Analyse berechnet einen gewichteten Score (0-100) aus 5 Checks. Grün (≥80) bedeutet geringe Browser-Auswirkungen, Rot (<60) empfiehlt SST.
| Check | Gewicht | Datenquelle | Signal | Typische Ursachen | Empfohlene Maßnahmen |
|---|---|---|---|---|---|
| Cookie Lifetime Impact | 35% | Data API | Safari vs Chrome Returning Rate, Key Event CR, Purchase CR | ITP, Cookie Limits | First Party Strategie, SST Evaluierung |
| Attribution Gap | 35% | Data API | Unattribuierte Sessions/Key Events nach Browser | UTMs fehlen, Referrer verloren | UTMs, Redirects, Cross Domain Setup |
| Funnel Duration | 20% | BigQuery | Tage bis Conversion, % jenseits 7-Tage ITP-Cutoff | Lange Kaufzyklen | SST für längere Attribution |
| Cross-Domain | 10% | Data API | Mehrere Domains erkannt | Multi-Domain Setup | Cross Domain Tracking, Linker prüfen |
| SST Detection | – | BigQuery | user_pseudo_id Muster deuten SST an | Hybrid Setup | SST Coverage erhöhen oder klar abgrenzen |
OnPage Checks (Browser-basiert)
Die OnPage-Analyse läuft via Playwright (Headless Chromium) und prüft eine URL in zwei Phasen: vor und nach Consent-Akzeptanz.
| Check | Signal | Typische Ursachen | Empfohlene Maßnahmen |
|---|---|---|---|
| Server-Side Tagging | Custom GA4 Endpoints, FPID Cookie, Provider (Stape/OwnTag) | SST aktiv oder nicht | SST-Setup verifizieren |
| GTM Implementierung | Container-IDs, Duplikate, Custom Loader | Mehrfache Container, falsches Setup | Container konsolidieren |
| CMP Erkennung | 14 CMPs erkannt (Cookiebot, OneTrust, Usercentrics, etc.) | CMP nicht erkannt | CMP-Integration prüfen |
| Consent Mode v2 | Default/Updated Consent State, gcd Parameter | Consent Mode fehlt oder falsch | Consent Mode korrekt implementieren |
| Privacy/DSGVO | Tracking vor Consent, Advanced vs Basic Mode | Compliance-Probleme | Consent-Flow korrigieren |
| Third-Party Tools | 9 Tools erkannt (Meta, TikTok, LinkedIn, Clarity, etc.) | Tools ohne Consent geladen | Consent-Integration für alle Tools |
| DataLayer | Events, E-Commerce Validierung, JS Errors | Schema-Fehler, fehlende Events | DataLayer-Schema validieren |
BigQuery Reports in der App
Neben den Checks gibt es BigQuery Reports, die zur Ursachenanalyse gedacht sind:
- Event Completeness: prüft erwartete Events gegen die tatsächliche Eventlandschaft
- Duplicate Events: zeigt Duplikate und Ausnahmen für kontrolliertes Deduping
- Order Attribution: detaillierte Purchase-Attribution mit Landing Pages, Referrer-Domains, First Events
- Google Ads Attribution: gclid-Tracking vs. Default Channel Grouping Vergleich
- Session Gap Analysis: Verteilung der Zeitabstände zwischen Sessions
- Hourly Trends: stündliche Verläufe als Debughilfe nach Deployments
Wie man das Ergebnis sinnvoll nutzt
Ein guter Workflow für Techniker:
- Start im Live Check Overview, um schnell zu sehen, ob Setup und Datenbasis grundsätzlich stimmen
- Bei Warnings und Fails in den Ampel-Tab (BigQuery) wechseln, weil die Rohdaten fast immer die Ursache sichtbar machen
- Bei Attribution, Browser-Gaps und Consent Effekten den SST-Bereich nutzen, um Impact und Priorität zu bewerten
- Für spezifische URLs die OnPage-Analyse nutzen, um Consent Mode, CMP und Third-Party Setup zu verifizieren