Encontrar a jornada (canais) do cliente feita pelos usuários no Google BigQuery
Estou procurando encontrar o usuário do Customer Journey feito através dos Canais de Marketing Online. O esquema do meu conjunto de dados é igual ao Google Merchandise Store, que pode ser encontrado aqui:https: //support.google.com/analytics/answer/3437719? hl = en
É assim que meus dados de entrada se parecem (exemplo):
+---------------+-------+------------+---------+--------------+-------------+
| fullVisitorId | visit | visitTime | revenue | transactions | channel |
+---------------+-------+------------+---------+--------------+-------------+
| 1234 | 1 | 1516468217 | null | null | Direct |
| 1234 | 2 | 1517937012 | null | null | EMail |
| 1234 | 3 | 1523031014 | null | null | Organic |
| 1234 | 4 | 1530461419 | null | null | Organic |
| 1234 | 5 | 1531152611 | null | null | Paid Search |
| 1234 | 6 | 1531411812 | 1393000 | 1 | Organic |
+---------------+-------+------------+---------+--------------+-------------+
Eu já fiz essa consulta SQL:
WITH
_step1 AS (SELECT
DISTINCT
a.fullVisitorId,
a.visitNumber,
a.visitStartTime,
a.Date,
a.totals.totalTransactionRevenue AS totalTransactionRevenue,
a.totals.transactions AS transactions,
a.channelGrouping AS channelGrouping
FROM
`data` a,
unnest(a.hits) as h
)
SELECT
a.fullVisitorId as visitor,
STRING_AGG(channelGrouping, '>') AS CustomerJourney,
SUM(totalTransactionRevenue) AS Umsatz,
SUM(transactions) AS transaktionen
FROM
_step1 as s
GROUP BY fullVisitorId
Os resultados devem ter a seguinte aparência:
+--------+----------------------------+---------+---------------+
| visitor| CustomerJourney | Umsatz | transaktionen |
+--------+----------------------------+---------+---------------+
|1234 | Direct>EMail | null | null |
|1234 | Organic | null | null |
|1234 | Organic>Paid Search>Organic| 1393000 | 1 |
+--------+----------------------------+---------+---------------+
O que eu realmente recebo:
+--------+-------------------------------------------------+---------+---------------+
| visitor| CustomerJourney | Umsatz | transaktionen |
+--------+-------------------------------------------------+---------+---------------+
|1234 | Direct>EMail>Organic>Organic>Paid Search>Organic|1393000 |1 |
+--------+-------------------------------------------------+---------+---------------+
A parte difícil:
Há um período de rastreamento de conversões (30 dias), o que significa que uma nova jornada do cliente começará se tiverem decorrido 30 dias desde a primeira visita ou se o usuário tiver concluído uma transação (uma nova linha). Existem registros de data e hora para cada visita.
Que consulta devo começar a considerar o período de acompanhamento de conversões?