Pengukuran E-commerce

Panduan ini menjelaskan cara mengumpulkan data e-commerce menggunakan analytics.js.

Ringkasan

Pengukuran e-commerce memungkinkan Anda mengukur jumlah transaksi dan pendapatan yang dihasilkan situs Anda. Pada situs e-commerce standar, setelah pengguna mengklik tombol "beli" di browser, informasi pembelian pengguna tersebut akan dikirim ke server web, yang melakukan transaksi. Jika berhasil, server akan mengalihkan pengguna ke halaman "Terima Kasih" atau tanda terima dengan detail transaksi dan tanda terima pembelian. Anda dapat menggunakan library analytics.js untuk mengirim data e-commerce dari halaman "Terima Kasih" ke Google Analytics.

Ada dua jenis data e-commerce yang dapat Anda kirim menggunakan analytics.js: data transaksi dan item.

Data Transaksi

Transaksi menunjukkan seluruh transaksi yang terjadi di situs Anda, dan berisi nilai berikut:

Kunci Jenis Nilai Wajib Deskripsi
id teks Ya ID transaksi. (misalnya, 1234)
affiliation teks Tidak Toko atau afiliasi tempat transaksi ini terjadi (misalnya, Acme Clothing).
revenue mata uang Tidak Menentukan total pendapatan atau jumlah total yang terkait dengan transaksi (mis. 11,99). Nilai ini bisa mencakup biaya pengiriman, pajak, atau penyesuaian lainnya pada total pendapatan yang ingin Anda sertakan sebagai bagian dari penghitungan pendapatan Anda.
shipping mata uang Tidak Menentukan total biaya pengiriman pada transaksi. (mis. 5)
tax mata uang Tidak Menentukan total pajak pada transaksi. (misalnya, 1,29)

Data Item

Item mewakili masing-masing produk yang ada di keranjang belanja dan berisi nilai berikut:

Kunci Jenis Nilai Wajib Deskripsi
id teks Ya ID transaksi. ID ini adalah yang menautkan item ke transaksi yang terkait. (misalnya, 1234)
name teks Ya Nama item. (misalnya, Boneka Kelinci)
sku teks Tidak Menentukan SKU atau kode item. (misalnya, SKU47)
category teks Tidak Kategori untuk item tersebut (misalnya, Pernak-Pernik Pesta)
price mata uang Tidak Masing-masing unit atau harga untuk setiap item. (misalnya, 11,99)
quantity bilangan bulat Tidak Jumlah unit yang dibeli dalam transaksi. Jika nilai selain bilangan bulat diteruskan ke kolom ini (misalnya, 1,5), nilai tersebut akan dibulatkan ke nilai bilangan bulat terdekat.

Penerapan

Anda biasanya menerapkan pengukuran e-commerce setelah pengguna menyelesaikan proses checkout. Ini umumnya terjadi di halaman "Terima Kasih". Setelah Anda melakukannya, dan siap mengirim data e-commerce ke Google Analytics, ada beberapa langkah yang perlu Anda lakukan:

Memuat Plugin E-commerce

Untuk mengurangi ukuran library analytics.js, pengukuran e-commerce tidak disediakan di library default. Sebagai gantinya, pengukuran e-commerce disediakan sebagai modul plugin yang harus dimuat sebelum digunakan.

Untuk memuat plugin e-commerce, gunakan perintah berikut:

ga('require', 'ecommerce');

Perintah ini harus muncul setelah Anda membuat objek pelacak dan sebelum Anda menggunakan fungsi khusus e-commerce apa pun.

Setelah dimuat, beberapa perintah baru khusus untuk pengukuran e-commerce akan ditambahkan ke pelacak default.

Menambahkan Transaksi

Setelah dimuat, plugin akan membuat objek keranjang belanja yang transparan. Anda dapat menambahkan data transaksi dan item ke keranjang belanja, dan setelah dikonfigurasi sepenuhnya, Anda dapat mengirim semua data sekaligus.

