Geliştirilmiş e-ticaret

analytics.js için geliştirilmiş e-ticaret eklentisi, kullanıcının alışveriş deneyimi genelinde e-ticaret web sitelerindeki ürünlerle yaptığı etkileşimlerin ölçülmesini sağlar. Bu işlemler arasında ürün gösterimleri, ürün tıklamaları, ürün ayrıntılarını görüntüleme, alışveriş sepetine ürün ekleme, ödeme sürecini başlatma, işlemler ve geri ödemeler yer alır.

E-Ticaret Eklentisi ile Taşıma ve Uyumluluk (ecommerce.js)

E-ticaret ölçümünü zaten uyguladıysanız ve Geliştirilmiş E-ticaret'i kullanmaya başlamak istiyorsanız iki ana seçeneğiniz vardır:

Yeni bir mülk kullan

Yeni oluşturulan bir mülk için ek bir izleyici ekleyebilir ve yeni mülk için Geliştirilmiş E-ticaret'i etiketleyebilir/etkinleştirebilirsiniz. Tek bir sayfadan birden çok mülke veri göndermeyle ilgili ayrıntılar için Birden Fazla İzleme Nesnesiyle Çalışma bölümüne bakın.

Mevcut bir mülkü taşıma

E-ticaret eklentisinden geliştirilmiş e-ticaret eklentisine geçiş yapmak için mevcut analytics.js kullanıcılarının referansları kaldırması ve geliştirilmiş e-ticaret koduyla değiştirmesi gerekir.

Şu anda ga.js kullanıyorsanız geliştirilmiş e-ticaret eklentisini kullanmadan önce analytics.js'ye geçmeniz gerekir.

Daha önce ecommerce.js eklentisi kullanılarak toplanan işlem ve öğe verileri, taşıma işleminden etkilenmez ve orijinal olarak gönderildikleri mülklerde ve profillerde kullanılabilir olmaya devam eder.

Geliştirilmiş E-ticaret Veri Türleri ve İşlemleri

Gönderebileceğiniz birden fazla e-ticaret verisi türü vardır:

Gösterim Verileri

Görüntülenen bir ürünle ilgili bilgileri temsil eder. impressionFieldObject olarak adlandırılır ve aşağıdaki değerleri içerir:

Anahtar Değer Türü Gerekli Açıklama
id text (metin) *Evet

Ürün kimliği veya SKU'su (ör. P67890).

* id veya name değerlerinden biri ayarlanmalıdır.

name text (metin) *Evet

Ürünün adı (ör. Android Tişörtü).

* id veya name değerlerinden biri ayarlanmalıdır.

list text (metin) Hayır Ürünün ait olduğu liste veya koleksiyon (ör. arama sonuçları)
list_name text (metin) Hayır Ürünün ait olduğu liste veya koleksiyon (ör. arama sonuçları)
brand text (metin) Hayır Ürünle ilişkili marka (ör. Google).
category text (metin) Hayır Ürünün ait olduğu kategori (ör. Giyim). 5'e kadar hiyerarşi düzeyini belirtmek için sınırlayıcı olarak / kullanın (ör. Giyim/Erkek/Tişörtler).
variant text (metin) Hayır Ürünün varyantı (ör. Siyah).
position tam sayı Hayır Ürünün bir liste veya koleksiyondaki konumu (ör. 2).
list_position tam sayı Hayır Ürünün bir liste veya koleksiyondaki konumu (ör. 2).
price sayı Hayır Bir ürünün fiyatı (ör. 29,20).

Ürün Verileri

Ürün verileri, görüntülenen, alışveriş sepetine eklenen vb. ürünleri ayrı ayrı temsil eder. productFieldObject olarak adlandırılır ve aşağıdaki değerleri içerir:

Anahtar Değer Türü Gerekli Açıklama
id text (metin) *Evet

Ürün kimliği veya SKU'su (ör. P67890).

* Kimlik veya name özelliklerinden biri ayarlanmalıdır.

name text (metin) *Evet

Ürünün adı (ör. Android Tişörtü).

* Kimlik veya name özelliklerinden biri ayarlanmalıdır.

