Pelacakan Enhanced E-commerce - SDK iOS

Dokumen ini memberikan ringkasan tentang cara mengukur tindakan dan tayangan terkait e-commerce dalam aplikasi dengan Google Analytics SDK untuk iOS v3.

Ringkasan

Enhanced E-commerce memungkinkan pengukuran interaksi pengguna dengan produk di seluruh pengalaman belanja pengguna, termasuk: tayangan produk, klik produk, melihat detail produk, menambahkan produk ke keranjang belanja, memulai proses checkout, transaksi, dan pengembalian dana.

Penerapan

Sebelum menerapkan pelacakan Enhanced E-commerce di aplikasi, Anda harus menambahkan library Enhanced E-commerce ke aplikasi.

Setelah mengonfigurasi aplikasi untuk menggunakan Enhanced E-commerce, Anda dapat:

Mengukur Aktivitas E-commerce

Penerapan standar Enhanced E-commerce akan mengukur tayangan produk, dan salah satu tindakan berikut:

  • Memilih produk.
  • Melihat detail produk.
  • Tayangan dan pilihan promosi internal.
  • Menambahkan / menghapus produk dari keranjang belanja.
  • Memulai proses checkout untuk produk.
  • Pembelian dan pengembalian dana.

Mengukur Tayangan

Untuk mengukur tayangan produk, tetapkan nilai produk dan tayangan, lalu kirimkan bersama hit:

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]];

Produk harus memiliki nama atau nilai ID. Semua nilai lain bersifat opsional dan tidak perlu ditetapkan.

Mengukur Tindakan

Tindakan diukur dengan menetapkan nilai produk, lalu menetapkan nilai tindakan produk untuk menentukan tindakan yang sedang dilakukan.

Misalnya, kode berikut mengukur pemilihan produk yang ditampilkan dalam daftar hasil penelusuran:

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]];

Produk harus memiliki nama atau nilai ID. Semua nilai lain bersifat opsional dan tidak perlu ditetapkan.

Menggabungkan Tayangan dan Tindakan

Jika memiliki tayangan produk dan tindakan, Anda dapat menggabungkan dan mengukur keduanya dalam satu hit.

Contoh di bawah ini menunjukkan cara mengukur tampilan detail produk dengan bagian produk terkait:

// 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]];

Mengukur Transaksi

Ukur transaksi dengan menetapkan nilai produk, lalu menetapkan nilai tindakan produk untuk menentukan tindakan pembelian. Detail tingkat transaksi seperti total pendapatan, pajak, dan pengiriman ditetapkan dengan nilai tindakan produk.

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]];

Menentukan Mata Uang

Secara default, Anda dapat mengonfigurasi mata uang umum dan global untuk semua transaksi dan item melalui antarmuka web pengelolaan Google Analytics.

Mata uang lokal harus ditentukan dalam standar ISO 4217. Baca dokumen Referensi Kode Mata Uang untuk mengetahui daftar lengkap mata uang konversi yang didukung.

Mata uang lokal ditentukan dengan menetapkan nilai kode mata uang pada pelacak. Misalnya, pelacak ini akan mengirim nilai mata uang sebagai 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]];

Mengukur Pengembalian Dana

Untuk mengembalikan dana seluruh transaksi, tetapkan nilai tindakan produk untuk menentukan ID transaksi dan jenis tindakan pengembalian dana:

// 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]];

Jika transaksi yang cocok tidak ditemukan, pengembalian dana tidak akan diproses.

Untuk mengukur pengembalian dana sebagian, tetapkan nilai tindakan produk untuk menentukan ID transaksi, ID produk, dan jumlah produk yang akan dikembalikan dananya:

// 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]];

Menggunakan Peristiwa Non-Interaksi untuk Pengembalian Dana

Jika Anda perlu mengirim data pengembalian dana menggunakan peristiwa dan peristiwa tersebut bukan bagian dari perilaku pengguna yang biasa diukur (yaitu, bukan dimulai oleh pengguna), sebaiknya Anda mengirim peristiwa non-interaksi. Dengan cara ini, metrik tertentu tidak akan terpengaruh oleh peristiwa tersebut. Contoh:

