GA4 eコマース設定ガイド|データレイヤー設計からGTM実装・レポート活用まで

GA4 eコマース計測の全体像

GA4のeコマース計測は、ユーザーの購買行動をファネル(段階)ごとに追跡する仕組みです。「商品を見た」「カートに入れた」「決済に進んだ」「購入した」といった各ステップをイベントとして記録します。

これらのイベントを正しく実装すると、GA4の収益化レポートが自動で生成されます。どのステップでユーザーが離脱しているか、どの商品が収益に貢献しているかを把握できるようになります。

eコマース計測の構成要素は3つです。

eコマース計測の構成要素データレイヤーWebサイト側で商品情報や購入情報をJavaScriptの変数として出力GTMデータレイヤーの値をGA4イベントタグにマッピングGA4受信したイベントをeコマースレポートとして自動集計・表示push送信実装の流れ1. 計測するイベントを選定 → 2. データレイヤーをサイトに実装→ 3. GTMでタグ・トリガー・変数を設定 → 4. プレビューで検証 → 5. 公開

主要なeコマースイベント

GA4のeコマース計測には、Googleが定義した推奨イベントを使用します。独自のイベント名で実装すると、eコマースレポートに反映されません。以下の推奨イベントを正確に実装することが前提です。

購買ファネルのイベント一覧

イベント名タイミング必須パラメータ
view_item商品詳細ページの表示items(商品情報の配列)
view_item_list商品一覧ページの表示items, item_list_name
add_to_cartカートに商品を追加items, value, currency
remove_from_cartカートから商品を削除items, value, currency
view_cartカートページの表示items, value, currency
begin_checkout決済プロセスの開始items, value, currency
add_shipping_info配送情報の入力完了items, shipping_tier
add_payment_info支払い情報の入力完了items, payment_type
purchase購入完了transaction_id, items, value, currency
refund返金処理transaction_id, items, value, currency

すべてのイベントを一度に実装する必要はありません。まずview_itemadd_to_cartbegin_checkoutpurchaseの4つで基本ファネルを構築し、段階的に拡張するのが現実的です。

運用メモ
purchaseイベントのtransaction_idは必須です。同一のtransaction_idが重複して送信された場合、GA4は自動的に2件目以降を除外します。決済完了ページのリロードによる二重計測を防ぐ仕組みですが、そもそもサーバーサイドでの二重送信防止も合わせて実装してください。

データレイヤーの設計

データレイヤーは、WebサイトとGTMの間でデータを受け渡す標準的な仕組みです。サイト側でJavaScriptのdataLayer変数に商品情報を格納し、GTMがその値を読み取ってGA4に送信します。

データレイヤーの基本構造

GA4のeコマースイベントでは、items配列で商品情報を渡します。以下はpurchaseイベントの例です。

dataLayer.push({ ecommerce: null }); // 直前のecommerceデータをクリア
dataLayer.push({
  event: "purchase",
  ecommerce: {
    transaction_id: "T-20260621-001",
    value: 15800,
    currency: "JPY",
    tax: 1436,
    shipping: 550,
    items: [
      {
        item_id: "SKU-001",
        item_name: "商品名A",
        item_category: "カテゴリ1",
        price: 7900,
        quantity: 2
      }
    ]
  }
});

itemsパラメータの主要フィールド

フィールド説明必須
item_id商品のSKUや管理IDはい
item_name商品名はい
item_category第1階層のカテゴリいいえ
item_category2〜5第2〜5階層のカテゴリいいえ
price単価いいえ
quantity数量いいえ
item_brandブランド名いいえ
item_variantバリエーション(色・サイズ等)いいえ
discount割引額いいえ

ecommerceオブジェクトのクリアが必要な理由

データレイヤーは配列として蓄積されるため、前のイベントで設定したecommerceオブジェクトが残り続けます。新しいイベントをpushする直前にecommerce: nullを送信し、古いデータを明示的にクリアしてください。

このクリア処理を省略すると、意図しない商品データが混在する原因になります。

運用メモ
item_categoryは最大5階層まで設定可能です。たとえば「メンズ > アウター > ジャケット > デニム」のような商品分類をそのまま反映できます。ただし、階層が深すぎるとレポートでの分析が煩雑になるため、実務では2〜3階層程度に収めるのが扱いやすいです。

GTM経由での設定手順

データレイヤーの実装が完了したら、GTMでイベントをGA4に送信する設定を行います。ここではpurchaseイベントの設定を例に手順を示します。

ステップ1:データレイヤー変数の作成

GTMの「変数」セクションで、データレイヤーの値を取得するための変数を作成します。