brand text (metin) Hayır Ürünle ilişkili marka (ör. Google).
category text (metin) Hayır Ürünün ait olduğu kategori (ör. Giyim). 5'e kadar hiyerarşi düzeyini belirtmek için sınırlayıcı olarak / karakterini kullanın (ör. Giyim/Erkek/Tişörtler).
variant text (metin) Hayır Ürünün varyantı (ör. Siyah).
price sayı Hayır Bir ürünün fiyatı (ör. 29,20).
quantity tam sayı Hayır Bir ürünün miktarı (ör. 2).
coupon text (metin) Hayır Bir ürünle ilişkilendirilmiş kupon kodu (ör. YAZ_SAAT13).
position tam sayı Hayır Ürünün bir liste veya koleksiyondaki konumu (ör. 2).
list_position tam sayı Hayır Ürünün bir liste veya koleksiyondaki konumu (ör. 2).

Promosyon Verileri

Görüntülenen promosyonla ilgili bilgileri temsil eder. Bu, promoFieldObject olarak adlandırılır ve aşağıdaki değerleri içerir:

Anahtar Değer Türü Gerekli Açıklama
id text (metin) *Evet

Promosyon kimliği (ör. PROMO_1234).

* id veya name değerlerinden biri ayarlanmalıdır.

name text (metin) *Evet

Promosyonun adı (ör. Yaz İndirimi).

* id veya name değerlerinden biri ayarlanmalıdır.

creative text (metin) Hayır Promosyonla ilişkili reklam öğesi (ör. yaz_banner2).
creative_name text (metin) Hayır Reklam öğesinin adı (ör. yaz_banner2).
position text (metin) Hayır Reklam öğesinin konumu (ör. banner_slot_1).
creative_slot text (metin) Hayır Reklam öğesi alanının adı (ör. banner_slot_1).

İşlem Verileri

E-ticaretle ilgili olarak yapılmış bir işlemle ilgili bilgileri temsil eder. actionFieldObject olarak adlandırılır ve aşağıdaki değerleri içerir:

Anahtar Değer Türü Gerekli Açıklama
id text (metin) *Evet

İşlem kimliği (ör. T1234).

* İşlem türü purchase veya refund ise zorunludur

affiliation text (metin) Hayır Bu işlemin gerçekleştirildiği mağaza veya satış ortağı (ör. Google Store).
revenue sayı Hayır

Bu işlemle ilişkilendirilen toplam geliri veya genel toplamı (ör. 11,99) belirtir. Bu değer, gelir hesaplamalarınızın bir parçası olarak toplam gelirinize dahil etmek istediğiniz gönderim bedelini, vergi maliyetlerini veya diğer ayarlamaları içerebilir.

value sayı Hayır Etkinlikle ilişkili değer (ör. gelir).
tax sayı Hayır İşlemle ilişkili toplam vergi.
shipping sayı Hayır İşlemle ilişkilendirilen gönderim maliyeti.
coupon text (metin) Hayır İşlemde kullanılan işlem kuponu.
list text (metin) Hayır İlişkilendirilmiş ürünlerin ait olduğu liste. İsteğe bağlı.
items dizi Hayır İlişkilendirilmiş ürünleri içeren dizi.
step tam sayı Hayır Ödeme sürecindeki bir adımı temsil eden sayı. "Ödeme" işlemlerinde isteğe bağlıdır.
checkout_step tam sayı Hayır Ödeme sürecindeki bir adımı temsil eden sayı.
option text (metin) Hayır Seçilen ödeme yöntemi gibi ödeme sayfasındaki seçenek bilgilerini açıklayabilen, checkout ve checkout_option işlemleri için ek alan.
checkout_option text (metin) Hayır Ödeme seçeneği (yani seçilen ödeme yöntemi).

Ürün ve Promosyon İşlemleri

İşlemler, Google Analytics'e gönderdiğiniz ürün ve promosyon verilerinin nasıl yorumlanacağını belirtir.

İşlem Etkinlik Açıklama
click Bir veya daha fazla ürüne ait ürün veya ürün bağlantısının tıklanması.
detail Ürün ayrıntılarının görünümü.
add Alışveriş sepetine bir veya daha fazla ürün ekleme.
remove Alışveriş sepetinden bir veya daha fazla ürünü kaldırın.
checkout Bir veya daha fazla ürün için ödeme sürecini başlatma.
checkout_option Belirli bir ödeme adımı için seçenek değerini gönderme.
purchase Bir veya daha fazla ürünün satışı.
refund Bir veya daha fazla ürün için geri ödeme.
promo_click Dahili tanıtımın tıklanması.
add_to_cart Kullanıcı, alışveriş sepetine bir veya daha fazla ürün ekler.
begin_checkout Kullanıcı, en az bir ürün için ödeme işlemini başlatır.
checkout_progress Kullanıcı, ödeme adımlarını ilk ödeme adımından sonra tamamlar.
purchase Kullanıcı bir satın alma işlemini tamamlar.
refund Bir kullanıcıya bir veya daha fazla ürün için geri ödeme yapılır.
remove_from_cart Kullanıcı, alışveriş sepetinden bir veya daha fazla ürünü kaldırır.
select_content Kullanıcı bir ürünü veya ürünün bağlantısını tıklar.
set_checkout_option Kullanıcının tamamladığı ödeme adımı.
view_item Kullanıcı bir ürünün ayrıntılarını görüntüler.
view_item_list Kullanıcı, bir veya daha fazla üründen oluşan bir listeyi görüntüler.
view_promotion Bir kullanıcı, dahili bir tanıtımı tıklar.
view_refund Kullanıcı, bir veya daha fazla ürün için yapılan geri ödemeyi görüntüler.

