Erweitertes E-Commerce-Tracking – iOS SDK

In diesem Dokument erhalten Sie einen Überblick darüber, wie Sie mit dem Google Analytics SDK for iOS Version 3 des Google Analytics SDK for iOS Aktionen und Impressionen für In-App-E-Commerce messen.

Überblick

Erweiterte E-Commerce-Berichte ermöglichen die Messung von Nutzerinteraktionen mit Produkten über das gesamte Einkaufserlebnis der Nutzer hinweg, einschließlich Produktimpressionen, Produktklicks, Aufrufen von Produktdetails, Hinzufügen eines Produkts zum Einkaufswagen, Initiieren des Bezahlvorgangs, Transaktionen und Erstattungen.

Implementierung

Bevor Sie erweitertes E-Commerce-Tracking in Ihrer App implementieren, müssen Sie ihr die erweiterte E-Commerce-Bibliothek hinzufügen.

Nachdem Sie Ihre Anwendung für die Verwendung erweiterter E-Commerce-Berichte konfiguriert haben, haben Sie folgende Möglichkeiten:

E-Commerce-Aktivitäten messen

Eine typische Implementierung für erweiterte E-Commerce-Berichte misst Produktimpressionen und eine der folgenden Aktionen:

  • Produkt auswählen
  • Produktdetails werden angezeigt.
  • Impressionen und Auswahl interner Werbeaktionen.
  • Hinzufügen oder Entfernen eines Produkts zum Einkaufswagen.
  • Initiieren des Bezahlvorgangs für ein Produkt
  • Käufe und Erstattungen.

Impressionen messen

Um eine Produktimpression zu messen, legen Sie die Produkt- und Impressionswerte fest und senden sie mit einem Treffer:

id tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setCustomDimension:1 value:@"Member"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];

// Sets the product impression for the next available slot, starting with 1.
[builder addProductImpression:product
               impressionList:@"Search Results"
             impressionSource:@"From Search"];
[tracker set:kGAIScreenName value:@"My Impression Screen"];
[tracker send:[builder build]];

Ein Produkt muss einen Namen oder einen ID-Wert haben. Alle anderen Werte sind optional und müssen nicht festgelegt werden.

Aktionen messen

Aktionen werden gemessen, indem Produktwerte und dann Produktaktionswerte festgelegt werden, um die ausgeführte Aktion zu definieren.

Beispielsweise misst der folgende Code die Auswahl eines Produkts, das in einer Liste von Suchergebnissen angezeigt wird:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setCustomDimension:1 value:@"Member"];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPAClick];
[action setProductActionList:@"Search Results"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
[builder setProductAction:action];

// Sets the product for the next available slot, starting with 1
[builder addProduct:product];
[tracker set:kGAIScreenName value:@"My Impression Screen"];
[tracker send:[builder build]];

Ein Produkt muss einen Namen oder einen ID-Wert haben. Alle anderen Werte sind optional und müssen nicht festgelegt werden.

Impressionen und Aktionen kombinieren

Falls sowohl Produktimpressionen als auch eine Aktion vorliegen, kann dies in einem einzelnen Treffer kombiniert und gemessen werden.

Das folgende Beispiel zeigt, wie eine Produktdetailansicht mit einem Abschnitt mit ähnlichen Produkten analysiert wird:

// The product from the related products section.
id tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12346"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"White"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];

// Sets the product impression for the next available slot, starting with 1.
[builder addProductImpression:product
               impressionList:@"Related Products"
             impressionSource:@"From Related"];

// The product being viewed.
product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPADetail];
[builder setProductAction:action];
// Sets the product for the next available slot, starting with 1.
[builder addProduct:product];
[tracker set:kGAIScreenName value:@"Related Products Screen"];
[tracker send:[builder build]];

Transaktionen messen

Zum Messen einer Transaktion legen Sie Produktwerte und dann Produktaktionswerte fest, um eine Kaufaktion anzugeben. Details auf Transaktionsebene wie Gesamtumsatz, Steuern und Versandkosten werden mit den Produktaktionswerten festgelegt.

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setPrice:@29.20];
[product setCouponCode:@"APPARELSALE"];
[product setQuantity:@1];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Purchase"
                                                                        label:nil
                                                                        value:nil];
GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPAPurchase];
[action setTransactionId:@"T12345"];
[action setAffiliation:@"Google Store - Online"];
[action setRevenue:@37.39];
[action setTax:@2.85];
[action setShipping:@5.34];
[action setCouponCode:@"SUMMER2013"];
[builder setProductAction:action];

// Sets the product for the next available slot, starting with 1
[builder addProduct:product];
[tracker send:[builder build]];

Währung angeben

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

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

Landeswährungen werden durch Festlegen des Währungscodes auf dem Tracker festgelegt. Dieser Tracker sendet beispielsweise Währungswerte als Euro:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTracker"];
[tracker set:kGAIScreenName value:@"transaction"];
[tracker set:kGAICurrencyCode value:@"EUR"]; // Set tracker currency to Euros.
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
[tracker send:[builder build]];

Analysieren von Erstattungen

Für die Erstattung einer gesamten Transaktion legen Sie Werte für Produktaktionen fest, um die Transaktions-ID und einen Aktionstyp für Erstattungen anzugeben:

// Refund an entire transaction.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Refund"
                                                                        label:nil
                                                                        value:nil];
GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPARefund];
[action setTransactionId:@"T12345"];
[builder setProductAction:action];
[tracker send:[builder build]];

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

Um eine teilweise Erstattung zu messen, legen Sie Produktaktionswerte fest, um die Transaktions-ID, die Produkt-IDs und die Produktmengen anzugeben, die erstattet werden sollen:

// Refund a single product.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Refund"
                                                                        label:nil
                                                                        value:nil];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"]; // Product ID is required for partial refund.
[product setQuantity:@1]; // Quanity is required for partial refund.
[builder addProduct:product];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPARefund];
[action setTransactionId:@"T12345"]; // Transaction ID is required for partial refund.
[builder setProductAction:action];
[tracker send:[builder build]];

Ereignisse ohne Interaktion für Erstattungen verwenden

Wenn Sie Erstattungsdaten mithilfe eines Ereignisses senden müssen und das Ereignis nicht Teil des normal gemessenen Nutzerverhaltens ist (d.h. nicht vom Nutzer initiiert), sollten Sie ein Ereignis ohne Interaktion senden. Dadurch wird verhindert, dass bestimmte Messwerte durch das Ereignis beeinflusst werden. Beispiel:

// Refund an entire transaction.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Refund"
                                                                        label:nil
                                                                        value:nil];

[builder set:@"1" forKey:kGAINonInteraction];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPARefund];
[action setTransactionId:@"T12345"];

[builder setProductAction:action];
[tracker send:[builder build]];

Messen des Bezahlvorgangs

So messen Sie die einzelnen Schritte im Bezahlvorgang:

  1. Tracking-Code hinzufügen, um jeden Schritt des Bezahlvorgangs zu erfassen
  2. Fügen Sie gegebenenfalls Tracking-Code hinzu, um Zahlungsoptionen zu messen.
  3. Sie können optional nutzerfreundliche Schrittnamen für den Bericht zum Bezahlvorgang-Trichter festlegen, indem Sie im Bereich „Verwaltung“ der Weboberfläche E-Commerce-Einstellungen konfigurieren.

1. Schritte für den Bezahlvorgang messen

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

Feld „Step

Für jeden Schritt des Bezahlvorgangs, den Sie messen, müssen Sie einen step-Wert angeben. Dieser Wert wird verwendet, um Ihre Direktkaufaktionen den Labels zuzuordnen, die Sie in den E-Commerce-Einstellungen für jeden Schritt konfiguriert haben.

Feld „Option

Wenn Sie zum Zeitpunkt der Messung des Schritts zusätzliche Informationen über den jeweiligen Schritt des Bezahlvorgangs haben, können Sie das Feld für die Zahlungsoption mit einer Bezahlaktion so festlegen, dass diese Informationen erfasst werden. beispielsweise die Standardzahlungsart für den Nutzer (z.B. „Visa“).

Bezahlschritt messen

Wenn Sie einen Schritt des Bezahlvorgangs messen möchten, legen Sie Produktwerte und dann Werte für Produktaktionen fest, um eine Bezahlaktion anzugeben. Bei Bedarf können Sie beim Bezahlvorgang auch einen Schritt und einen Wert für die Bezahloption festlegen.