Anda menambahkan data transaksi ke keranjang belanja menggunakan perintah ecommerce:addTransaction:

ga('ecommerce:addTransaction', {
  'id': '1234',                     // Transaction ID. Required.
  'affiliation': 'Acme Clothing',   // Affiliation or store name.
  'revenue': '11.99',               // Grand Total.
  'shipping': '5',                  // Shipping.
  'tax': '1.29'                     // Tax.
});

Menambahkan Item

Selanjutnya, untuk menambahkan item ke keranjang belanja, Anda menggunakan perintah ecommerce:addItem:

ga('ecommerce:addItem', {
  'id': '1234',                     // Transaction ID. Required.
  'name': 'Fluffy Pink Bunnies',    // Product name. Required.
  'sku': 'DD23444',                 // SKU/code.
  'category': 'Party Toys',         // Category or variation.
  'price': '11.99',                 // Unit price.
  'quantity': '1'                   // Quantity.
});

Mengirim Data

Terakhir, setelah mengonfigurasi semua data e-commerce di keranjang belanja, Anda akan mengirim data ke Google Analytics menggunakan perintah ecommerce:send:

ga('ecommerce:send');

Perintah ini akan memeriksa setiap transaksi dan item di keranjang belanja dan mengirim data terkait ke Google Analytics. Setelah selesai, keranjang belanja akan dikosongkan dan siap mengirim data untuk transaksi baru. Jika perintah ecommerce:send sebelumnya dikeluarkan, hanya data transaksi dan item baru yang akan dikirim.

Menghapus Data

Jika Anda perlu menghapus semua transaksi dan item dari keranjang belanja secara manual, Anda dapat menggunakan perintah berikut:

ga('ecommerce:clear');

Menentukan Mata Uang Lokal

Secara default, Anda dapat mengonfigurasi mata uang umum dan global untuk semua transaksi dan item melalui antarmuka web pengelolaan Google Analytics. Secara default, mata uang global digunakan untuk semua item dan transaksi. Untuk situs yang melakukan transaksi dengan beberapa mata uang, plugin e-commerce memungkinkan Anda menentukan mata uang lokal untuk transaksi dan masing-masing produk.

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

Untuk menetapkan mata uang lokal dari transaksi tertentu dan semua itemnya, Anda hanya perlu menentukan mata uang untuk transaksi tersebut:

ga('ecommerce:addTransaction', {
  'id': '1234',
  'affiliation': 'Acme Clothing',
  'revenue': '11.99',
  'shipping': '5',
  'tax': '1.29',
  'currency': 'EUR'  // local currency code.
});

Terakhir, Anda juga dapat menentukan mata uang per item:

  ga('ecommerce:addItem', {
    'id': '1234',
    'name': 'Fluffy Pink Bunnies',
    'sku': 'DD23444',
    'category': 'Party Toys',
    'price': '11.99',
    'quantity': '1',
    'currency': 'GBP' // local currency code.
  });

Dukungan Beberapa Pelacak

Anda juga dapat menggunakan plugin e-commerce jika telah menerapkan beberapa pelacak (bernama) di halaman Anda. Plugin ini berfungsi sama persis seperti pelacak default, kecuali jika formatnya: trackerName.pluginName:method. Misalnya, jika Anda membuat pelacak bernama myTracker:

ga('create', 'UA-XXXXX-Y', 'auto', {'name': 'myTracker'});

Selanjutnya, Anda akan memuat plugin e-commerce untuk pelacak bernama tersebut menggunakan:

ga('myTracker.require', 'ecommerce');

Untuk mengirim transaksi, Anda dapat membuat objek transaksi dan meneruskannya ke pelacak bernama sebagai berikut:

var transaction = {
  'id': '1234',                    // Transaction ID.
  'affiliation': 'Acme Clothing',  // Affiliation or store name.
  'revenue': '11.99',              // Grand Total.
  'shipping': '5' ,                // Shipping.
  'tax': '1.29'                    // Tax.
};

ga('myTracker.ecommerce:addTransaction', transaction);

