衣袋教授の新・Googleアナリティクス入門講座

ECサイトの集客から売り上げまでGAで分析したい! eコマーストラッキングを徹底解説[第55回]

集客やサイト内だけでなくECサイトの売り上げもGAで分析可能だ。eコマーストラッキングを行う準備と、トラッキングコードのカスタマイズ方法を解説する。

トラッキングコードのカスタマイズの最後を飾るのは、ECサイトの売上データをGoogleアナリティクスに取り込んで分析し、売り上げアップなどの施策をより良くするための「eコマース」のトラッキングコードだ。

これから3回にわたり、eコマースのトラッキングを紹介する。今回はトラッキングコードの設定方法を解説する。

eコマースサイトでは、購入された商品や個数、合計購入金額などは基本的に毎回異なるのが普通だ。通常は、そうした売り上げレポートは別途作っていることだろう。しかし、Googleアナリティクスにこうしたデータを取り込めば、サイト上でのユーザー行動をあわせて分析でき、より具体的なユーザー理解と改善案につなげられるようになる。

それを実現するには、動的にプログラミングしてデータを収集できるようにしなければならない。

eコマースのトラッキングコード実装はハードルが高いが、集客やサイト内の行動だけでなく、最終的に売り上げにどう結びついたのかをGoogleアナリティクスで見られることのメリットは大きい。一定規模以上のeコマースサイトであれば、ぜひチャレンジしてほしいカスタマイズだ。

自前で決済システムを作っている巨大なサイトもあれば、カート投入から決済までの部分は外部のレンタルカートシステムを利用している場合もあるだろう。後半ではそのような場合の注意点についても簡単に触れておく。

この記事で学べること:
  • 集客からeコマースサイトの売り上げまでGoogleアナリティクスで分析するように設定できる
  • トラッキングコードのどこをカスタマイズすればいいかわかる

「管理」画面で事前にeコマースを「オン」にする

「eコマース」の機能を利用するためには、「管理」画面(図1赤枠部分)でその準備を行っておく必要がある。ビューの列(図1青枠部分)の項目の「eコマースの設定」(図1緑枠部分)をクリックしよう。すると図1のような表示になる。

図1:[管理]>[eコマースの設定]画面
図1:[管理]>[eコマースの設定]画面

右上に表示されているeコマースの設定が「オフ」になっているので(図1黒枠部分)、まずはここをクリックして「オン」にする(図2赤枠部分)。そして「次のステップ」(図2青枠部分)をクリックしよう。

図2:カスタム ディメンションを追加
図2:カスタム ディメンションを追加
「関連商品の有効化」はいずれなくなる可能性が高い

関連商品の有効化については、オフのままでよいだろう(図2緑枠部分)。以前は、この設定をオンにすると同時購入した商品パターンを見ることができた。ただしこれには「一定量のトランザクションデータと商品数が必要で、関連商品のリストを生成するために30日分のデータが必要」と条件が厳しく、筆者はレポートで確認したことがない。またAPIでの提供が終了しているので、レポート上でもおそらくすでに利用できないか、なくなると思われる。この設定はオフでよいだろう。

続いて表示された画面(図3)で、拡張eコマースの設定はオフ(図3赤枠部分)のまま、「送信」(図3青枠部分)をクリックしよう。これでレポート側の準備は終わりだ。

図3:カスタム ディメンションを追加
図3:カスタム ディメンションを追加

eコマースには2種類ある

この設定プロセスでおわかりのとおり、eコマースの計測方法には現在2つの種類ある。

  • 普通のeコマース(購入完了時のデータ)
  • 拡張eコマース(ページの閲覧やカート投入なども網羅したデータ)

普通のeコマースは「購入完了時点に売上データだけを収集する」方法だ。拡張eコマースは「商品ページの閲覧やカート投入といったさまざまなユーザーの行動まで含んだデータを網羅的に収集する」方法で、設計力と高度で多様な実装が必要になる。

拡張eコマースは本連載の範囲をはるかに超える難易度になるので、ここでは普通のeコマースの実装についてのみ解説する。

準備をしないとレポートに注意書きが出る

この準備をしていないと、関連するレポートである[コンバージョン]>[eコマース]セクションのレポート群(図4赤枠部分)を見ようと思っても、次のような注意書きが表示(図4青枠部分)される。

図4:[コンバージョン]>[eコマース]セクションのレポート
図4:[コンバージョン]>[eコマース]セクションのレポート

トラッキングコードは4種類の記述をセットで行う

それでは本題のトラッキングコードについて進めていこう。eコマースのトラッキングコードは決済完了ページに設定するのが一般的だ。そのページが購入商品や金額が確定した直後だからだ。

そして大きく次の4種類の記述をセットで行う必要がある。

  1. eコマース プラグインの読み込みの記述
  2. トランザクション(購入全体情報)の記述
  3. 個々の売上商品明細の記述
  4. 以上のトランザクションデータを送信するための記述