Uygulama

Aşağıdaki bölümlerde, analytics.js kitaplığına sahip bir web sitesindeki e-ticaret etkinliğini ölçmek için geliştirilmiş e-ticaret eklentisinin nasıl uygulanacağı açıklanmaktadır.

E-Ticaret Eklentisi'ni Yükle

analytics.js kitaplığının boyutunu küçültmek için, geliştirilmiş e-ticaret varsayılan kitaplıkta sağlanmaz. Bunun yerine, kullanılmadan önce yüklenmesi gereken bir eklenti modülü olarak sunulur.

Geliştirilmiş e-ticaret eklentisini yüklemek için aşağıdaki komutu kullanın:

ga('require', 'ec');

Bu komut, izleyici nesnenizi oluşturduktan sonra ve geliştirilmiş e-ticarete özgü işlevlerden herhangi birini kullanmadan önce gelmelidir.

Geliştirilmiş E-Ticaret Verilerini Gönder

Yüklendikten sonra, varsayılan izleyiciye geliştirilmiş e-ticarete özel birkaç yeni komut eklenir ve e-ticaret verilerini göndermeye başlayabilirsiniz.

E-Ticaret Etkinliklerini Ölçme

Tipik bir geliştirilmiş e-ticaret uygulaması, ürün gösterimlerini ve aşağıdaki işlemlerin herhangi birini ölçer:

  • Bir ürün bağlantısının tıklanması.
  • Ürün ayrıntılarını görüntüleme.
  • Dahili tanıtımların gösterim ve tıklama sayıları.
  • Alışveriş sepetine ürün ekleme/sepetten çıkarma.
  • Bir ürün için ödeme sürecini başlatma.
  • Satın alma işlemleri ve geri ödemeler.

Gösterimleri Ölçme

Ürün gösterimleri, ec:addImpression komutu kullanılarak ölçülür. Ürünle ilgili ayrıntılar impressionFieldObject içinde eklenir.

Örneğin, aşağıdaki kod bir ürünün arama sonuçları listesindeki gösterimini ölçer:

ga('ec:addImpression', {            // Provide product details in an impressionFieldObject.
  'id': 'P12345',                   // Product ID (string).
  'name': 'Android Warhol T-Shirt', // Product name (string).
  'category': 'Apparel/T-Shirts',   // Product category (string).
  'brand': 'Google',                // Product brand (string).
  'variant': 'Black',               // Product variant (string).
  'list': 'Search Results',         // Product list (string).
  'position': 1,                    // Product position (number).
  'dimension1': 'Member'            // Custom dimension (string).
});

impressionFieldObject, name veya id değerine sahip olmalıdır. Diğer tüm değerler isteğe bağlıdır ve ayarlanması gerekmez.

İşlemleri Ölçme

İşlemler, ürün ayrıntılarını eklemek için productFieldObject ile ec:addProduct komutu ve gerçekleştirilmekte olan işlemi belirtmek için ec:setAction komutu kullanılarak ölçülür.

Örneğin, aşağıdaki kod bir arama sonuçları listesinde görüntülenen ürün bağlantısının tıklanmasını ölçer:

ga('ec:addProduct', {               // Provide product details in a productFieldObject.
  'id': 'P12345',                   // Product ID (string).
  'name': 'Android Warhol T-Shirt', // Product name (string).
  'category': 'Apparel',            // Product category (string).
  'brand': 'Google',                // Product brand (string).
  'variant': 'Black',               // Product variant (string).
  'position': 1,                    // Product position (number).
  'dimension1': 'Member'            // Custom dimension (string).
});

ga('ec:setAction', 'click', {       // click action.
  'list': 'Search Results'          // Product list (string).
});