Dengan sintaksis ini, objek transaksi dapat digunakan di beberapa pelacak.

Terakhir, Anda akan mengirim data transaksi sebagai berikut:

ga('myTracker.ecommerce:send');

Contoh

Sebagian besar situs e-commerce melakukan transaksi di server, sementara library analytics.js mengirimkan data ke Google Analytics dari browser. Jadi, diperlukan sedikit koordinasi antara server dan klien untuk mengirimkan data e-commerce ke Google Analytics dengan benar.

Sebagian besar situs e-commerce merender halaman "Terima Kasih" menggunakan mesin template sisi server. Dalam hal ini, Anda akan menambahkan kode pengukuran e-commerce ke template sisi server, dan menggunakan logika server untuk menulis nilai data e-commerce secara dinamis ke halaman akhir. Berikut adalah contoh tampilannya di PHP.

Di PHP, Anda biasanya akan memiliki beberapa representasi data e-commerce. Dalam contoh ini, data disimpan dalam array terkait:

<?php
// Transaction Data
$trans = array('id'=>'1234', 'affiliation'=>'Acme Clothing',
               'revenue'=>'11.99', 'shipping'=>'5', 'tax'=>'1.29');

// List of Items Purchased.
$items = array(
  array('sku'=>'SDFSDF', 'name'=>'Shoes', 'category'=>'Footwear', 'price'=>'100', 'quantity'=>'1'),
  array('sku'=>'123DSW', 'name'=>'Sandals', 'category'=>'Footwear', 'price'=>'87', 'quantity'=>'1'),
  array('sku'=>'UHDF93', 'name'=>'Socks', 'category'=>'Footwear', 'price'=>'5.99', 'quantity'=>'2')
);
?>

Langkah pertama adalah menulis beberapa logika untuk mengubah data e-commerce menjadi string JavaScript yang diperlukan oleh analytics.js:

<?php
// Function to return the JavaScript representation of a TransactionData object.
function getTransactionJs(&$trans) {
  return <<<HTML
ga('ecommerce:addTransaction', {
  'id': '{$trans['id']}',
  'affiliation': '{$trans['affiliation']}',
  'revenue': '{$trans['revenue']}',
  'shipping': '{$trans['shipping']}',
  'tax': '{$trans['tax']}'
});
HTML;
}

// Function to return the JavaScript representation of an ItemData object.
function getItemJs(&$transId, &$item) {
  return <<<HTML
ga('ecommerce:addItem', {
  'id': '$transId',
  'name': '{$item['name']}',
  'sku': '{$item['sku']}',
  'category': '{$item['category']}',
  'price': '{$item['price']}',
  'quantity': '{$item['quantity']}'
});
HTML;
}
?>

Kemudian, pada tag <script>, Anda akan menambahkan logika PHP tambahan untuk menghasilkan data transaksi dan item secara dinamis:

<!-- Begin HTML -->
<script>
ga('require', 'ecommerce');

<?php
echo getTransactionJs($trans);

foreach ($items as &$item) {
  echo getItemJs($trans['id'], $item);
}
?>

ga('ecommerce:send');
</script>

Setelah skrip PHP dijalankan, data transaksi dan item yang diperlukan oleh analytics.js akan dicetak ke halaman. Setelah JavaScript di halaman dirender di browser, semua data e-commerce akan dikirim ke Google Analytics.

Jenis Mata Uang

Jenis mata uang default dapat dikonfigurasi melalui Antarmuka Pengelolaan. Saat Anda mengirimkan nilai mata uang menggunakan analytics.js, nilai tersebut mewakili total nilai mata uang.

Titik desimal dapat digunakan sebagai pembatas antara bagian bilangan bulat dan pecahan dari mata uang. Presisinya maksimal 6 angka di belakang koma. Hal berikut berlaku untuk kolom mata uang:

1000.000001

Setelah nilai dikirim ke Google Analytics, semua teks dihapus hingga digit pertama, karakter - atau karakter . (desimal). Jadi:

$-55.00

akan menjadi:

-55.00