Berichte zu E-Commerce-Order-Placed-Events im Dashboard Builder
Erstellen Sie angepasste Umsatz- und Bestell-Charts aus empfohlenen
ecommerce.order_placed-Events, indem Sie SQL-Anfragen im Query Builder speichern und die Ergebnisse im Dashboard Builder visualisieren.
Voraussetzungen
| Anforderungen | Beschreibung |
|---|---|
| Berechtigungen für den Query Builder | Die Berechtigungen „Dashboard-Berichte anzeigen“, „PII anzeigen“ und „Dashboard-Berichte bearbeiten“ auf Workspace-Ebene |
ecommerce.order_placed-Events |
Empfohlene E-Commerce-Events sind implementiert und senden total_value (bei Bedarf auch Produktdaten). Wenn Sie den Shopify-Konnektor verwenden, sind die empfohlenen Events möglicherweise bereits verfügbar. |
Über dieses Beispiel
Flash & Thread, eine fiktive Bekleidungsmarke im Einzelhandel, loggt Bestellungen mit empfohlenen E-Commerce-Events. Das Marketing-Team möchte den täglichen Umsatz, den durchschnittlichen Bestellwert (AOV) und das Bestellvolumen in einem einzigen Dashboard sehen – nicht nur in der vorgefertigten Ansicht mit Last-Touch-Attribution.
In diesem Szenario fragen Sie mit dem Query Builder ecommerce.order_placed aus den geteilten Event-Tabellen von Snowflake ab und fügen die gespeicherte Abfrage anschließend als Custom Queries-Kachel im Dashboard Builder hinzu. Sie können diesen Workflow für weitere Metriken wiederholen (neue versus wiederkehrende Käufer:innen, Produktkategorien oder Umsatz auf Segment-Ebene).
Nutzen Sie diesen Ansatz, wenn die integrierten E-Commerce-Dashboards Ihre gewünschte Kombination an Metriken nicht abdecken. Für Umsatz mit Last-Touch-Attribution verwenden Sie stattdessen das Dashboard Revenue - Last Touch Attribution.
Überlegungen
- Datenaufbewahrung: Query Builder gibt standardmäßig Daten der letzten 60 Tage zurück. Mit Snowflake Data Sharing können Sie bis zu zwei Jahre an aufbewahrten Daten abfragen. Weitere Informationen finden Sie unter Query Builder.
- Zeitüberschreitungen: Abfragen, die länger als sechs Minuten laufen, werden wegen Zeitüberschreitung abgebrochen. Wenn ein Bericht fehlschlägt, grenzen Sie den Datumsbereich ein, filtern Sie nach
TIMEoder verkleinern Sie die Zielgruppe. Event-Tabellen sind nachTIMEgeclustert. Filtern Sie daher bevorzugt nach dem Zeitpunkt, zu dem das Event eingetreten ist. - Umsatzfeld: Die Beispielabfragen summieren
total_valueaus den Event-properties. Der standardisierte E-Commerce-Umsatz von Braze in Produktberichten wird oft auspriceundquantityder einzelnen Produkte abgeleitet. Gleichen Sietotal_valuemit Ihren Produkt-Einzelposten ab oder passen Sie das SQL an Ihr Schema an. - Spaltenbeschriftungen: Setzen Sie Anzeigenamen von Spalten in doppelte Anführungszeichen (zum Beispiel
"Date","Total Revenue"), damit Dashboard Builder lesbare Achsen- und Tabellenüberschriften anzeigt. - Testen: Das SQL in diesem Artikel dient als Beispiel. Überprüfen Sie die Abfragen in Ihrem Workspace, bevor Sie Dashboards umfassend teilen.
Einrichtung
Schritt 1: SQL-Anfrage für den täglichen Umsatz erstellen
- Gehen Sie zu Analytics > Query Builder.
- Wählen Sie SQL-Anfrage erstellen und dann SQL-Editor.
- Benennen Sie die Anfrage (zum Beispiel
Flash Thread — daily eCommerce revenue). - Fügen Sie die folgende Anfrage ein und passen Sie sie an, um den Gesamtumsatz pro Kalendertag für die letzten 60 Tage zu ermitteln:
SELECT
DATE_TRUNC('day', TO_TIMESTAMP_NTZ(TIME))::DATE AS "Date",
SUM(PARSE_JSON(PROPERTIES):total_value::NUMBER(18, 2)) AS "Total Revenue"
FROM USERS_BEHAVIORS_CUSTOMEVENT_SHARED
WHERE NAME = 'ecommerce.order_placed'
AND TO_TIMESTAMP_NTZ(TIME) >= DATEADD(day, -60, CURRENT_TIMESTAMP())
AND TO_TIMESTAMP_NTZ(TIME) <= CURRENT_TIMESTAMP()
GROUP BY 1
ORDER BY 1;
- Wählen Sie Anfrage ausführen und anschließend Speichern.
Details zur Einrichtung des Query Builders finden Sie unter Berichte im Query Builder ausführen.
Schritt 2: Anfrage zu einer Kachel im Dashboard Builder hinzufügen
- Gehen Sie zu Analytics > Dashboard Builder.
- Wählen Sie Dashboard erstellen (oder öffnen Sie ein bestehendes Dashboard).
- Wählen Sie als Datenquelle Angepasste Anfragen.
- Wählen Sie + Kachel hinzufügen und dann die Anfrage, die Sie in Schritt 1 gespeichert haben.
- Wählen Sie das Stiftsymbol, um die Kachel zu bearbeiten:
- Legen Sie als Chart-Typ Liniendiagramm fest.
- Legen Sie für die X-Achse
Datefest. - Legen Sie für die Y-Achse
Total Revenuefest.
- Passen Sie die Größe der Kachel nach Bedarf an und wählen Sie dann Speichern.
- Wählen Sie Dashboard anzeigen > Dashboard ausführen.
Die Erstellung des Dashboards kann einige Minuten dauern. Weitere Informationen finden Sie unter Ein angepasstes Dashboard erstellen.
Schritt 3: Weitere Order Placed-Metriken hinzufügen (optional)
Erstellen Sie separate gespeicherte Anfragen und fügen Sie jede davon als eigene Kachel hinzu (bis zu 10 Kacheln pro Dashboard).
Durchschnittlicher Bestellwert und Anzahl der Bestellungen pro Tag
SELECT
DATE_TRUNC('day', TO_TIMESTAMP_NTZ(TIME))::DATE AS "Date",
AVG(PARSE_JSON(PROPERTIES):total_value::NUMBER(18, 2)) AS "Average Order Value",
COUNT(*) AS "No. of Orders"
FROM USERS_BEHAVIORS_CUSTOMEVENT_SHARED
WHERE NAME = 'ecommerce.order_placed'
AND TO_TIMESTAMP_NTZ(TIME) >= DATEADD(day, -60, CURRENT_TIMESTAMP())
AND TO_TIMESTAMP_NTZ(TIME) <= CURRENT_TIMESTAMP()
GROUP BY 1
ORDER BY 1;
Verwenden Sie ein Linien- oder Balkendiagramm mit Date auf der X-Achse und beiden Metriken auf der Y-Achse (heben Sie die Auswahl von Spalten auf, die nicht angezeigt werden sollen).
Neue und wiederkehrende Käufer:innen pro Tag
Dieses Szenario vergleicht den Tag des ersten ecommerce.order_placed-Events jedes Nutzers bzw. jeder Nutzerin mit späteren Kauftagen. Am genauesten ist es, wenn das Zeitfenster Ihres Query Builders den gesamten Berichtszeitraum abdeckt (zum Beispiel das standardmäßige 60-Tage-Fenster).
WITH order_days AS (
SELECT DISTINCT
USER_ID,
DATE_TRUNC('day', TO_TIMESTAMP_NTZ(TIME))::DATE AS purchase_day
FROM USERS_BEHAVIORS_CUSTOMEVENT_SHARED
WHERE NAME = 'ecommerce.order_placed'
),
first_purchase AS (
SELECT
USER_ID,
MIN(purchase_day) AS first_day
FROM order_days
GROUP BY USER_ID
),
per_day_purchasers AS (
SELECT DISTINCT
USER_ID,
purchase_day
FROM order_days
)
SELECT
p.purchase_day AS "Date",
COUNT(DISTINCT CASE
WHEN f.first_day = p.purchase_day THEN p.USER_ID
END) AS "New Purchasers",
COUNT(DISTINCT CASE
WHEN f.first_day < p.purchase_day THEN p.USER_ID
END) AS "Returning Purchasers"
FROM per_day_purchasers AS p
INNER JOIN first_purchase AS f
ON p.USER_ID = f.USER_ID
GROUP BY 1
ORDER BY 1;
Produktkategorie aus Bestellpositionen
Flachen Sie das Array products ab und filtern Sie nach Ihrem Kategoriefeld. Ersetzen Sie metadata.category, wenn Sie einen anderen Schlüssel für Produktmetadaten verwenden.
SELECT
f.value:metadata:category::STRING AS "Product Category",
COUNT(*) AS "Line Items"
FROM USERS_BEHAVIORS_CUSTOMEVENT_SHARED,
LATERAL FLATTEN(INPUT => PARSE_JSON(PROPERTIES):products) f
WHERE NAME = 'ecommerce.order_placed'
AND f.value:metadata:category::STRING IS NOT NULL
AND TRIM(f.value:metadata:category::STRING) != ''
AND LOWER(TRIM(f.value:metadata:category::STRING)) != 'undefined'
GROUP BY 1
ORDER BY 2 DESC;
Käufe und Umsatz nach Segment (Segment-Analytics)
Dafür ist Segment-Analytics-Tracking für die Segmente erforderlich, über die Sie berichten. Verwenden Sie SQL-Variablen für Datumsauswahlen.
WITH event_conversions AS (
SELECT
user_id,
time,
TRY_CAST(GET_PATH(PARSE_JSON(PROPERTIES), 'total_value')::string AS FLOAT) AS price,
id AS purchase_event_id,
f.value::string AS user_segment_membership_id
FROM USERS_BEHAVIORS_CUSTOMEVENT_SHARED,
LATERAL FLATTEN(input => user_segment_membership_ids) AS f
WHERE NAME = 'ecommerce.order_placed'
AND time > {{start_date.${Start Date}}}
AND time < {{end_date.${End Date}}}
)
SELECT
user_segment_membership_id AS "Segment Analytics Id",
COUNT(DISTINCT purchase_event_id) AS "Total Purchases",
ROUND(SUM(price), 2) AS "Total Revenue"
FROM event_conversions
GROUP BY 1
ORDER BY 3 DESC;
Weitere integrierte E-Commerce-Berichte
| Bericht | Verwenden, wenn Sie Folgendes benötigen |
|---|---|
| Revenue - Last Touch Attribution | Per Last-Touch-Attribution zugeordneter Umsatz nach Campaign oder Canvas |
| Bericht über angepasste Events | Event-Volumen und -Häufigkeit für empfohlene Events |
| Konversionen von Campaigns oder Canvas | ecommerce.order_placed ist das primäre Konversions-Event |