productFieldObject, name veya id değerine sahip olmalıdır. Diğer tüm değerler isteğe bağlıdır ve ayarlanması gerekmez.

Gösterimleri ve İşlemleri Birleştirme

Hem ürün gösterimlerinizin hem de bir işlemin olduğu durumlarda, bunu tek bir isabette birleştirip ölçmek mümkündür.

Aşağıdaki örnekte, ilgili ürünler bölümüyle ürün ayrıntıları görünümünün nasıl ölçüleceği gösterilmektedir:

// The impression from a Related Products section.
ga('ec:addImpression', {            // Provide product details in an impressionFieldObject.
  'id': 'P12345',                   // Product ID (string).
  'name': 'Android Warhol T-Shirt', // Product name (string).
  'category': 'Apparel/T-Shirts',   // Product category (string).
  'brand': 'Google',                // Product brand (string).
  'variant': 'Black',               // Product variant (string).
  'list': 'Related Products',       // Product list (string).
  'position': 1                     // Product position (number).
});

// The product being viewed.
ga('ec:addProduct', {                 // Provide product details in an productFieldObject.
  'id': 'P67890',                     // Product ID (string).
  'name': 'YouTube Organic T-Shirt',  // Product name (string).
  'category': 'Apparel/T-Shirts',     // Product category (string).
  'brand': 'YouTube',                 // Product brand (string).
  'variant': 'gray',                  // Product variant (string).
  'position': 2                       // Product position (number).
});

ga('ec:setAction', 'detail');       // Detail action.

İşlemleri Ölçme

ec:setAction komutunu kullanarak ve eylem türünü purchase olarak ayarlayarak bir işlemi ölçün. Toplam gelir, vergi ve gönderim bedeli gibi işlem düzeyindeki ayrıntılar bir actionFieldObject içinde sağlanır:

ga('ec:addProduct', {               // Provide product details in an productFieldObject.
  'id': 'P12345',                   // Product ID (string).
  'name': 'Android Warhol T-Shirt', // Product name (string).
  'category': 'Apparel',            // Product category (string).
  'brand': 'Google',                // Product brand (string).
  'variant': 'black',               // Product variant (string).
  'price': '29.20',                 // Product price (number).
  'coupon': 'APPARELSALE',          // Product coupon (string).
  'quantity': 1                     // Product quantity (number).
});

ga('ec:setAction', 'purchase', {          // Transaction details are provided in an actionFieldObject.
  'id': 'T12345',                         // (Required) Transaction id (string).
  'affiliation': 'Google Store - Online', // Affiliation (string).
  'revenue': '37.39',                     // Revenue (number).
  'tax': '2.85',                          // Tax (number).
  'shipping': '5.34',                     // Shipping (number).
  'coupon': 'SUMMER2013'                  // Transaction coupon (string).
});

İşlem türü purchase veya refund ise actionFieldObject, id değerine sahip olmalıdır. Diğer tüm değerler isteğe bağlıdır ve ayarlanması gerekmez.

Geri Ödemeleri Ölçme

Bir işlemin tamamı için geri ödeme yapmak için bir refund işlemi ayarlayın ve işlem kimliğini sağlayın:

// Refund an entire transaction.
ga('ec:setAction', 'refund', {
  // Transaction ID is only required field for full refund.
  'id': 'T12345'
});

Eşleşen bir işlem bulunmazsa refund isabeti işlenmez.

Kısmi geri ödemeyi ölçmek için refund işlemi belirleyip işlem kimliğini, ürün kimliklerini ve geri ödenecek ürün miktarını belirtin:

// Refund a single product.
ga('ec:addProduct', {
  'id': 'P12345',       // Product ID is required for partial refund.
  'quantity': 1         // Quantity is required for partial refund.
});

ga('ec:setAction', 'refund', {
  'id': 'T12345',       // Transaction ID is required for partial refund.
});

Geri Ödemeler için Etkileşim Dışı Etkinlikleri Kullanma

Geri ödeme verilerini bir etkinlik kullanarak göndermeniz gerekiyorsa ve etkinlik, normal şekilde ölçülen site içi davranışın bir parçası değilse (ör. kullanıcı tarafından başlatılmıyorsa) bir etkileşim dışı etkinlik göndermeniz önerilir. Bu, hemen çıkma oranı, sitede geçirilen süre gibi metriklerin etkinlikten etkilenmesini önler. Örneğin:

ga('send', 'event', 'Ecommerce', 'Refund', {'nonInteraction': 1});

