Verwenden von Rohdaten in Google Analytics in der Praxis

Wir sind seit langem davon überzeugt, dass Standard-Google Analytics-Tools der beste Weg sind, um nützliche Informationen zu erhalten. Manchmal musste ich mich mit einigen Einschränkungen und ziemlich seltsamen Ergebnissen auseinandersetzen, und es schien, als gäbe es kein Ende, bis einige Analysten Google Analytics 360 und die Mechanismen für den Export von Rohdaten nach Google BigQuery entdeckten.

Nach nur wenigen Stunden Arbeit mit erweiterten Tools und SQL-Abfragen konnten wir Informationen extrahieren, die wir niemals erhalten hätten, indem wir nur aggregierte Berichte von Google Analytics verwendeten. Von diesem Moment an konzentrierten wir uns darauf, die Funktionen von Rohdaten („Rohdaten“) zu untersuchen und herauszufinden, welche praktischen Vorteile Web-Experten daraus ziehen können.

Dieser Artikel beantwortet die folgenden Fragen:

  • Was ist der Unterschied zwischen Rohdaten und zusammenfassenden Daten?
  • Was sind die Vorteile der Verwendung von Rohdaten?
  • Wie greife ich auf Rohdaten zu?
  • Wie werden diese neuen Daten verwendet (praktische Beispiele)?

Was ist der Unterschied zwischen Roh- und Zusammenfassungsdaten in Google Analytics?


Mit der kostenlosen Version von Google Analytics können Sie nur zusammenfassende Daten abrufen. Das heißt, vollständige Anzeigeinformationen für einen bestimmten Besuch und eine bestimmte Veranstaltung sind nicht verfügbar. Natürlich enthält der User Explorer-Bericht viele nützliche Informationen, die Webanalysen verwenden können. Diese Datei unterliegt jedoch bestimmten Einschränkungen: Sie wird nicht skaliert und steht nicht zum Download zur Verfügung.

In den meisten Fällen reicht es aus, nur zusammenfassende Daten zu haben, um Antworten auf häufig gestellte Fragen zu erhalten:

  • Welche Kampagne bringt die meisten Conversions?
  • Wie häufig ist die maschinelle Lerntechnologie von Feature X (wächst die Benutzerbasis)?
  • Woher kommen die Besucher (Hauptverkehrsquellen)?
  • Von welchen Geräten gehen Benutzer?



Sie müssen die Rohdaten nicht analysieren, um Antworten auf die obigen Fragen zu erhalten. Benutzerdefinierte oder standardmäßige Berichterstellungstools in Google Analytics können dies problemlos tun. Das Hauptproblem bei Zusammenfassungsdaten besteht darin, dass sie aggregiert werden. Sie ordnen viele Arten von Benutzeraktionen zu, mit denen sehr nützliche Informationen ausgeblendet werden können. Wir geben ein Beispiel mit Ansichten von mehreren Seiten in einer Sitzung. Wir haben zwei Quellen mit sechs Sitzungen mit der folgenden Anzahl von Seiten, die in einer Sitzung angezeigt werden:

  • Quelle A: 1, 1, 2, 2, 2, 10;
  • Quelle B: 2, 2, 3, 3, 4, 4.

Unter Verwendung der statistischen Ausreißermethode kann festgestellt werden, dass Quelle A einen Benutzer mit einem geringeren Grad an Beteiligung charakterisiert. Wenn wir jedoch nur die gemittelten Daten berücksichtigen, können wir für beide Quellen auf die gleiche Beteiligung schließen, da die Anzahl der Seiten gleich ist (der Median kann beliebig sein).

Warum enthalten Standardanalyseberichte diese Daten nicht? Der Hauptgrund sind die Rechenkosten. Da nur selektive Zusammenfassungsdaten bereitgestellt werden, müssen die im Bericht enthaltenen Millionen Zeilen nicht verarbeitet werden. Daher enthält die kostenlose Version von Google Analytics keine Tools, mit denen erweiterte Berechnungen kostenlos durchgeführt werden können.