Das folgende Beispiel zeigt, wie du den ersten Schritt eines Bezahlvorgangs mit einem einzelnen Produkt und einigen zusätzlichen Informationen zur Zahlungsart messen kannst:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setPrice:@29.20];
[product setCouponCode:@"APPARELSALE"];
[product setQuantity:@1];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Checkout"
                                                                        label:nil
                                                                        value:nil];

// Add the step number and additional info about the checkout to the action.
GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPACheckout];
[action setCheckoutStep:@1];
[action setCheckoutOption:@"Visa"];

[builder addProduct:product];
[builder setProductAction:action];
[tracker send:[builder build]];

2. Analysieren der Zahlungs- und Versandoptionen

Mit Bezahloptionen können Sie zusätzliche Informationen zum Status des Bezahlvorgangs erfassen. Das ist nützlich, wenn Sie einen Schritt des Bezahlvorgangs gemessen haben, aber zusätzliche Informationen zum selben Schritt verfügbar sind, nachdem eine vom Nutzer ausgewählte Option festgelegt wurde. Beispielsweise wählt der Nutzer eine Versandmethode aus.

Um eine Direktkaufoption zu messen, legen Sie Produktaktionswerte fest, um eine Bezahloption anzugeben. Fügen Sie außerdem die Schrittnummer und die Optionsbeschreibung hinzu.

Sie möchten diese Aktion wahrscheinlich messen, sobald der Nutzer eine Aktion ausgeführt hat, um zum nächsten Schritt im Bezahlvorgang überzugehen. Beispiel:

// (On "Next" button click.)
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"CheckoutOption"
                                                                        label:nil
                                                                        value:nil];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPACheckoutOption];
[action setCheckoutStep:@1];
[action setCheckoutOption:@"Fedex"];

[builder setProductAction:action];
[tracker send:[builder build]];
// Advance to next page.

3. Konfiguration des Checkout-Trichters

Sie können jedem Schritt im Bezahlvorgang einen aussagekräftigen Namen geben, der in Berichten verwendet wird. Sie können diese Namen konfigurieren, indem Sie in der Google Analytics-Weboberfläche im Bereich Verwaltung die Datenansicht (Profil) auswählen und auf E-Commerce-Einstellungen klicken. Folgen Sie der Anleitung zum Einrichten von E-Commerce, um jeden Schritt des Bezahlvorgangs, den Sie erfassen möchten, mit einem Label zu versehen.

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

Interne Werbung messen

Erweiterte E-Commerce-Berichte unterstützen das Messen von Impressionen und die Auswahl interner Angebote, z. B. Banner, die zum Bewerben eines Verkaufs angezeigt werden.

Impressionen der Werbung

Impressionen für interne Werbung werden in der Regel mit dem ersten Bildschirmaufruf oder einem Ereignis gemessen, indem Werte für Angebote festgelegt werden. Beispiel:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommercePromotion *promotion = [[GAIEcommercePromotion alloc] init];
[promotion setId:@"PROMO_1234"];
[promotion setName:@"Summer Sale"];
[promotion setCreative:@"summer_banner2"];
[promotion setPosition:@"banner_slot1"];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Promotion"
                                                                        label:nil
                                                                        value:nil];

[builder addPromotion:promotion];
[tracker send:[builder build]];

Klicks auf die Werbung

Klicks auf interne Angebote können anhand von Angebotswerten gemessen werden. Legen Sie dann Werte für Produktaktionen fest, um einen Klick auf eine Werbeaktion zu kennzeichnen. Beispiel:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommercePromotion *promotion = [[GAIEcommercePromotion alloc] init];
[promotion setId:@"PROMO_1234"];
[promotion setName:@"Summer Sale"];
[promotion setCreative:@"summer_banner2"];
[promotion setPosition:@"banner_slot1"];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Internal Promotions"
                                                                       action:@"click"
                                                                        label:@"Summer Sale"
                                                                        value:nil];

[builder set:kGAIPromotionClick forKey:kGAIPromotionAction];
[builder addPromotion:promotion];
[tracker send:[builder build]];