In diesem Dokument wird eine alte Version des Android SDK beschrieben. Wenn Sie Analytics noch nicht verwendet haben, verwenden Sie das neueste SDK. Weitere Informationen

Erweitertes E-Commerce-Tracking

Dieses Dokument bietet eine Übersicht über die Messung von In-App-E-Commerce-Aktionen und -Impressionen mit dem Google Analytics SDK Version 4 für Android.

Übersicht

Mit erweiterten E-Commerce-Berichten können Nutzerinteraktionen mit Produkten im gesamten Kaufprozess gemessen werden. Dazu zählen Produktimpressionen, Produktklicks, das Aufrufen von Produktdetails, das Hinzufügen eines Produkts zum Einkaufswagen, das Starten des Bezahlvorgangs, Transaktionen und Erstattungen.

Implementierung

Für die Messung von erweiterten E-Commerce-Berichten müssen Sie die Klasse HitBuilder und die zugehörigen Methoden verwenden, um E-Commerce-Daten für Produkte, Impressionen und Angebote zu senden. Für die Erstellung von E-Commerce-Informationen stehen auch Google Analytics-E-Commerce-Klassen zur Verfügung.

Mit erweiterten E-Commerce-Berichten können Sie:

E-Commerce-Aktivitäten messen

Bei einer typischen erweiterten E-Commerce-Implementierung werden Produktimpressionen und eine der folgenden Aktionen gemessen:

  • Produkt auswählen
  • Produktdetails ansehen.
  • Impressionen und Auswahl interner Werbung.
  • Hinzufügen oder Entfernen eines Produkts in den Einkaufswagen.
  • Bezahlvorgang für ein Produkt starten
  • Käufe und Erstattungen.

Impressionen messen

Erstellen Sie zum Messen einer Produktimpression ein Product-Objekt und senden Sie es mit der Treffermethode addImpression. Product muss einen Namen oder eine ID haben. Alle anderen Werte sind optional und müssen nicht festgelegt werden.

Product product = new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("Black")
    .setPosition(1)
    .setCustomDimension(1, "Member");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addImpression(product, "Search Results");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("searchResults");
t.send(builder.build());

Weitere Informationen zur Methode getTracker finden Sie unter Erweiterte Konfiguration.

Aktionen messen

Aktionen werden mithilfe der Methode addProduct mit einem Product-Objekt zum Hinzufügen von Produktdetails und der Methode setProductAction mit einem ProductAction-Objekt zum Angeben der auszuführenden Aktion gemessen.

Mit dem folgenden Code wird beispielsweise die Auswahl eines Produkts in einer Liste von Suchergebnissen gemessen:

Product product =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("Black")
    .setPosition(1)
    .setCustomDimension(1, "Member");
ProductAction productAction = new ProductAction(ProductAction.ACTION_CLICK)
    .setProductActionList("Search Results");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("searchResults");
t.send(builder.build());

Impressionen und Aktionen kombinieren

Wenn Sie sowohl Produktimpressionen als auch Aktionen haben, können Sie diese in einem einzigen Treffer kombinieren und analysieren.

Das folgende Beispiel zeigt, wie eine Produktdetailansicht mit einem ähnlichen Produktbereich gemessen wird:

// The product from a related products section.
Product relatedProduct =  new Product()
    .setId("P12346")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("White")
    .setPosition(1);

// The product being viewed.
Product viewedProduct =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("Black")
    .setPosition(1);

ProductAction productAction = new ProductAction(ProductAction.ACTION_DETAIL);
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addImpression(relatedProduct, "Related Products")
    .addProduct(viewedProduct)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("product");
t.send(builder.build());

Transaktionen messen

Sie können eine Transaktion mit der Methode addProduct mit einem Product-Objekt zum Hinzufügen von Produktdetails und der Methode setProductAction mit einem ProductAction-Objekt zur Angabe einer Kaufaktion erfassen. Details auf Transaktionsebene wie Gesamtumsatz, Steuern und Versandkosten finden Sie im Objekt ProductAction.

Product product =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("black")
    .setPrice(29.20)
    .setCouponCode("APPARELSALE")
    .setQuantity(1);
ProductAction productAction = new ProductAction(ProductAction.ACTION_PURCHASE)
    .setTransactionId("T12345")
    .setTransactionAffiliation("Google Store - Online")
    .setTransactionRevenue(37.39)
    .setTransactionTax(2.85)
    .setTransactionShipping(5.34)
    .setTransactionCouponCode("SUMMER2013");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("transaction");