Ödeme Sürecini Ölçme

Ödeme sürecindeki her adımı ölçmek için:

  • Ödeme işleminin her adımını ölçmek için kod ekleyin.
  • Varsa ödeme seçeneklerini ölçmek için kod ekleyin.
  • İsteğe bağlı olarak, web arayüzünün yönetici bölümünde E-ticaret Ayarları'nı yapılandırarak ödeme dönüşüm hunisi raporu için kullanıcı dostu adım adları ayarlayın.

1. Ödeme Adımlarını Ölçme

Google Analytics'e veri göndermek için ödeme sürecinizdeki her adıma karşılık gelen kodu uygulamanız gerekir:

  • step Alan

    Ölçtüğünüz her ödeme adımı için step değeri eklemeniz gerekir. Bu değer, ödeme işlemlerinizi E-ticaret Ayarları'nda her adım için yapılandırdığınız etiketlerle eşlemek üzere kullanılır.

  • option Alan

    Adımın ölçülmesi sırasında belirtilen ödeme adımıyla ilgili ek bilginiz varsa bu bilgiyi yakalamak için option alanını checkout işlemiyle ayarlayabilirsiniz. Örneğin, kullanıcının varsayılan ödeme türü (ör. Visa).

  • Bir Ödeme Adımını Ölçme

    Bir ödeme adımını ölçmek için her üründe ec:addProduct ifadesini kullanın ve ec:setAction ödeme adımını belirtin. Varsa ec:setAction, ödeme adımını step ve option ile açıklamak için ilave bir actionFieldObject kullanabilir.

    Aşağıdaki örnekte, bir ödeme işleminin ilk adımının tek bir ürünle nasıl ölçüleceği ve ödeme türüyle ilgili bazı ek bilgiler gösterilmektedir:

    ga('ec:addProduct', {               // Provide product details in an productFieldObject.
      'id': 'P12345',                   // Product ID (string).
      'name': 'Android Warhol T-Shirt', // Product name (string).
      'category': 'Apparel',            // Product category (string).
      'brand': 'Google',                // Product brand (string).
      'variant': 'black',               // Product variant (string).
      'price': '29.20',                 // Product price (number).
      'quantity': 1                     // Product quantity (number).
    });
    
    // Add the step number and additional info about the checkout to the action.
    ga('ec:setAction','checkout', {
        'step': 1,
        'option': 'Visa'
    });
    

2. Ödeme Seçeneklerini Ölçme

Ödeme seçenekleri, ödeme işleminin durumuyla ilgili ek bilgileri ölçmenize olanak tanır. Bu özellik, ilk sayfa görüntüleme sırasında bir ödeme adımını ölçtüğünüz, ancak kullanıcı tarafından belirlenen bir seçenek ayarlandıktan sonra aynı ödeme adımıyla ilgili ek bilgilerin sunulduğu durumlarda faydalıdır. Örneğin, kullanıcı bir gönderim yöntemi seçer.

Bir ödeme seçeneğini ölçmek için ec:setAction kullanarak bir checkout_option belirtin ve adım numarası ile seçenek açıklamasını ekleyin.

Kullanıcı ödeme işleminin bir sonraki adımına geçmek için tıkladığında bu işlemi ölçmek isteyebilirsiniz. Örneğin:

// (On "Next" button click)
ga('ec:setAction', 'checkout_option', {'step': 2, 'option': 'FedEx'});

ga('send', 'event', 'Checkout', 'Option', {
    hitCallback: function() {
      // advance to next page
    },
});

3. Ödeme Dönüşüm Hunisi Yapılandırması

Ödeme sürecinizdeki her adıma, raporlarda kullanılacak açıklayıcı bir ad verilebilir. Bu adları yapılandırmak için Google Analytics Web Arayüzü'nün Yönetici bölümünü ziyaret edin, görünümü (profili) seçin ve E-ticaret Ayarları'nı tıklayın. Ölçmek istediğiniz her ödeme adımını etiketlemek için E-ticaret kurulum talimatlarını uygulayın.

E-ticaret Ayarları'nı tıklayın. E-ticaret etkinleştirildi ve 4 ödeme dönüşüm hunisi adımı etiketi eklendi: 1. Yorum Sepeti, 2. Ödeme Bilgilerini Toplama, 3. Satın Alma Ayrıntılarını Onaylayın, 4. Fatura
Şekil 1: E-ticaret Kurulumu - Ödeme Dönüşüm Hunisi

