การติดตามอีคอมเมิร์ซที่เพิ่มประสิทธิภาพ

เอกสารนี้แสดงภาพรวมของวิธีวัดการกระทำและการแสดงผลที่เกี่ยวข้องกับอีคอมเมิร์ซในแอปด้วย Google Analytics SDK v4 สำหรับ Android

ภาพรวม

อีคอมเมิร์ซที่เพิ่มประสิทธิภาพจะเปิดใช้การวัดการโต้ตอบของผู้ใช้กับผลิตภัณฑ์ตลอดประสบการณ์การช็อปปิ้งของผู้ใช้ ซึ่งรวมถึงการแสดงผลผลิตภัณฑ์ การคลิกผลิตภัณฑ์ การดูรายละเอียดผลิตภัณฑ์ การเพิ่มผลิตภัณฑ์ลงในรถเข็นช็อปปิ้ง การเริ่มกระบวนการชำระเงิน ธุรกรรม และการคืนเงิน

การใช้งาน

การวัดอีคอมเมิร์ซที่เพิ่มประสิทธิภาพกําหนดให้ใช้คลาส HitBuilder และชุดวิธีการในการส่งข้อมูลอีคอมเมิร์ซสำหรับผลิตภัณฑ์ การแสดงผล และโปรโมชัน นอกจากนี้ ยังมีชุดคลาสอีคอมเมิร์ซของ Google Analytics เพื่อสร้างข้อมูลที่เกี่ยวข้องกับอีคอมเมิร์ซ

อีคอมเมิร์ซที่เพิ่มประสิทธิภาพช่วยให้คุณทําสิ่งต่อไปนี้ได้

การวัดกิจกรรมอีคอมเมิร์ซ

การใช้อีคอมเมิร์ซที่เพิ่มประสิทธิภาพโดยทั่วไปจะวัดการแสดงผลของผลิตภัณฑ์และการดำเนินการต่อไปนี้

  • การเลือกผลิตภัณฑ์
  • การดูรายละเอียดผลิตภัณฑ์
  • การแสดงผลและการเลือกโปรโมชันภายใน
  • การเพิ่ม / นำผลิตภัณฑ์ออกจากรถเข็นช็อปปิ้ง
  • การเริ่มต้นกระบวนการชําระเงินสําหรับผลิตภัณฑ์
  • การซื้อและการคืนเงิน

การวัดการแสดงผล

หากต้องการวัดการแสดงผลผลิตภัณฑ์ ให้สร้างออบเจ็กต์ Product และส่งออบเจ็กต์พร้อมกับ Hit โดยใช้เมธอด addImpression Product ต้องมีค่า name หรือ id ค่าอื่นๆ ทั้งหมดเป็นตัวเลือก และไม่จำเป็นต้องตั้งค่า

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

ดูรายละเอียดเกี่ยวกับเมธอด getTracker ได้ที่ การกำหนดค่าขั้นสูง

การวัดการกระทำ

ระบบจะวัดการดําเนินการโดยใช้เมธอด addProduct กับออบเจ็กต์ Product เพื่อเพิ่มรายละเอียดผลิตภัณฑ์ และเมธอด setProductAction ที่มีออบเจ็กต์ ProductAction เพื่อระบุการดำเนินการที่ทํา

ตัวอย่างเช่น โค้ดต่อไปนี้จะวัดการเลือกผลิตภัณฑ์ที่แสดงในรายการผลการค้นหา

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

การรวมการแสดงผลและการกระทำ

ในกรณีที่คุณมีทั้งการแสดงผลผลิตภัณฑ์และการดำเนินการ คุณจะรวมและวัดผลได้ใน Hit เดียว

ตัวอย่างด้านล่างแสดงวิธีวัดมุมมองรายละเอียดผลิตภัณฑ์ด้วยส่วนผลิตภัณฑ์ที่เกี่ยวข้อง

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

การวัดธุรกรรม

วัดธุรกรรมโดยใช้เมธอด addProduct กับออบเจ็กต์ Product เพื่อเพิ่มรายละเอียดผลิตภัณฑ์และเมธอด setProductAction ที่มีออบเจ็กต์ ProductAction เพื่อระบุการดำเนินการซื้อ รายละเอียดระดับธุรกรรม เช่น รายได้ทั้งหมด ภาษี และค่าจัดส่ง จะแสดงอยู่ในออบเจ็กต์ 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());