t.send(builder.build());

Währung angeben

Standardmäßig können Sie über die Google Analytics-Verwaltungs-Weboberfläche eine gemeinsame, globale Währung für alle Transaktionen und Artikel konfigurieren.

Die Landeswährung muss im Standard ISO 4217 angegeben werden. Eine vollständige Liste der unterstützten Conversion-Währungen finden Sie in der Referenz zu Währungscodes.

Lokale Währungen werden über die currencyCode-Tracker-Property angegeben. Dieser Tracker sendet beispielsweise Währungswerte in Euro:

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("transaction");
t.set("&cu", "EUR");  // Set tracker currency to Euros.
t.send(builder.build());

Rückerstattungen messen

Wenn Sie eine ganze Transaktion erstatten möchten, verwenden Sie die Methode setProductAction mit einem ProductAction-Objekt, um die Transaktions-ID und den Typ der Erstattungsaktion anzugeben:

// Refund an entire transaction.
ProductAction productAction = new ProductAction(ProductAction.ACTION_REFUND)
    .setTransactionId("T12345");  // Transaction ID is only required field for a full refund.
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("refund");
t.send(builder.build());

Wenn keine übereinstimmende Transaktion gefunden wird, wird die Erstattung nicht verarbeitet.

Wenn Sie eine teilweise Erstattung messen möchten, verwenden Sie die Methode setProductAction mit einem ProductAction-Objekt, um die Transaktions-ID, die Produkt-ID(s) und die Produktmengen anzugeben, die erstattet werden sollen:

// Refund a single product.
Product product =  new Product()
    .setId("P12345")  // Product ID is required for partial refund.
    .setQuantity(1);  // Quanity is required for partial refund.
ProductAction productAction = new ProductAction(ProductAction.ACTION_REFUND)
    .setTransactionId("T12345");  // Transaction ID is required for partial refund.
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("refundProduct");
t.send(builder.build());

Ereignisse ohne Interaktion für Erstattungen verwenden

Wenn Sie Erstattungsdaten über ein Ereignis senden müssen, das nicht Teil des normalerweise gemessenen Nutzerverhaltens ist (also nicht vom Nutzer initiiert), sollten Sie ein Ereignis ohne Interaktion senden. Dadurch wird verhindert, dass bestimmte Messwerte vom Ereignis betroffen sind. Beispiel:

// Refund an entire transaction.
ProductAction productAction = new ProductAction(ProductAction.ACTION_REFUND)
    .setTransactionId("T12345");
HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder()
    .setProductAction(productAction)
    .setNonInteraction(true)
    .setCategory("Ecommerce")
    .setAction("Refund");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.send(builder.build());

Bezahlvorgang analysieren

So messen Sie jeden Schritt im Bezahlvorgang:

  1. Fügen Sie Tracking-Code hinzu, um die einzelnen Schritte des Bezahlvorgangs zu erfassen.
  2. Fügen Sie gegebenenfalls Tracking-Code hinzu, um die Zahlungsoptionen zu erfassen.
  3. Optional können Sie für den Bericht „Bezahltrichter“ nutzerfreundliche Schrittnamen festlegen. Konfigurieren Sie dazu im Bereich „Verwaltung“ der Weboberfläche die E-Commerce-Einstellungen.

1. Schritte beim Bezahlvorgang analysieren

Für jeden Schritt des Bezahlvorgangs müssen Sie den entsprechenden Tracking-Code implementieren, um Daten an Google Analytics zu senden.

Feld „Step

Für jeden zu erfassenden Bezahlvorgang-Schritt sollte ein step-Wert angegeben werden. Mit diesem Wert werden die Aktionen für den Bezahlvorgang den Labels zugeordnet, die Sie für die einzelnen Schritte in den E-Commerce-Einstellungen konfiguriert haben.

Feld „Option