Welche Informationen können aus Rohdaten extrahiert werden?


Um die Einschränkungen von Zusammenfassungsdaten zu verstehen, müssen Sie herausfinden, wie Rohdaten verwendet werden können. Betrachten Sie mehrere Optionen für ihre Anwendung.

Ereignisdauer


Eine der Einschränkungen, mit denen ein Webanalyst konfrontiert ist, der Standard-Google Analytics-Tools verwendet, besteht darin, dass Sie das Zeitintervall zwischen dem Einlegen eines Artikels in den Warenkorb und dem Kauf nicht bestimmen können, unabhängig davon, ob diese Aktion in einer einzelnen Sitzung ausgeführt wird oder nicht. Dazu können Sie natürlich Cookies verwenden und Ihre eigenen Berechnungen durchführen. Dies ist jedoch sinnlos, zumal Google Analytics diese Arbeit bereits für uns erledigt hat.

Nach der Analyse der Rohdaten können Sie leicht den genauen Zeitpunkt des Ereignisses für einen bestimmten Benutzer bestimmen und eine vergleichende Analyse mit einem anderen Ereignis für denselben Benutzer durchführen. Sie können Daten auch nach eigenem Ermessen aggregieren, nachdem Sie eine Durchschnitts-, Median- oder Perzentilverteilung erhalten haben, oder ein anderes erweitertes statistisches Modell verwenden. Ist es nicht wichtig, dass 20% der Benutzer die Zielaktion in 2 Minuten und 10% - während der gesamten Woche - ausführen? Mit diesem Wissen verwenden Sie verschiedene Ansätze, um mit diesen beiden Benutzerkategorien zu interagieren.

Analyse der Zielgruppengröße


Sowohl Google Analytics- als auch Google Analytics 360-Berichte enthalten Besuchersegmentierungsdaten der letzten 90 Tage. Um zuverlässige Daten zu erhalten, ist häufig eine Analyse über größere Entfernungen erforderlich (insbesondere für große Unternehmen). Basierend auf der Analyse der Rohdaten können Sie Antworten auf folgende Fragen erhalten:

  1. Ist es wahrscheinlicher, dass Benutzer, die an der Weihnachtszeit beteiligt sind, das Produkt im September kaufen, als die Wahrscheinlichkeit, dass andere Benutzerkategorien im selben Monat einen Kauf tätigen?
  2. Wie wirkt sich das Ansehen von Videos während des ganzen Jahres aus und wie wirkt sich dies auf die Anzahl der Conversions aus?

Mithilfe von Rohdaten können Sie Ereignisprotokolle unbegrenzt speichern und nur löschen, wenn diese Daten bereits hoffnungslos veraltet sind.

Beziehungen zwischen Daten


Ein Korrelationskoeffizient wird eingeführt, um die statistische Beziehung zwischen zwei variablen Werten zu bestimmen. Bei der Analyse großer Datenmengen können Sie die Beziehung zwischen zwei Arten von Benutzerverhalten bestimmen:

  • Wie wirken sich Seitenaufrufe auf die Leistung einer gezielten Aktion aus?
  • Gibt es einen Zusammenhang zwischen der Art des konsumierten Inhalts und dem Produkt, das der Benutzer letztendlich erwirbt?
  • Gibt es verwandte Produkte? Wenn zum Beispiel jemand Produkt A kauft, welche Produktkategorie ist damit verbunden?

Daten von Drittanbietern


Last but not least können Sie mit Rohdaten viel mehr Informationen erhalten, wenn Sie andere Datenquellen verbinden. Im Folgenden sind einige veranschaulichende Beispiele aufgeführt:

