Pelacakan Enhanced E-commerce

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

Ringkasan

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

Penerapan

Pengukuran Enhanced E-commerce mengharuskan Anda menggunakan class HitBuilder dan serangkaian metodenya untuk mengirim data e-commerce untuk produk, tayangan, dan promosi. Kumpulan class e-commerce Google Analytics juga disediakan untuk membuat informasi terkait e-commerce.

Dengan 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, buat objek Product dan kirimkan beserta hit menggunakan metode addImpression. Product harus memiliki nama atau nilai ID. Semua nilai lain bersifat opsional dan tidak perlu ditetapkan.

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());

Lihat Konfigurasi Lanjutan untuk detail tentang metode getTracker.

Mengukur Tindakan

Tindakan diukur menggunakan metode addProduct dengan objek Product untuk menambahkan detail produk, dan metode setProductAction dengan objek ProductAction untuk menentukan tindakan yang sedang dilakukan.

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

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());

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 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());

Mengukur Transaksi

Ukur transaksi menggunakan metode addProduct dengan objek Product untuk menambahkan detail produk dan metode setProductAction dengan objek ProductAction untuk menentukan tindakan pembelian. Detail tingkat transaksi seperti total pendapatan, pajak, dan pengiriman diberikan di objek 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());

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 menggunakan properti pelacak currencyCode. Misalnya, pelacak ini akan mengirim nilai mata uang sebagai 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());

Mengukur Pengembalian Dana

Untuk mengembalikan dana seluruh transaksi, gunakan metode setProductAction dengan objek ProductAction untuk menentukan ID transaksi dan jenis tindakan pengembalian dana:

// 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());

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

Untuk mengukur pengembalian dana sebagian, gunakan metode setProductAction dengan objek ProductAction untuk menentukan ID transaksi, ID produk, dan jumlah produk yang akan dikembalikan dananya:

// 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());

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 kirim peristiwa non-interaksi. Dengan cara ini, metrik tertentu tidak akan terpengaruh oleh peristiwa tersebut. Contoh:

// 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());

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 option dengan tindakan checkout untuk mencatat informasi ini. Misalnya, jenis pembayaran default untuk pengguna tersebut (misalnya 'Visa').

Mengukur Langkah Checkout

Untuk mengukur langkah checkout, gunakan metode addProduct dengan objek Product untuk menambahkan detail produk dan metode setProductAction dengan objek ProductAction untuk menunjukkan tindakan checkout. Jika relevan, Anda juga dapat menetapkan step dan option dengan checkout.

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

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. 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, gunakan setAction untuk menunjukkan opsi checkout dan menyertakan 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.)
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. 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 klik promosi internal, seperti banner yang ditampilkan untuk mempromosikan diskon.

Tayangan Promosi

Tayangan promosi internal umumnya diukur dengan tampilan layar awal menggunakan metode addPromotion dengan objek Promotion untuk menentukan detail promosi. Contoh:

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());

Klik Promosi

Klik pada promosi internal dapat diukur menggunakan metode addPromotion dengan objek Promotion dan metode setPromotionAction yang ditetapkan ke Promotion.ACTION_CLICK atau Promotion.ACTION_VIEW untuk menunjukkan masing-masing klik atau tampilan promosi. Contoh:

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());