Wenn Sie zum Zeitpunkt der Messung zusätzliche Informationen zum jeweiligen Bezahlvorgang-Schritt haben, können Sie das Feld option mit der Aktion checkout festlegen, um diese Informationen zu erfassen. Beispiel: die Standardzahlungsmethode für den Nutzer (z. B. 'Visa&#39);

Schritt des Bezahlvorgangs messen

Verwenden Sie zum Messen eines Bezahlvorgangs die Methode addProduct mit einem Product-Objekt, um Produktdetails hinzuzufügen, und die Methode setProductAction mit einem ProductAction-Objekt, um eine Kaufaktion anzugeben. Gegebenenfalls kannst du auch an der Kasse ein step und ein option festlegen.

Das folgende Beispiel zeigt, wie der erste Schritt eines Kaufvorgangs mit einem einzelnen Produkt und einigen zusätzlichen Informationen zur Zahlungsart gemessen wird:

Product product =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("black")
    .setPrice(29.20)
    .setQuantity(1);
// Add the step number and additional info about the checkout to the action.
ProductAction productAction = new ProductAction(ProductAction.ACTION_CHECKOUT)
    .setCheckoutStep(1)
    .setCheckoutOptions("Visa");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("checkoutStep1");
t.send(builder.build());

2. Kassenoptionen analysieren

Mit Google Checkout-Optionen können Sie zusätzliche Informationen zum Status des Bezahlvorgangs erfassen. Das ist in Fällen nützlich, in denen Sie einen Bezahlvorgangschritt gemessen haben, aber nach dem Festlegen einer vom Nutzer ausgewählten Option zusätzliche Informationen zum selben Schritt verfügbar sind. Der Nutzer wählt beispielsweise eine Versandmethode aus.

Wenn du eine Zahlungsoption analysieren möchtest, verwende setAction, um eine Zahlungsoption anzugeben und die Schrittnummer sowie die Beschreibung der Option anzugeben.

Wahrscheinlich möchten Sie diese Aktion erfassen, sobald der Nutzer eine Aktion ausgeführt hat, um mit dem nächsten Schritt im Bezahlvorgang fortzufahren. Beispiel:

// (On "Next" button click.)
ProductAction productAction = new ProductAction(ProductAction.ACTION_CHECKOUT_OPTIONS)
    .setCheckoutStep(1)
    .setCheckoutOptions("FedEx");
HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder()
    .setProductAction(productAction)
    .setCategory("Checkout")
    .setAction("Option");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.send(builder.build());

// Advance to next page.

3. Trichterkonfiguration für den Bezahlvorgang

Jeder Schritt im Bezahlvorgang kann einen aussagekräftigen Namen haben, der in Berichten verwendet wird. Rufen Sie zum Konfigurieren dieser Namen auf der Google Analytics-Weboberfläche den Bereich Verwaltung auf, wählen Sie die Ansicht (Profil) aus und klicken Sie auf E-Commerce-Einstellungen. Folgen Sie der Anleitung zum Einrichten von E-Commerce, um jedem Bezahlschritt, der erfasst werden soll, ein Label hinzuzufügen.

E-Commerce-Einstellungen im Bereich „Verwaltung“ der Google Analytics-Weboberfläche. E-Commerce ist aktiviert und vier Labels für den Bezahlvorgang-Trichter wurden hinzugefügt: 1. Rezensionswagen, 2. Zahlungsinformationen erfassen, 3. Kaufdetails bestätigen, 4. Beleg
Abbildung 1: E-Commerce-Einrichtung – Kassentrichter

Interne Werbung messen

Erweiterte E-Commerce-Berichte umfassen die Analyse von Impressionen und Klicks interner Werbung, z. B. Banner, die für einen Ausverkauf angezeigt werden.

Werbeimpressionen

Impressionen für interne Angebote werden in der Regel mit dem ersten Bildschirmaufruf mithilfe der Methode addPromotion mit einem Promotion-Objekt gemessen, um die Details der Werbeaktion anzugeben. Beispiel:

Promotion promotion = new Promotion()
    .setId("PROMO_1234")
    .setName("Summer Sale")
    .setCreative("summer_banner2")
    .setPosition("banner_slot1");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addPromotion(promotion);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("promotions");
t.send(builder.build());

Klicks auf die Werbung

Klicks auf interne Angebote können mit der Methode addPromotion mit einem Promotion-Objekt und der Methode setPromotionAction auf Promotion.ACTION_CLICK oder Promotion.ACTION_VIEW gemessen werden, um einen Angebotsklick bzw. eine Angebotsansicht anzugeben. Beispiel:

Promotion promotion = new Promotion()
    .setId("PROMO_1234")
    .setName("Summer Sale")
    .setCreative("summer_banner2")
    .setPosition("banner_slot1");
HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder()
    .addPromotion(promotion)
    .setPromotionAction(Promotion.ACTION_CLICK)
    .setCategory("Internal Promotions")
    .setAction("click")
    .setLabel("Summer Sale");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.send(builder.build());