// 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]];

Mengukur Proses Checkout

Untuk mengukur setiap langkah dalam proses checkout:

  1. Tambahkan kode pelacakan untuk mengukur setiap langkah dalam proses checkout.
  2. Jika relevan, tambahkan kode pelacakan untuk mengukur opsi checkout.
  3. (Opsional) Tetapkan nama langkah yang mudah dipahami untuk laporan funnel checkout dengan mengonfigurasi Setelan E-commerce di bagian admin pada antarmuka web.

1. Mengukur Langkah Checkout

Untuk setiap langkah dalam proses checkout, Anda harus menerapkan kode pelacakan yang sesuai untuk mengirim data ke Google Analytics.

Kolom Step

Untuk setiap langkah checkout yang diukur, Anda harus menyertakan nilai step. Nilai ini digunakan untuk memetakan tindakan checkout ke label yang Anda konfigurasi untuk setiap langkah di Setelan E-commerce.

Kolom Option

Jika Anda memiliki informasi tambahan tentang langkah checkout yang diberikan pada saat langkah diukur, Anda dapat menetapkan kolom opsi checkout dengan tindakan checkout untuk mencatat informasi ini. Misalnya, jenis pembayaran default untuk pengguna tersebut (misalnya 'Visa').

Mengukur Langkah Checkout

Untuk mengukur langkah checkout, tetapkan nilai produk, lalu tetapkan nilai tindakan produk untuk menunjukkan tindakan checkout. Jika relevan, Anda juga dapat menetapkan langkah checkout dan nilai opsi checkout dengan checkout.

Contoh berikut menunjukkan cara mengukur langkah pertama proses checkout, dengan satu produk, dan beberapa informasi tambahan tentang jenis pembayaran:

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. Mengukur Opsi Checkout

Dengan opsi checkout, Anda dapat mengukur informasi tambahan tentang status checkout. Hal ini berguna jika Anda telah mengukur langkah checkout, tetapi informasi tambahan tentang langkah checkout yang sama tersedia setelah opsi yang dipilih pengguna ditetapkan. Misalnya, pengguna memilih metode pengiriman.

Untuk mengukur opsi checkout, tetapkan nilai tindakan produk untuk menunjukkan opsi checkout dan sertakan nomor langkah, serta deskripsi opsi.

Anda mungkin perlu mengukur tindakan ini setelah pengguna melakukan beberapa tindakan untuk melanjutkan ke langkah berikutnya dalam proses checkout. Contoh:

// (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. Konfigurasi Funnel Checkout

Setiap langkah dalam proses checkout dapat diberi nama deskriptif yang akan digunakan dalam laporan. Untuk mengonfigurasi nama ini, kunjungi bagian Admin pada Antarmuka Web Google Analytics, pilih tampilan (profil), lalu klik Setelan E-commerce. Ikuti petunjuk penyiapan E-commerce untuk memberi label pada setiap langkah checkout yang ingin Anda lacak.

Setelan E-commerce di bagian Admin pada antarmuka web Google Analytics. E-commerce diaktifkan dan 4 label tahapan funnel checkout telah
     ditambahkan: 1. Meninjau Keranjang, 2. Mengumpulkan Info Pembayaran, 3. Mengonfirmasi Detail Pembelian, 4. Tanda Terima
Gambar 1: Penyiapan E-commerce - Funnel Checkout

Mengukur Promosi Internal

Enhanced E-commerce mencakup dukungan untuk mengukur tayangan dan pilihan promosi internal, seperti banner yang ditampilkan untuk mempromosikan diskon.

Tayangan Promosi

Tayangan promosi internal umumnya diukur menggunakan tampilan layar awal atau peristiwa dengan menetapkan nilai promosi. Contoh:

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]];

Klik Promosi

Klik pada promosi internal dapat diukur menggunakan nilai promosi, lalu menetapkan nilai tindakan produk untuk menunjukkan klik promosi. Contoh:

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]];