グーグルアナリティクス(Analytics)SEOアクセス解析グーグル活用などのセミナ

アクセス解析道場ではグーグルアナリティクスのeコマース機能を活用します

この記事は約10分で読めます。

アクセス解析道場アクセス解析道場では複数のアクセス解析を使用して自社サイトを分析することにしている。1つはグーグルウェブマスターツールでこれは全受講生必須になっている。さらにアナリティクスでは「eコマース機能」があるので、その機能を生かすことを推奨している。eコマース機能を使うためには「eコマース機能をonにする」ということと「買物完了ページに金額情報をトラッキンするコードを貼る」ということだけでOKである。

アナリティクスのeコマースについて
以下 http://code.google.com/intl/ja/apis/analytics/docs/tracking/gaTrackingEcommerce.html より引用

e コマース トラッキング

Google Analytics でウェブサイトの e コマース アクティビティをレポートするには、ウェブサイトのプロファイル設定ページで e コマース トラッキングを有効にする必要があります。その後、ショッピング カート ページまたは e コマース ソフトウェアに ga.js e コマース トラッキング メソッドを実装する必要があります。一連の e コマース メソッドが連係して、各ユーザーのトランザクション情報をリアルタイムで Google Analytics データベースに送信します。このようにして、Analytics は特定の参照ソースをコンバージョンまたは購入にリンクすることができます。通常、一般的なテンプレート型の e コマース エンジンであれば、注文確認ページにこれらの情報を非表示で追加することは可能です。

一般的なプロセス

ここでは Google Analytics を使用した e コマース トラッキングの基本プロセスについて説明するために、サイトの e コマース トランザクションのトラッキングに必要な 3 つのメソッドの概要を示します。ショッピング カート ページまたは e コマース ソフトウェアで呼び出す順序に従って、これらのメソッドについて説明します。

  1. トランザクション オブジェクトを作成する。

    _addTrans() メソッドを使用してトランザクション オブジェクトを初期化します。トランザクション オブジェクトは、注文 ID、送料、請求先住所など、1 つのトランザクションのすべての関連情報を保存します。トランザクション オブジェクトの情報は、そのトランザクションおよび同じ ID のすべてのアイテムの注文 ID によって、そのトランザクションのアイテムに関連付けられます。

  2. トランザクションにアイテムを追加する。

    _addItem() メソッドはユーザーのショッピング カート内の各アイテムに関する情報をトラッキングし、orderId フィールドによりアイテムを各トランザクションに関連付けます。このメソッドは、SKU、価格、カテゴリ、数量などの特定アイテムに関する詳細をトラッキングします。

  3. トランザクションを Analytics サーバーに送信する。

    _trackTrans() メソッドは、購入が行われたことを確認し、トランザクション オブジェクトを構成するすべてのデータがトランザクションとして確定されます。

e コマース エンジンからこの情報を取得するには、いくつかの方法があります。一部の e コマース エンジンにより非表示のフォームに書き込まれる購入情報を使用したり、他のエンジンによりデータベースに保存される情報や、Cookie に格納された情報を使用することができます。Google Analytics を認識する一般的な e コマース エンジンの一部は、Analytics 用に注文トラッキングを簡略化するための独自のモジュールを提供しています。

ガイドライン

e コマース トラッキングを実装する場合は、次の点に注意してください。

  • トランザクションに追加されるすべてのアイテムに対して、SKU コードのパラメータを使用する必要があります。
    トランザクションに複数のアイテムが含まれ、すべてのアイテムに SKU が指定されていない場合、トランザクションに最後に追加され、SKU が指定されたアイテムのみに対して GIF リクエストが送られます。また、広告枠内の異なるアイテムに同じ SKU が付けられ、ユーザーが両方のアイテムを購入すると、最後に追加されたアイテムのデータのみが返されます。このため、販売する各アイテムに固有の SKU を付けていることを確認してください。
  • _addTrans()_addItem() の引数リストは位置に応じて使用されます。
    すべての引数が必要なわけではありませんが、指定しない引数には空のプレースホルダーを使用してエラーを防止する必要があります。たとえば注文 ID、SKU、価格、数量のみを含むアイテムを次のように追加します。
    _addItem("54321", "12345", "", "", "55.95", "1");
  • price および total パラメータの値は整数で指定する必要があり、通貨の値と関連付けられません。
    これらのパラメータでは、値のカンマまたはピリオドは小数値を示します。このため、たとえば total の値に 1,996.00 を指定すると、$1,996.00 ではなく 1.996 と記録されます。これはこのパラメータの形式が単純な整数形式で、カンマやその他の通貨記号が認識されないためです。また、これらの値は整数として記録さ れるため、通貨と関連付けられません。そのため、通貨コンバージョンが必要な場合は、Analytics に渡す前に e コマース ソフトウェアで最初に処理する必要があります。
  • サードパーティのショッピング カートを使用して e コマース トラッキングを行う場合は、恐らくクロスドメイン トラッキングも設定する必要があります。
    詳細については、クロスドメイン トラッキングをご覧ください。
  • 必須ではありませんが、特定のページをトランザクション データに関連付けるには、領収ページで _trackPageview() を呼び出すことをおすすめします。

完全なコード例

次の例は、3 つすべてのメソッドを使用した、領収ページでの e コマース トラッキングのサンプル設定を示しています。_trackPageview() を使用することで、トランザクションが「Receipt for your clothing purchase from Acme Clothing」 というタイトルのページと関連付けられます。

非同期の構文(推奨)

<html>
<head>
<title>Receipt for your clothing purchase from Acme Clothing</title>
<script type="text/javascript">

var _gaq = _gaq || [];
_gaq
.push(['_setAccount', 'UA-XXXXX-X']);
_gaq
.push(['_trackPageview']);
_gaq
.push(['_addTrans',
'1234', // order ID - required
'Acme Clothing', // affiliation or store name
'11.99', // total - required
'1.29', // tax
'5', // shipping
'San Jose', // city
'California', // state or province
'USA' // country
]);

// add item might be called for every item in the shopping cart
// where your ecommerce engine loops through each item in the cart and
// prints out _addItem for each
_gaq
.push(['_addItem',
'1234', // order ID - required
'DD44', // SKU/code - required
'T-Shirt', // product name
'Green Medium', // category or variation
'11.99', // unit price - required
'1' // quantity - required
]);
_gaq
.push(['_trackTrans']); //submits transaction to the Analytics servers

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga
.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

</script>
</head>
<body>

Thank you for your order. You will receive an email containing all your order details.

</body>
</html>

従来の構文

<html>
<head>
<title>Receipt for your clothing purchase from Acme Clothing</title>
</head>

<body>

Thank you for your order. You will receive an email containing all your order details.


<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol ) ? "https://ssl." : "http://www.");
document
.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try{
var pageTracker = _gat._getTracker("UA-xxxxx-x");
pageTracker
._trackPageview();
pageTracker
._addTrans(
"1234", // order ID - required
"Womens Apparel", // affiliation or store name
"11.99", // total - required
"1.29", // tax
"15.00", // shipping
"San Jose", // city
"California", // state or province
"USA" // country
);


// add item might be called for every item in the shopping cart
// where your ecommerce engine loops through each item in the cart and
// prints out _addItem for each
pageTracker
._addItem(
"1234", // order ID - necessary to associate item with transaction
"DD44", // SKU/code - required
"T-Shirt", // product name
"Olive Medium", // category or variation
"11.99", // unit price - required
"1" // quantity - required
);

pageTracker
._trackTrans(); //submits transaction to the Analytics servers
} catch(err) {}
</script>
</body>
</html>