正確には2番目と3番目のデータのどちらかだけを送信する記述方法もあるが、そうしたバリエーションについてはここでは説明しない。ここで紹介するのはオーソドックスに一度でデータを送る基本的なパターンの実装方法だと考えてほしい。

①eコマース プラグインの読み込みの記述

それでは1つずつ説明していこう。最初の「eコマース プラグインの読み込みの記述」とは、eコマース機能を利用するために必要な準備をするプログラムを読み込むための記述だ。具体的には次の記述を行う。

ga('require', 'ecommerce');

次のような標準のトラッキングコードのトラッカー オブジェクト(下記赤字部分のこと)作成後の場所に記述する必要がある。標準のトラッキングコードの下(下記青字部分)にeコマースのトラッキングコード一式を追加していくのが素直だろう。

<script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-11111111-1', 'auto'); ga('send', 'pageview'); ga('require', 'ecommerce'); </script>

以降は、ここで追加した1行の下に続けて記述していく。

②トランザクション(購入全体情報)の記述

続いて「トランザクションの記述」部分だ。これは該当する1購入全体の情報が含まれる。具体的には、最大で次の5種類の情報を指定する。

変数 値の型 必須 意味
id テキスト はい トランザクションID(1つひとつの購買ID)
affiliation テキスト いいえ 売り上げた店舗
revenue 通貨 いいえ※ 合計販売金額(送料や税金を含む総合計を指定するのが一般的)
shipping 通貨 いいえ 送料
tax 通貨 いいえ 税金
表1:トランザクションの記述

表1で※印がある「revenue(合計販売金額)」が「必須」でないのは違和感があるかもしれない。基本的な実装では合計販売金額を記述すべきだが、合計販売金額を送信するにはそれ以外にもさまざまな記述方法が許容されているので「必須ではない」となっているだけだ。※印がある項目は基本的に必須と考えた方が無難だろう。後述する表2でも同様だ。

トラッキングコードの記述例は以下のとおりだ。青字部分が今回記述する範囲で、赤字部分が各変数の値になる箇所なので、そこが各トランザクションで個別に変化する箇所になる。

ga('require', 'ecommerce'); ga('ecommerce:addTransaction', { 'id': 'abc1234', 'affiliation': 'xyz shop', 'revenue': '10800', 'shipping': '500', 'tax': '800' });

上記の例では、購買IDが「abc1234」で、購入店舗が「xyz shop」ということだ。税込売上額が10,800円で、そのうち送料が500円、税が800円なので、その分を差し引けば商品の本体価格は9,500円だということになる。

③個々の売上商品明細の記述

続いて「個々の売上商品明細の記述」部分だ。これは動的なプログラムで商品ごとに繰り返し記述する。たとえば「商品A」が2個、「商品B」が3個売れたのであれば、「商品A」と「商品B」の2つ分の記述が必要になるということだ。各商品では最大で次の6種類の情報を指定する。

変数 値の型 必須 説明
id テキスト はい トランザクションID(1つひとつの購買ID)
name テキスト はい 商品の名前
sku テキスト いいえ 商品のSKU
category テキスト いいえ 商品カテゴリ
price 通貨 いいえ※ 各商品の単価
quantity 整数 いいえ※ 購入した個数
表2:個々の売上商品明細の記述

トラッキングコードの記述例は以下のとおり。赤字部分が各変数の値になるので、可変部分になる。トランザクションIDは、「トランザクションの記述」部分で指定したトランザクションIDと同じものを指定する。

ga('require', 'ecommerce'); ga('ecommerce:addTransaction', { 'id': 'abc1234', 'affiliation': 'xyz shop', 'revenue': '10800', 'shipping': '500', 'tax': '800' }); ga('ecommerce:addItem', { 'id': 'abc1234', 'name': 'klmn', 'sku': '9876xyz', 'category': 'Toy', 'price': '9500', 'quantity': '1' });

各商品を識別するための変数には「name」「sku」「category」があり、これがGoogleアナリティクスのレポート上にあるディメンション「商品」「商品のSKU」「商品カテゴリ」に対応する。レポートでの見え方について詳しくは次回、この記事の最後で簡単に説明する。

「SKU」とは「Stock Keeping Unit」の略で、サイズや色違いの管理したい最小単位のことだ。素直にこの3つを利用するとすれば、一番大きい単位が「category」で、次が「name」、最後が「sku」ということになるだろう。

あとはその販売した商品の単価と販売数量の2つを指定すればいい。

④以上のトランザクションデータを送信するための記述

最後は「以上のトランザクションデータを送信するための記述」部分で、次の記述を行う。これはサイトや商品によって変化せず、同じ記述でよい。

ga('require', 'ecommerce'); ga('ecommerce:addTransaction', { 'id': 'abc1234', 'affiliation': 'xyz shop', 'revenue': '10800', 'shipping': '500', 'tax': '800' }); ga('ecommerce:addItem', { 'id': 'abc1234', 'name': 'klmn', 'sku': '9876xyz', 'category': 'Toy', 'price': '9500', 'quantity': '1' }); ga('ecommerce:send');