E-Commerce-Daten. Das Tool ist am nützlichsten, wenn Sie die Kunden-ID in Google Analytics speichern, das alle Aktionen ausgeführt hat, um sie dem Warenkorb hinzuzufügen oder eine Bestellung aufzugeben. Auf diese Weise können Sie den genauen Wert der Conversion-Rate berechnen, auch wenn die Google Analytics-Tools nicht funktionierten (aufgrund der von Kunden verwendeten Werbeblocker, des Fehlens einer Weiterleitung von der Zahlungsseite, der langen Wartezeit für das Laden der Seite und aus anderen Gründen). Darüber hinaus können Sie basierend auf Ihren eigenen Daten abgebrochene Zielaktionen und Rückgaben ausschließen, um den tatsächlichen Gewinn neu zu berechnen. Außerdem können Sie komplexere und geschlossenere Indikatoren berechnen, z. B. Marge anstelle von Einkommen.

CRM-Daten. Was könnte schlimmer sein als die Tatsache, dass eine große Anzahl von Leads eine große Anzahl irrelevanter Leads enthält? Dies ist ein häufiges Problem bei B2B-Onlinediensten. Durch Exportieren von CRM-Daten mit eindeutigen Lead-IDs (mit SHA-256-E-Mail verschlüsselte Client-ID, generierte ID usw.) können Sie diese problemlos mit Client-IDs in Google Analytics verknüpfen. Auf diese Weise können Sie nicht nur den Prozentsatz der generierten Leads berechnen, sondern auch die Conversion-Rate. Die Mehrkanalanalyse erfordert komplexere Abfragen, Sie können den Berechnungsprozess jedoch vollständig steuern.

Offline-Events. Das Online-Geschäft wird von vielen externen Faktoren beeinflusst: Feiertage, Wetterbedingungen, Streiks, ein tödliches Virus, das die Hälfte der Weltbevölkerung in die Selbstisolation versetzt hat. Google Analytics bietet nicht die Möglichkeit, neue Parameter für einen bestimmten Zeitraum einzuführen. Anmerkungen sind nicht an Berechnungen beteiligt und werden ausschließlich als Benutzeroberflächenelement verwendet. Es wäre jedoch hilfreich zu wissen, wie sich Feiertage auf die Anzahl der Verkäufe auswirken.



Um eine solche Analyse durchzuführen, müssen Informationen gesammelt und in einem lesbaren Format bereitgestellt werden. Auf diese Weise erhalten Sie relevante und relevante Daten.

Anzeigen, Suchroboter, Protokolle - all diese Daten sollten in einem einzigen Repository gespeichert werden.
Indem Sie lernen, sie mit analytischen Daten zu vergleichen, können Sie Ihre wildesten Träume wahr werden lassen:

  • Zieht längerer Inhalt Benutzer an? Durch Auswahl des richtigen Suchroboters (z. B. Screaming Frog) können Sie die Beziehung zwischen der Länge des Textinhalts und der Anzahl der Seitenaufrufe herstellen.
  • Beeinflusst das Verhalten von Suchmaschinen die SEO-Optimierung? Mithilfe der BigQuery-Protokolldaten können Sie bestimmen, wie sich die Häufigkeit der Besuche beim Suchroboter auf die Suchergebnisse auswirkt.

Was ist die tatsächliche Rentabilität Ihres Unternehmens? Nachdem Sie die Einstellungen im Attributionsberechnungsalgorithmus vorgenommen haben, können Sie den Return on Investment in Werbekampagnen für alle verwendeten Plattformen messen.

Tools zur Rohdatenextraktion


Die oben dargestellten Informationen begünstigen Rohdaten. Aber wie bekommt man sie? Betrachten Sie einige der gängigsten Methoden.

Google Analytics 360