การระบุสกุลเงิน

โดยค่าเริ่มต้น คุณสามารถกำหนดค่าสกุลเงินทั่วไปที่ใช้ทั่วโลกสำหรับธุรกรรมและรายการทั้งหมดได้ผ่านอินเทอร์เฟซเว็บการจัดการของ Google Analytics

ต้องระบุสกุลเงินท้องถิ่นในมาตรฐาน ISO 4217 อ่านเอกสารข้อมูลอ้างอิงรหัสสกุลเงินเพื่อดูรายการสกุลเงิน Conversion ทั้งหมดที่รองรับ

สกุลเงินท้องถิ่นระบุโดยใช้พร็อพเพอร์ตี้เครื่องมือติดตาม currencyCode ตัวอย่างเช่น เครื่องมือติดตามนี้จะส่งค่าสกุลเงินเป็นยูโร

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

การวัดการคืนเงิน

หากต้องการคืนเงินสำหรับธุรกรรมทั้งหมด ให้ใช้เมธอด setProductAction ที่มีออบเจ็กต์ ProductAction เพื่อระบุรหัสธุรกรรมและประเภทการดำเนินการคืนเงิน ดังนี้

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

หากไม่พบธุรกรรมที่ตรงกัน ระบบจะไม่ดำเนินการคืนเงิน

หากต้องการวัดการคืนเงินบางส่วน ให้ใช้เมธอด setProductAction กับออบเจ็กต์ ProductAction เพื่อระบุรหัสธุรกรรม รหัสผลิตภัณฑ์ และจํานวนผลิตภัณฑ์ที่จะคืนเงิน

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

การใช้เหตุการณ์ที่ไม่มีการโต้ตอบเพื่อการคืนเงิน

หากคุณต้องส่งข้อมูลการคืนเงินโดยใช้เหตุการณ์และเหตุการณ์ไม่ได้เป็นส่วนหนึ่งของพฤติกรรมของผู้ใช้ที่วัดตามปกติ (กล่าวคือ ไม่ได้เริ่มต้นโดยผู้ใช้) เราขอแนะนำให้ส่งเหตุการณ์ ที่ไม่ใช่การโต้ตอบ การทำเช่นนี้จะป้องกันไม่ให้เหตุการณ์ กระทบกับเมตริกบางรายการ เช่น

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

การวัดกระบวนการชำระเงิน

วิธีวัดแต่ละขั้นตอนในกระบวนการชำระเงิน

  1. เพิ่มโค้ดติดตามเพื่อวัดแต่ละขั้นตอนของกระบวนการชำระเงิน
  2. เพิ่มโค้ดติดตามเพื่อวัดตัวเลือกขั้นตอนการชำระเงิน (หากมี)
  3. (ไม่บังคับ) ตั้งชื่อขั้นตอนที่ใช้งานง่ายสำหรับรายงาน Funnel การชําระเงินโดยการกําหนดค่าการตั้งค่าอีคอมเมิร์ซในส่วนผู้ดูแลระบบของอินเทอร์เฟซเว็บ

1. การวัดขั้นตอนการเช็คเอาต์

สำหรับแต่ละขั้นตอนในกระบวนการชำระเงิน คุณจะต้องใช้โค้ดติดตามที่เกี่ยวข้องเพื่อส่งข้อมูลไปยัง Google Analytics

Step ช่อง

คุณควรใส่ค่า step สำหรับขั้นตอนการชำระเงินแต่ละขั้นตอนที่คุณวัด ค่านี้จะใช้ในการแมปการดำเนินการชำระเงินกับป้ายกำกับที่คุณกำหนดค่าไว้สำหรับแต่ละขั้นตอนในการตั้งค่าอีคอมเมิร์ซ

Option ช่อง

หากคุณมีข้อมูลเพิ่มเติมเกี่ยวกับขั้นตอนการเช็คเอาต์ที่ระบุในขณะที่มีการวัดขั้นตอน ให้ตั้งค่าช่อง option ด้วยการดําเนินการ checkout เพื่อบันทึกข้อมูลนี้ ตัวอย่างเช่น ประเภทการชำระเงินเริ่มต้นสำหรับผู้ใช้ (เช่น "Visa")

การวัดขั้นตอนการเช็คเอาต์