eコマースのトラッキングコードのフルの記述例

最終的にトラッキングコード一式としてはどう記述するかを見てみよう。青字部分がeコマーストラッキングで追記した箇所で、赤字部分がプロパティIDやトランザクションデータ固有の部分だ。赤字部分を実態に合わせて変更することになる。

<script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-11111111-1', 'auto'); ga('send', 'pageview'); ga('require', 'ecommerce'); ga('ecommerce:addTransaction', { 'id': 'abc1234', 'affiliation': 'xyz shop', 'revenue': '10800', 'shipping': '500', 'tax': '800' }); ga('ecommerce:addItem', { 'id': 'abc1234', 'name': 'klmn', 'sku': '9876xyz', 'category': 'Toy', 'price': '9500', 'quantity': '1' }); ga('ecommerce:send'); </script>

外部のカートシステムを利用している場合は?

カートシステムは外部のシステムを利用しているという場合もあるだろう。有名なショッピングカートシステムであれば、Googleアナリティクスに対応している場合も多い。しかし商品を陳列している自分のサイトのドメインと外部のショッピングカートは別ドメインになると思うので、次の2つのことを確認しよう。

  • 自分のサイトとカートのサイト間の移動でセッションが切れないように、クロスドメインというトラッキングコードのカスタマイズを行う必要があるかどうか
  • 同じ目的(セッションが切れないようにするため)で、Googleアナリティクス側の参照元除外の設定が必要になるかどうか

ここでは詳細は省略するが、カートシステムが別ドメインになる場合は、Googleアナリティクス側ならびにショッピングカートシステム側でどのような設定が必要か、専門家に聞いて正しく実装と設定を行うようにしてほしい。

対応するeコマースのレポート

eコマース系のレポートの活用方法については次回詳しく解説する予定だが、ここでもトラッキングコードで指定した各変数がレポートのどこに該当するのかだけを示しておこう。

まず「id」は、[コンバージョン]>[eコマース]>[トランザクション]レポートにおけるディメンション「トランザクションID」(図5赤枠部分)として利用される。「affiliation」は直接目にすることはないが、セカンダリ ディメンション(図5青枠部分)などから利用することが可能で、「アフィリエーション」と表示されるディメンションだ。

「revenue」「shipping」「tax」は同レポートにおける「収益」「配送」「税金」の指標(図5緑枠部分)として集計される。

図5:[コンバージョン]>[eコマース]>[トランザクション]レポート
図5:[コンバージョン]>[eコマース]>[トランザクション]レポート

「name」「sku」「category」は前述したように[コンバージョン]>[eコマース]>[商品の販売状況]レポート上のディメンション「商品」「商品のSKU」「商品」(図6赤枠部分)に対応する。「price」と「quantity」は同レポートの各指標(図6青枠部分)の集計数値に利用される。

図6:[コンバージョン]>[eコマース]>[商品の販売状況]レポート
図6:[コンバージョン]>[eコマース]>[商品の販売状況]レポート

次回は、こうやって収集したeコマースのレポートをどのように見て、分析していくかを解説する。

◇◇◇

アクセス解析の基本的な知識や分析の型を、丸二日かけて座学と演習で学ぶアクセス解析ゼミナール(2017/11/14、11/21)申込受付中。詳細とお申し込みはこちらから

Googleアナリティクスを徹底的に使えるように、丸二日かけて座学で学ぶGoogleアナリティクスゼミナール(2017/12/13、12/20)申込受付中。詳細とお申し込みはこちらから

この記事が役に立ったらシェア!
tweet20はてなブックマークに追加
みんなが読んでるWeb担メルマガで、あなたも最新情報をチェック
  • SEOやアクセス解析のなどノウハウをゲット
  • 事例やインタビューも見逃さない
  • 要チェックのセミナー情報も届く
  • 編集長コラムを一足先に読める
日本赤十字社 東日本大震災 義援金募集
みんなが読んでるWeb担メルマガで、あなたも最新情報をチェック
  • SEOやアクセス解析のなどノウハウをゲット
  • 事例やインタビューも見逃さない
  • 要チェックのセミナー情報も届く
  • 編集長コラムを一足先に読める

Web業界の転職情報

もっと見る
Sponsored by

人気記事トップ10(過去7日間)

今日の用語

ローカルナビゲーション
サイト内のコーナーごとのナビゲーション。 サイト全体で共通して表示されるグ ... →用語集へ

連載/特集コーナーから探す

インフォメーション

Web担のメルマガを購読しませんか?
Web担の記事がコンパクトに毎週届くメールマガジン「Web担ウィークリー」は、10万人が読んでいる人気メルマガ。忙しいあなたの情報収集力をアップさせる強い味方で、お得な情報もいち早く入手できます。

Web担に広告を掲載しませんか?
購読者数10万人のメールマガジン広告をはじめとする広告サービスで、御社の認知向上やセミナー集客を強力にお手伝いいたします。

サイトマップ
RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]