Wenn Sie das Glück haben, Zugriff auf diesen Service zu erhalten, oder wenn Sie über genügend Budget verfügen, um die Kosten für die Nutzung zu bezahlen, haben Sie das beste Tool zum Extrahieren von Rohdaten aus Google BigQuery. Sie können damit alle Informationen exportieren, einschließlich erweiterter E-Commerce-Daten. Jede Zeile entspricht einer bestimmten Sitzung, und Sie können eine Vielzahl von Parametern und Metriken verwenden.

Google Analytics App + Web und Firebase


In jüngster Zeit konnten Webanalysen Daten nach Google BigQuery exportieren, ohne Google Analytics 360 kaufen zu müssen. Firebase, der Kern der Google Analytics App + Web, unterstützt die Exportfunktionen nach Google BigQuery. Ihnen wird Blaze in Rechnung gestellt, das einen Pay-as-you-go-Ansatz verwendet. Wenn Sie ein großes Internetportal haben, müssen Sie Ihr Budget im Auge behalten. Für kleine Websites reichen die Kosten von nichts bis zu ein paar Dollar pro Monat.

Jede Zeile entspricht einem Ereignis, das einen Bildschirm oder einen Seitenaufruf enthält. Sie müssen sich an diese sehr spezielle Art der Darstellung von Daten gewöhnen, die sich von der in Google Analytics verwendeten unterscheidet. Dieser Service ist jedoch möglicherweise die beste Lösung für diejenigen, die Rohdaten verwenden möchten.

Andere kostenlose Tools: Yandex.Metrica und Matomo


Ich konnte nicht jedes Werkzeug ausprobieren, da viele davon bezahlt werden. Jedes von ihnen enthält Funktionen zum Exportieren von Rohdaten. Es gibt jedoch zwei absolut kostenlose Onlinedienste, die dieselbe Funktionalität bieten und für deren Nutzung keine Gebühren anfallen.

Yandex.Metrica ist ein absolut kostenloses Tool, das über die API seiner Protokolle Zugriff auf Rohdaten bietet. Matomo ist ein Open Source-Analysetool, das direkt auf Ihrem Server installiert werden muss, auf dem sich die Site-Dateien befinden. Es exportiert die Rohdaten direkt in Ihre Datenbank.

Datenpipeline


Eine andere Möglichkeit, Google Analytics-Daten direkt in Ihr Data Warehouse hochzuladen, ist die Datenpipeline. OWOX BI organisiert einen leistungsstarken Datenfluss zwischen Google Analytics und BigQuery. Um die Funktionalität zu implementieren, müssen Sie eine benutzerdefinierte Aufgabe in Google Analytics erstellen. Es erstellt Kopien der Google Analytics-Nutzdaten und überträgt sie an das endgültige Data Warehouse.

Mit ausreichender Erfahrung können Sie mithilfe der Funktionalität des Cloud-Dienstes und basierend auf der Analyse des Protokolls unabhängig Ihren eigenen Endpunkt für das Hochladen von Daten erstellen. Im Folgenden finden Sie zwei nützliche Ressourcen, mit denen Sie dies herausfinden können:
Simo Ahab - "Wie man einen GTM-Monitor baut." Nachdem Sie diesen Artikel gelesen haben, erfahren Sie, wie Sie mithilfe von Cloud-Funktionen Daten an BigQuery senden. Die Menge der übertragenen Daten ist auf 100.000 Zeilen pro Sekunde begrenzt, die in den BigQuery-Dienst integriert werden können. Wenn die Anzahl der Zeilen den oben angegebenen Maximalwert überschreitet, müssen Sie die Daten aus mehreren Protokollen gruppieren.

Google Cloud-Hilfe - Serverlose Pixel-Tracking-Architektur In dieser Quelle wird der Mechanismus zum Erstellen eines eigenen Tracking-Pixels und anschließende Integration in BigQuery erläutert.

Beispiele und Sonderfälle für die Verwendung von BigQuery


Jetzt kennen Sie die Vorteile der Verwendung von Rohdaten und den Zugriff darauf. Schauen wir uns nun einige Beispiele an, die die Prinzipien der Arbeit mit diesen Daten deutlich machen.