変数名変数の種類データレイヤーの変数名
dlv - ecommerce.transaction_idデータレイヤーの変数ecommerce.transaction_id
dlv - ecommerce.valueデータレイヤーの変数ecommerce.value
dlv - ecommerce.currencyデータレイヤーの変数ecommerce.currency
dlv - ecommerce.itemsデータレイヤーの変数ecommerce.items

ステップ2:トリガーの作成

「トリガー」セクションで、データレイヤーのpushをキャッチするトリガーを作成します。

  • トリガーの種類:カスタムイベント
  • イベント名:purchase(データレイヤーのevent値と一致させる)
  • 発火条件:すべてのカスタムイベント

ステップ3:GA4イベントタグの作成

「タグ」セクションで、GA4イベントタグを作成します。

  1. タグの種類:Googleアナリティクス - GA4イベント
  2. 測定ID:対象プロパティの測定ID(G-XXXXXXXXXX)
  3. イベント名:purchase
  4. イベントパラメータに各変数をマッピング
  5. トリガーにステップ2で作成したトリガーを指定

ステップ4:プレビューで検証

GTMのプレビューモードで対象サイトにアクセスし、購入フローを実行します。確認するポイントは以下のとおりです。

  • タグが正しいタイミングで発火しているか
  • パラメータに意図した値が入っているか
  • GA4のリアルタイムレポートにイベントが表示されるか

運用メモ
プレビューモードでの検証は、本番公開前の最重要ステップです。特にitems配列の中身を必ず確認してください。item_idやpriceが空(undefined)のまま本番に出すと、eコマースレポートのデータが不完全になります。検証環境がない場合は、少なくとも1件のテスト購入で全パラメータの受信を確認します。

eコマースレポートの読み方

eコマースイベントを正しく実装すると、GA4の「収益化」セクションに以下のレポートが自動生成されます。

収益化レポートの主要画面

GA4の左メニュー「レポート」→「収益化」から、3つのレポートにアクセスできます。

GA4 収益化レポートの構成概要合計収益購入者数ユーザーあたりの収益購入あたりの収益全体の売上傾向を把握eコマース購入数商品別の売上・数量商品カテゴリ別集計商品リスト別実績プロモーション実績商品単位の詳細分析購入経路ファネルのステップ別通過率・離脱率ステップ間の遷移数放棄率の推移ファネルのボトルネック特定レポートの活用ポイント概要:日次の売上推移と購入者数の変動を確認。異常値の早期発見に活用eコマース購入数:売れ筋商品とカテゴリ別の収益構成を把握購入経路:カート追加→決済→購入の各ステップでの離脱率を改善指標に活用

購入経路レポートの読み方

購入経路レポートでは、以下のファネルが可視化されます。

  1. セッション開始 → 商品閲覧数
  2. view_item → カート追加数
  3. add_to_cart → 決済開始数
  4. begin_checkout → 購入完了数
  5. purchase

各ステップ間の離脱率を確認し、最も離脱の多いステップを特定します。たとえばadd_to_cartからbegin_checkoutへの遷移率が低い場合、カートページのUI改善や送料表示の見直しが有効な施策になります。

レポートで確認すべき主要指標

指標意味改善のヒント
カート追加率商品閲覧からカート追加への遷移率商品ページの訴求力・価格設定
カート放棄率カート追加から購入に至らなかった割合送料・決済手段・フォーム設計
購入転換率セッションに対する購入の割合サイト全体の導線設計
平均注文単価1購入あたりの平均金額アップセル・クロスセル施策

運用メモ
カート放棄率が高い場合、リマーケティングと組み合わせた改善が効果的です。GA4のオーディエンス機能で「add_to_cartしたがpurchaseしていないユーザー」をセグメント化し、Google広告やMeta広告でリマーケティングリストとして活用できます。

よくある実装ミスと対策

currencyパラメータの欠落

valueを送っていてもcurrencyが欠けていると、GA4の収益データに反映されません。日本円の場合はcurrency: "JPY"を必ず含めてください。

items配列が空

データレイヤーのpush時にitems配列が空の状態で送信されるケースがあります。商品データの取得が非同期処理の場合、レンダリング完了前にpushが実行されていないか確認してください。

transaction_idの重複

テスト環境と本番環境で同じtransaction_idを使い回すと、本番データが重複排除されることがあります。テスト用と本番用でtransaction_idの体系を分けてください。

イベント名のスペルミス

purchasepurhcaseと入力しても、カスタムイベントとしては記録されます。しかしGA4はeコマースイベントとして認識しないため、収益化レポートには一切反映されません。推奨イベント名はコピー&ペーストで入力してください。

関連記事

SIGNALZ

SIGNALZ

運用型広告の実務経験をもとに、体系的なナレッジを発信しています。

この記事について感想やご質問を送れます

誤りの指摘、補足情報、ご質問など、お気軽にどうぞ。