หากต้องการวัดขั้นตอนการชําระเงิน ให้ใช้เมธอด addProduct กับออบเจ็กต์ Product เพื่อเพิ่มรายละเอียดผลิตภัณฑ์และเมธอด setProductAction ด้วยออบเจ็กต์ ProductAction เพื่อระบุการดําเนินการชําระเงิน คุณยังตั้งค่า step และ option ด้วยการชำระเงินได้ด้วย (หากมี)

ตัวอย่างต่อไปนี้แสดงวิธีวัดขั้นตอนแรกของกระบวนการชําระเงินโดยใช้ผลิตภัณฑ์รายการเดียว และข้อมูลเพิ่มเติมเกี่ยวกับประเภทการชําระเงิน

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. การวัดตัวเลือกขั้นตอนการชำระเงิน

ตัวเลือกการชำระเงินช่วยให้คุณวัดข้อมูลเพิ่มเติมเกี่ยวกับสถานะการชำระเงินได้ วิธีนี้มีประโยชน์ในกรณีที่คุณวัดขั้นตอนการชำระเงินแล้ว แต่ข้อมูลเพิ่มเติมเกี่ยวกับขั้นตอนการชำระเงินเดียวกันจะพร้อมใช้งานหลังจากตั้งค่าตัวเลือกที่ผู้ใช้เลือกไว้แล้ว เช่น ผู้ใช้เลือกวิธีการจัดส่ง

หากต้องการวัดตัวเลือกขั้นตอนการชำระเงิน ให้ใช้ setAction เพื่อระบุตัวเลือกขั้นตอนการชำระเงินและระบุหมายเลขขั้นตอนและคำอธิบายตัวเลือก

คุณอาจต้องการวัดการดำเนินการนี้เมื่อผู้ใช้ดำเนินการบางอย่างเพื่อไปยังขั้นตอนถัดไปในกระบวนการชำระเงิน เช่น

// (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. การกำหนดค่า Funnel การชำระเงิน

คุณสามารถกำหนดชื่อที่สื่อความหมายซึ่งจะใช้ในรายงานแต่ละขั้นตอนในกระบวนการชำระเงินได้ หากต้องการกำหนดค่าชื่อเหล่านี้ ให้ไปที่ส่วนผู้ดูแลระบบของอินเทอร์เฟซเว็บ Google Analytics เลือกข้อมูลพร็อพเพอร์ตี้ (โปรไฟล์) และคลิกการตั้งค่าอีคอมเมิร์ซ ทำตามวิธีการตั้งค่าอีคอมเมิร์ซเพื่อติดป้ายกำกับขั้นตอนการเช็คเอาต์แต่ละขั้นที่คุณต้องการติดตาม

การตั้งค่าอีคอมเมิร์ซในส่วนผู้ดูแลระบบของอินเทอร์เฟซเว็บ Google Analytics เปิดใช้อีคอมเมิร์ซและเพิ่มป้ายกำกับขั้นตอนในกระบวนการชำระเงินแล้ว 4 รายการ ได้แก่ 1. ตรวจสอบรถเข็น, 2. รวบรวมข้อมูลการชำระเงิน, 3. ยืนยันรายละเอียดการซื้อ 4. ใบเสร็จ
ภาพที่ 1: การตั้งค่าอีคอมเมิร์ซ - กระบวนการชำระเงิน

การวัดโปรโมชันภายใน

อีคอมเมิร์ซที่เพิ่มประสิทธิภาพรองรับการวัดการแสดงผลและการคลิกของโปรโมชันภายใน เช่น แบนเนอร์ที่แสดงเพื่อโปรโมตการลดราคา

การแสดงผลของโปรโมชัน

โดยทั่วไปแล้ว การแสดงผลของโปรโมชันภายในจะวัดด้วยการดูหน้าจอเริ่มต้นโดยใช้เมธอด addPromotion กับออบเจ็กต์ Promotion เพื่อระบุรายละเอียดของโปรโมชัน เช่น

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

จำนวนการคลิกโปรโมชัน

วัดการคลิกของโปรโมชันภายในได้โดยใช้เมธอด addPromotion กับออบเจ็กต์ Promotion และตั้งค่าเมธอด setPromotionAction เป็น Promotion.ACTION_CLICK หรือ Promotion.ACTION_VIEW เพื่อระบุการคลิกหรือการดูโปรโมชันตามลำดับ เช่น

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