Herstellen einer Beziehung zwischen Themen und Zielaktionen in Google Analytics 360 Die
Analyse wurde für eine Nachrichtenseite mit Online-Abonnenten durchgeführt. Das Hauptziel der Analyse bestand darin, eine Beziehung (Korrelation) zwischen den Themen der von den Benutzern gelesenen Nachrichten und den durchgeführten gezielten Aktionen herzustellen.

Das Ergebnis und die Schlussfolgerungen:

corr_culture 0.397
corr_opinion 0.305
corr_lifestyle 0.0468
corr_sport 0.009

Die wahrscheinlichste Kategorie derjenigen, die die Website abonnieren, sind Benutzer, die an den Abschnitten „Kultur“ und „Meinungen“ interessiert sind. Wenn der Benutzer hingegen an den Überschriften „Lifestyle“ oder „Sport“ interessiert ist, ist die Wahrscheinlichkeit, sie zu abonnieren, minimal.

Abfrage für BigQuery
SELECT
CORR(culture,transac) AS corr_culture,
CORR(opinion,transac) AS corr_opinion,
CORR(lifestyle,transac) AS corr_lifestyle,
CORR(sport,transac) AS corr_sport
FROM(
SELECT
  SUM(IF(hit.page.pagePath LIKE'/culture%',
      1,
      0)) AS culture,
  SUM(IF(hit.page.pagePath LIKE'/opinion%',
      1,
      0)) AS opinion,
  SUM(IF(hit.page.pagePath LIKE'/lifestyle%',
      1,
      0)) AS lifestyle,-
  SUM(IF(hit.page.pagePath LIKE'/sport%',
      1,
      0)) AS sport,      
  COUNT(hit.transaction.transactionId) AS transac
FROM
  `mydatabase.view_id.ga_sessions_*`,
  UNNEST(hits) AS hit
WHERE
  _TABLE_SUFFIX BETWEEN '20191201' AND '20200301'
GROUP BY
  fullVisitorId
ORDER BY
  transac DESC
)


Kohortenanalyse mit Firebase


Eine Anwendung mit regelmäßig aktualisierten Inhalten und einer hohen Saisonalitätsrate wurde zur Analyse herangezogen. Die Analyse wird durchgeführt, um Antworten auf die folgenden Fragen zu finden:
Wie verhalten sich Benutzer, die diese Anwendung zuerst installiert haben?

Wann ist der beste Zeitpunkt, um Kunden anzulocken, die die App regelmäßig nutzen?

Das Ergebnis und die Schlussfolgerungen:



Gemessen an den erhaltenen Daten wird die Anwendung am häufigsten von Kunden verwendet, die sie im September und Dezember zum ersten Mal heruntergeladen haben.