Dahili Tanıtımları Ölçme

Geliştirilmiş e-ticaret eklentisi, web sitesinin başka bir bölümünde satışı tanıtmak için görüntülenen banner'lar gibi dahili tanıtımların gösterimlerini ve tıklamalarını ölçme desteği içerir.

Promosyon Gösterim Sayısı

Dahili tanıtım gösterimleri genellikle sayfa yüklendiğinde ölçülür ve ec:addPromo komutu kullanılarak ilk sayfa görüntülemeyle gönderilir. Örneğin:

ga('ec:addPromo', {               // Promo details provided in a promoFieldObject.
  'id': 'PROMO_1234',             // Promotion ID. Required (string).
  'name': 'Summer Sale',          // Promotion name (string).
  'creative': 'summer_banner2',   // Creative (string).
  'position': 'banner_slot1'      // Position  (string).
});

Promosyon Tıklama Sayısı

Dahili tanıtımlara yapılan tıklamaları ölçmek için promo_click işlemini ayarlayabilirsiniz. Örneğin:

// Identify the promotion that was clicked.
ga('ec:addPromo', {
  'id': 'PROMO_1234',
  'name': 'Summer Sale',
  'creative': 'summer_banner2',
  'position': 'banner_slot1'
});

// Send the promo_click action with an event.
ga('ec:setAction', 'promo_click');
ga('send', 'event', 'Internal Promotions', 'click', 'Summer Sale');

Örneğin, gösterim ve promosyon tıklamasıyla ürün ayrıntıları sayfasını ölçmek için önce ürün ve gösterim verilerini ilk sayfa görüntülemeyle birlikte, ardından promosyon tıklama verilerini ayrı bir etkinlikte gönderin:

// 1. Send product and impression data with pageview.
ga('ec:addProduct', {
  'id': 'P12345',                   // Product ID (string).
  'name': 'Android Warhol T-Shirt', // Product name (string).
  'category': 'Apparel',            // Product category (string).
  'brand': 'Google',                // Product brand (string).
  'variant': 'Black',               // Product variant (string).
  'position': 1,                    // Product position (number).
});

// The impression from the Related Products section.
ga('ec:addImpression', {
  'id': 'P12345',                   // Product ID (string).
  'name': 'Android Warhol T-Shirt', // Product name (string).
  'category': 'Apparel/T-Shirts',   // Product category (string).
  'brand': 'Google',                // Product brand (string).
  'variant': 'Black',               // Product variant (string).
  'list': 'Related Products',       // Product list (string).
  'position': 1,                    // Product position (number).
});

ga('ec:setAction', 'detail');       // Detail action.

ga('send', 'pageview');             // Send the product data with initial pageview.


// 2. Send the promo click data when the promo click occurs.
// Call this function when promo click occurs.
function onPromoClick() {
  ga('ec:addPromo', {
    'id': 'PROMO_1234',
    'name': 'Summer Sale',
    'creative': 'summer_banner2',
    'position': 'banner_slot1'
  });

  // Send the promo_click action with an event.
  ga('ec:setAction', 'promo_click');
  ga('send', 'event', 'Internal Promotions', 'click', 'Summer Sale');
}

promoFieldObject, name veya id değerine sahip olmalıdır. Diğer tüm değerler isteğe bağlıdır ve ayarlanması gerekmez.

Eksiksiz Örnek

Aşağıdaki kod snippet'leri, tek bir ürünün e-ticaret yaşam döngüsünün ilk gösterimden işleme kadar, geliştirilmiş e-ticaret eklentisi kullanılarak nasıl ölçülebileceğini göstermektedir.

Ürün Gösterimini Ölçme

Bu örnekte, kullanıcı ürünü ilk olarak bir arama sonuçları listesinde görüntüler. Bu ürün gösterimini ölçmek için ec:addImpression komutunu kullanın ve ürün ayrıntılarını impressionFieldObject biçiminde sağlayın:

ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');

ga('ec:addImpression', {
  'id': 'P12345',                   // Product details are provided in an impressionFieldObject.
  'name': 'Android Warhol T-Shirt',
  'category': 'Apparel/T-Shirts',
  'brand': 'Google',
  'variant': 'black',
  'list': 'Search Results',
  'position': 1                     // 'position' indicates the product position in the list.
});

ga('ec:addImpression', {
  'id': 'P67890',
  'name': 'YouTube Organic T-Shirt',
  'category': 'Apparel/T-Shirts',
  'brand': 'YouTube',
  'variant': 'gray',
  'list': 'Search Results',
  'position': 2
});

ga('send', 'pageview');              // Send product impressions with initial pageview.

Ürün Tıklamasını Ölçme

Ardından, bir kullanıcı daha fazla ayrıntı görüntülemek için ürün listelemesini tıklayarak söz konusu ürüne ilgi gösterir.

Bu ürün tıklamasını ölçmek için ec:addProduct ve ec:setAction değerlerini kullanın:

// Called when a link to a product is clicked.
function onProductClick() {
  ga('ec:addProduct', {
    'id': 'P12345',
    'name': 'Android Warhol T-Shirt',
    'category': 'Apparel',
    'brand': 'Google',
    'variant': 'black',
    'position': 1
  });
  ga('ec:setAction', 'click', {list: 'Search Results'});

  // Send click with an event, then send user to product page.
  ga('send', 'event', 'UX', 'click', 'Results', {
    hitCallback: function() {
      document.location = '/product_details?id=P12345';
    }
  });
}

Ardından ürün bağlantısı şu şekilde uygulanabilir:

<a href="/next-page.html"
   onclick="onProductClick(); return !ga.loaded;">
  Android Warhol T-Shirt
</a>

Ürün Ayrıntıları Görünümünü Ölçme

Kullanıcı, ürün listelemesini tıkladıktan sonra ürün ayrıntıları sayfasını görüntüler.

Bu ürün ayrıntıları görünümünü ölçmek için ec:addProduct ve ec:setAction kullanarak bir detail işlemi belirtin:

ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');

ga('ec:addProduct', {
  'id': 'P12345',
  'name': 'Android Warhol T-Shirt',
  'category': 'Apparel',
  'brand': 'Google',
  'variant': 'black'
});

ga('ec:setAction', 'detail');

ga('send', 'pageview');       // Send product details view with the initial pageview.

Alışveriş Sepetine Ekleme veya Alışveriş Sepetinden Kaldırma İşlemini Ölçme

Kullanıcı, ürünü alışveriş sepetine ekleyerek satın alma niyetini ifade eder.

Bir ürünün alışveriş sepetine eklenmesi veya çıkarılmasını ölçmek için ec:addProduct kullanın ve add veya remove türünü ayarlayın:

// Called when a product is added to a shopping cart.
function addToCart(product) {
  ga('ec:addProduct', {
    'id': product.id,
    'name': product.name,
    'category': product.category,
    'brand': product.brand,
    'variant': product.variant,
    'price': product.price,
    'quantity': product.qty
  });
  ga('ec:setAction', 'add');
  ga('send', 'event', 'UX', 'click', 'add to cart');     // Send data using an event.
}

Ödeme Sürecini Ölçme

Kullanıcı artık ödeme işlemini başlatmaya hazırdır. Bu örnekte, her biri ayrı sayfalarda olacak şekilde iki adım bulunur:

  • Ödeme ayrıntılarını ekleyin (payment.html).
  • Gönderim ayrıntılarını ekleyin (shipping.html).

Geçerliyse Web Arayüzü Yöneticisi'ndeki E-ticaret Ayarları'nın altında bulunan ödeme dönüşüm hunisini doğru şekilde yapılandırdığınızdan emin olun. Örneğin:

E-ticaret Ayarları&#39;nı tıklayın. E-ticaret etkinleştirildi ve ödeme dönüşüm hunisi adım etiketleri eklendi: 1. Ödeme Ayrıntıları ve 2. Gönderim Ayrıntıları
Şekil 2: E-ticaret Ayarları - Ödeme Dönüşüm Hunisi

1. Adım - Ödeme

Ödeme işleminin ilk adımını ölçmek amacıyla, alışveriş sepetindeki her bir ürün için ec:addProduct ve checkout belirtmek için ec:setAction kullanın. ec:setAction, ödeme adımını bir sayıyla açıklamak için actionFieldObject alır. Bu kullanıcının varsayılan ödeme türü hakkında ek bilgiler, option alanı kullanılarak eklenmiştir:

ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');

/**
 * Called when the user begins the checkout process.
 * @param {Array} cart An array representing the user's shopping cart.
 */
function checkout(cart) {
  for(var i = 0; i < cart.length; i++) {
    var product = cart[i];
    ga('ec:addProduct', {
      'id': product.id,
      'name': product.name,
      'category': product.category,
      'brand': product.brand,
      'variant':  product.variant,
      'price': product.price,
      'quantity': product.qty
    });
  }
}