Abfrage für BigQuery
# change my-app.analytics_123456789 to your ID
WITH cohorte_september
AS
(
WITH
user_september AS
(
SELECT DISTINCT user_pseudo_id AS user
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20190901' AND '20190930'
AND
event_name="first_open"
)
SELECT sessions, month
FROM
(
(SELECT COUNT(DISTINCT user_pseudo_id) AS sessions,"201909" AS month
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20190901' AND '20190930'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
UNION ALL
(SELECT COUNT(DISTINCT user_pseudo_id),"201910"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191001' AND '20191031'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201911"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191101' AND '20191130'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201912"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191201' AND '20191231'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202001"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200101' AND '20200131'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202002"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200201' AND '20200229'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202003"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200301' AND '20200331'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_september)
)
)
ORDER BY month ASC
),

#october

cohorte_october AS
(
WITH
user_october AS
(
SELECT DISTINCT user_pseudo_id AS user
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191001' AND '20191031'
AND
event_name="first_open"
)
SELECT sessions, month
FROM
(
(SELECT COUNT(DISTINCT user_pseudo_id) AS sessions,"201909" AS month
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20190901' AND '20190930'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october )
)
UNION ALL
(SELECT COUNT(DISTINCT user_pseudo_id),"201910"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191001' AND '20191031'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201911"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191101' AND '20191130'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201912"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191201' AND '20191231'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202001"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200101' AND '20200131'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202002"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200201' AND '20200229'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202003"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200301' AND '20200331'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_october)
)
)
ORDER BY month ASC
),

#november

cohorte_november AS
(
WITH
user_november AS
(
SELECT DISTINCT user_pseudo_id AS user
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191101' AND '20191130'
AND
event_name="first_open"
)
SELECT sessions, month
FROM
(
(SELECT COUNT(DISTINCT user_pseudo_id) AS sessions,"201909" AS month
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20190901' AND '20190930'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
UNION ALL
(SELECT COUNT(DISTINCT user_pseudo_id),"201910"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191001' AND '20191031'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201911"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191101' AND '20191130'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201912"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191201' AND '20191231'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202001"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200101' AND '20200131'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202002"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200201' AND '20200229'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202003"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200301' AND '20200331'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_november )
)
)
ORDER BY month ASC
),

#decembre


cohorte_decembre AS
(
WITH
user_decembre AS
(
SELECT DISTINCT user_pseudo_id AS user
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191201' AND '20191231'
AND
event_name="first_open"
)
SELECT sessions, month
FROM
(
(SELECT COUNT(DISTINCT user_pseudo_id) AS sessions,"201909" AS month
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20190901' AND '20190930'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre )
)
UNION ALL
(SELECT COUNT(DISTINCT user_pseudo_id),"201910"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191001' AND '20191031'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre  )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201911"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191101' AND '20191130'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre  )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"201912"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20191201' AND '20191231'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre  )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202001"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200101' AND '20200131'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre  )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202002"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200201' AND '20200229'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre  )
)
UNION ALL
(
SELECT COUNT(DISTINCT user_pseudo_id),"202003"
FROM `my-app.analytics_123456789.events_*`
WHERE
_table_suffix between '20200301' AND '20200331'
AND event_name="session_start"
AND user_pseudo_id IN (SELECT user FROM user_decembre  )
)
)
ORDER BY month ASC
)

SELECT cohorte_september.sessions AS september_cohort,  
 cohorte_october.sessions AS october_cohort,  
 cohorte_november.sessions AS november_cohort,  
 cohorte_decembre.sessions AS december_cohort,  
 month

FROM cohorte_september
JOIN  cohorte_october USING (month)
JOIN  cohorte_november USING (month)
JOIN  cohorte_decembre USING (month)
ORDER BY month ASC


Ergebnisse


Höchstwahrscheinlich werden in naher Zukunft ernsthafte Änderungen eintreten, und Google App + Web wird so etwas wie ein Industriestandard. Dieser Ansatz ermöglicht eine engere Integration zwischen Google-Diensten wie Marketing Platform und Google Cloud Platform und insbesondere BigQuery. Wenn Sie nicht mehr in der Lage sind, SQL-Abfragen zu erstellen (eine Sprache für die Arbeit mit DBMS), empfehle ich dringend, dass Sie Ihre Informationen in Ihrem Speicher aktualisieren und üben.

Die fortschrittliche digitale Datenanalyse wird aufgrund des einfachen Zugriffs auf Rohdaten, der schnellen und effizienten Rechenprozesse und der guten Visualisierung von Informationen zu einem immer leistungsfähigeren Werkzeug. In naher Zukunft wird eine noch engere Integration mit anderen Arten von Geschäftsdaten implementiert.

Experten argumentieren seit vielen Jahren, dass digitale und geschäftliche Analysen zusammenarbeiten müssen. Langsam, aber zuversichtlich bewegen wir uns darauf, diese Idee in die Realität umzusetzen.

All Articles