// In the case of checkout actions, an additional actionFieldObject can
// specify a checkout step and option.
ga('ec:setAction','checkout', {
    'step': 1,            // A value of 1 indicates this action is first checkout step.
    'option': 'Visa'      // Used to specify additional info about a checkout stage, e.g. payment method.
});
ga('send', 'pageview');   // Pageview for payment.html

2. Adım: Gönderim

Ödeme işleminin ikinci adımını ölçmek üzere alışveriş sepetindeki her bir ürün için ec:addProduct ve ödemeyi belirtmek için ec:setAction kullanın. Bu durumda, ilk sayfa görüntüleme gönderildiğinde hangi gönderim seçeneği belirlendiğiyle ilgili ek bilgiye sahip olmadığımızdan bu durum, checkout_option belirtmek için ec:setAction kullanılarak ayrı olarak ele alınır.

// Measure checkout step 2:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');

/**
 * Called when the user begins the checkout process.
 * @param {Array} cart An array representing the user's shopping cart.
 */
function checkout(cart) {
  for(var i = 0; i < cart.length; i++) {
    var product = cart[i];
    ga('ec:addProduct', {
      'id': product.id,
      'name': product.name,
      'category': product.category,
      'brand': product.brand,
      'variant':  product.variant,
      'price': product.price,
      'quantity': product.qty
    });
  }
}

ga('ec:setAction','checkout', {'step': 2});
ga('send', 'pageview');     // Pageview for shipping.html


// Called when user has completed shipping options.
function onShippingComplete(stepNumber, shippingOption) {
  ga('ec:setAction', 'checkout_option', {
    'step': stepNumber,
    'option': shippingOption
  });

  ga('send', 'event', 'Checkout', 'Option', {
     hitCallback: function() {
       // Advance to next page.
     }
  });
}

Ardından form şu şekilde uygulanabilir:

<a href="/next-page.html"
   onclick="onShippingComplete(2, 'FedEx'); return !ga.loaded;">
  Continue
</a>

İşlemi Ölçme

Son olarak, kullanıcı ödeme işlemini tamamlar ve satın alma işlemini gönderir.

Bir veya daha fazla ürünün satışını ölçmek amacıyla her bir ürünü eklemek için ec:addProduct özelliğini, ardından purchase belirtmek için ec:setAction kullanın. Toplam gelir, vergi vb. işlem düzeyindeki bilgiler actionFieldObject aracılığıyla belirtilebilir. Örneğin:

ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');

ga('ec:addProduct', {
  'id': 'P12345',
  'name': 'Android Warhol T-Shirt',
  'category': 'Apparel',
  'brand': 'Google',
  'variant': 'black',
  'price': '29.20',
  'quantity': 1
});

// Transaction level information is provided via an actionFieldObject.
ga('ec:setAction', 'purchase', {
  'id': 'T12345',
  'affiliation': 'Google Store - Online',
  'revenue': '37.39',
  'tax': '2.85',
  'shipping': '5.34',
  'coupon': 'SUMMER2013'    // User added a coupon at checkout.
});

ga('send', 'pageview');     // Send transaction data with initial pageview.

Yerel Para Birimlerini Belirleme

Varsayılan olarak, Google Analytics yönetimi web arayüzü üzerinden tüm işlemler ve öğeler için ortak, global bir para birimi yapılandırabilirsiniz. Varsayılan olarak, tüm öğeler ve işlemler için global para birimi kullanılır. Birden fazla para biriminde işlem yapan web siteleri için e-ticaret eklentisi, işlemin yerel para birimini belirtmenize olanak tanır.

Yerel para birimi ISO 4217 standardında belirtilmelidir. Desteklenen dönüşüm para birimlerinin tam listesi için Para Birimi Kodları Referansı belgesini okuyun.

Yerel para birimleri, currencyCode izleyici özelliği kullanılarak belirtilir. Örneğin, bu izleyici para birimi değerlerini Euro olarak gönderir:

ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');

ga('set', 'currencyCode', 'EUR'); // Set currency to Euros.

ga('ec:addProduct', {
  'id': 'P12345',
  'name': 'Android Warhol T-Shirt',
  'category': 'Apparel',
  'brand': 'Google',
  'variant': 'black',
  'price': '21.89',
  'quantity': 1
});

ga('ec:setAction', 'purchase', {
  id: 'T12345',
  affiliation: 'Google Store - Online',
  revenue: '28.03',
  tax: '2.14',
  shipping: '4.00',
  coupon: 'SUMMER2013'
});

ga('send', 'pageview');