対談・コラム

【2020年版】Google広告|動的リマーケティングタグの設定方法

Google広告で動的リマーケティングを実施するために必要なタグの設定方法について、GoogleさんはWebに様々なドキュメントを公開されており、これらを整理統合して理解することは、なかなか難しいですよね。本記事では、Googleタグマネージャーを導入済みのECサイト(小売業種のサイト)を例として、動的リマーケティングタグ設定の典型的な方法をご案内します。ECサイトさんに人気の「スマートショッピングキャンペーン」に必要なタグ設定についても、本記事に記載の方法で万全です。

  • 2020年7月現在、広告主サイトでのユーザーの行動に関する情報(ユーザーが閲覧したページ階層や商品ID等の情報)を、動的リマーケティングタグにセットする方法については、次の2種類のルールが存在しています。
    ・新しいルール:https://support.google.com/google-ads/answer/7305793
    ・従来型ルール:https://developers.google.com/adwords-remarketing-tag/parameters
    Googleさんいわく、どちらのルールに沿って設定しても、タグの機能に差は生まれないそうです。本記事では、より設定の簡単な、従来型ルールに沿った方法をご案内いたします。
  • 小売以外の業種(求人,不動産,旅行,教育など)のサイトさまについては、本記事に記載している小売業種向けのカスタムパラメータを、各業種別のカスタムパラメータに読み替えることで、本記事をご利用ください。

目次

  1. Googleタグマネージャーで7種類のリマーケティングタグの大枠を作成する
  2. HTMLから取得した商品ID,金額をGTM変数に格納して上記空欄にセットする
  3. リマーケティングタグが正常に発火していることを確認する

Googleタグマネージャーで7種類のリマーケティングタグの大枠を作成する

下記の【図表1】は、Google広告の動的リマーケティング(またはスマートショッピングキャンペーン)を実施するECサイトの、典型的なタグ設定例(Googleタグマネージャーのタグ一覧画面)です。

【図表1】Google動的リマーケティングを実施するECサイトで発火すべきタグ一覧(典型例):

  • 上記(8)(9)のタグは、Google広告を利用するサイトの多くに導入されている、コンバージョントラッキングタグとコンバージョンリンカータグです。動的リマーケティングを実施する場合にも発火させるケースがほとんどでしょう。
  • 上記(1)~(7)のタグは、動的リマーケティングを実施するために必要な、Google広告のリマーケティングタグであり、それぞれを異なるページ階層で発火させる必要があります。(1)~(7)の「タグの種類」は、いずれも「Google広告のリマーケティング」であり、7種類のタグの違いは、タグの中にセットするカスタムパラメータのみです。以下の【図表2】は、商品詳細ページで発火させるリマーケティングタグの設定例であり、カスタムパラメータとしては、ecomm_pagetype・ecomm_prodid・ecomm_totalvalueの3種類をセットします。【図表3】は、各ページ階層のリマーケティングタグで発火すべきカスタムパラメータの一覧です。

【図表2】Google動的リマーケティングを実施するECサイトの商品詳細ページで発火すべきリマケタグの例:

【図表3】ECサイトの各ページ階層のGoogle動的リマーケティングタグで発火すべきカスタムパラメータの例:

ページ階層 ecomm_pagetype ecomm_prodid ecomm_totalvalue
トップページ 固定値「home」 (不要) (不要)
カテゴリページ 固定値「category」 (不要) (不要)
検索結果ページ 固定値「searchresults」 (不要) (不要)
商品詳細ページ 固定値「product」 {{商品IDを返すGTM変数}}

※商品フィードのid列またはitem_group_id列にセットする商品IDを返します。

{{商品価格を返すGTM変数}}
カートページ 固定値「cart」 {{カートに入っている商品IDの配列を返すGTM変数}}

※商品フィードのid列またはitem_group_id列にセットする商品IDを返します。

{{カートに入っている商品の合計金額を返すGTM変数}}
購入完了ページ 固定値「purchase」 (不要) {{購入された商品の合計金額を返すGTM変数}}
その他のページ 固定値「other」 (不要) (不要)

ECサイトがGoogle動的リマーケティング(またはスマートショッピングキャンペーン)を実施するために発火すべきタグの全体像については、以上です。まずは、【図表2】と【図表3】をご覧いただきながら、Googleタグマネージャーで【図表1】の状態までの準備を進めます。ecomm_prodid・ecomm_totalvalueにセットする値({{商品IDを返すGTM変数}}など【図表3】の赤文字の5箇所)については、次のセクションでご案内いたしますので、ひとまず空欄にしておきます。

HTMLから取得した商品ID,金額をGTM変数に格納して上記空欄にセットする

前のセクションにおいて、動的リマーケティングタグ設定の大枠は完成しており、あとは残しておいた空欄5箇所を埋めるだけです(とはいえ、ここが動的リマーケティングタグ設定の本丸です)。次の3ステップで埋めることができます。

  1. ecomm_prodid・ecomm_totalvalueにセットしたい商品IDや金額を、各ページ階層のHTMLに出力する
  2. HTMLに出力した商品IDや金額を格納するためのGTM変数を作成する
  3. 作成したGTM変数を、リマーケティングタグのカスタムパラメータの空欄にセットする

ecomm_prodid・ecomm_totalvalueにセットしたい商品IDや金額を、各ページ階層のHTMLに出力する

各ページ階層(商品詳細ページ,カートページ,購入完了ページ)のHTMLに、下記のようなコードを出力します(畑岡大作さんが公開されているサンプルコードを参考させていただいております)。

商品詳細ページHTMLに出力するコード例:


<script>
window.dataLayer = window.dataLayer || [];
dataLayer.push({
  'gtm_product_id': 'ABC123',
  'gtm_product_value': 5500
});
</script>

  • カラーやサイズのバリエーションのある商品を販売されているECサイトが、Google動的リマーケティングを実施するためには、カラー×サイズの1バリエーションを1行とする商品フィードを準備し、Googleマーチャントセンターへ入稿する必要があります。例えば、4色×3サイズの展開のある商品は、商品フィードにおいて12行で書きあらわされ、id列には12種類の異なるバリエーションIDが、item_group_id列には12行において共通の商品グループIDがセットされます。複数のカラー×サイズのバリエーションを、1枚の商品詳細ページに掲載されているケースにおいては、上記コードのgtm_product_idに「商品フィードのitem_group_id列にセットする商品グループID」と同じ値をセットします。
  • カラーやサイズのバリエーションのない商品が掲載されている商品詳細ページにおいては、上記コードのgtm_product_idに「商品フィードのid列にセットする商品ID」と同じ値をセットします。
  • 上記コードのgtm_product_valueには、商品詳細ページに掲載されている商品の価格をセットします。

カートページHTMLに出力するコード例:


<script>
window.dataLayer = window.dataLayer || [];
dataLayer.push({
  'gtm_cart_ids': ['ABC123-red-S','ABC123-blue-M','ABC123-yellow-L'],
  'gtm_cart_value': 16500
});
</script>

  • 複数のカラー×サイズのバリエーションを1枚の商品詳細ページに掲載されているECサイトにおいても、カートに投入された商品のカラー×サイズのバリエーションは、特定されていることがほとんどです。したがって、上記コードのgtm_cart_idsには「商品フィードのid列にセットするバリエーションID」と同じ値をセットします。
  • カラー×サイズのない商品がカートに投入されている場合には、上記コードのgtm_cart_idに「商品フィードのid列にセットする商品ID」と同じ値をセットします。
  • 上記コードのgtm_cart_valueには、カートに投入されている商品の合計金額をセットします。

購入完了ページHTMLに出力するコード例:


<script>
window.dataLayer = window.dataLayer || [];
dataLayer.push({
  'gtm_purchase_value': 16500
});
</script>

  • 上記コードのgtm_purchase_valueには、購入された商品の合計金額をセットします。

HTMLに出力した商品IDや金額を格納するためのGTM変数を作成する

Googleタグマネージャーにおいて、下記キャプチャのようなGTM変数を作成すると、作成したGTM変数の中に、さきほどHTMLに出力した商品IDや金額を格納することができます。

上記キャプチャを参考に、次のような5個のGTM変数を作成します。作成したGTM変数は今後、Googleタグマネージャー内で、{{GTM変数名}}と書くことで(例えば{{product_id}}と書くことで)利用できるようになります。

GTM変数名の例
(上記キャプチャ左上の欄に入力)
データレイヤーの変数名
(さきほどHTMLに出力したとおりの変数名を入力)
product_id gtm_product_id
product_value gtm_product_value
cart_ids gtm_cart_ids
cart_value gtm_cart_value
purchase_value gtm_purchase_value

作成したGTM変数を、リマーケティングタグのカスタムパラメータの空欄にセットする

作成した5種類のGTM変数({{product_id}},{{product_value}},{{cart_ids}},{{cart_value}},{{purchase_value}})を、【図表2】で空欄にしておいたカスタムパラメータの値の欄(5箇所)に、それぞれセットします。Googleタグマネージャーによる、ECサイトのGoogle動的リマーケティングタグの設定作業は以上であり、プレビューモードで正常に発火していることを確認できたら公開します(発火確認の方法については後述)。

なお、本記事では、Webページに出力したデータレイヤー変数から商品IDや金額を取得する方法をご案内しましたが、Googleタグマネージャーで、Webページのどこから商品IDや金額を取得するかには他にも選択肢があり、いくつかを下表で比較しておきます(本記事に記載した方法は④です)。

商品IDや金額をWebページのどこから取得するか Webページに商品IDや金額を出力する大変さ GTMでWebページから商品IDや金額を抜き出す大変さ 備考
①ユーザー向けに表示している商品IDや金額 ゼロ 少しjavascriptを書く力が必要であり、非エンジニアには難しい(タグ設置支援業者さん等に頼むと特別料金がかかるケースが多い) サイト改修によりHTML構造やclass名などが変われば商品IDや金額を抜き出せなくなる場合がある
②構造化データにセットしている商品IDや金額(参考:Googleさんが公開されている、schema.orgの規格に則った商品ページのマークアップ方法 大(すでに出力済みであればゼロ) 少しjavascriptを書く力が必要であり、非エンジニアには難しい(タグ設置支援業者さん等に頼むと特別料金がかかるケースが多い)。山田良太さんが公開されているサンプルコードが役立つ。 新鮮な在庫情報や価格情報をGoogleへ伝える手段として、商品フィード(必須)と構造化データを併用することがベター(参考:商品アイテムの自動更新について
③Googleアナリティクスの拡張eコマース用データレイヤー変数にセットしている商品IDや金額(参考:拡張eコマースデベロッパーガイド 大(すでに出力済みであればゼロ) 少しjavascriptを書く力が必要であり、非エンジニアには難しい(タグ設置支援業者さん等に頼むと特別料金がかかるケースが多い)
④データレイヤー変数にセットしている商品IDや金額 小(すでに出力済みであればゼロ) 簡単 タグ設置支援業者さん等が採用する標準的な方法

リマーケティングタグが正常に発火していることを確認する

リマーケティングタグ発火のトリガーとして設定したページビューが発生し、リマーケティングタグが正常に発火すると、ブラウザからgoogleads.g.doubleclick.net宛てのリクエストが発生し、カスタムパラメータ(ecomm_pagetype=xxxとecomm_prodid=xxxとecomm_totalvalue=xxx)は、同URLに含まれる形でGoogleへ送信されます(同じリクエストが2本発生することは正常な動作です)。

下記のポイントを確認できればOKです。

  • 7種類のページ階層において、それぞれ想定通りのecomm_pagetype値(home,category,searchresults,product,cart,purchase,other)が送信される。
  • 商品詳細ページにおいて、閲覧中のページに掲載されている商品の商品ID(ecomm_prodid=xxx)と価格(ecomm_totalvalue=xxx)が送信される。
  • カートページにおいて、カートに入っている商品IDたち(ecomm_prodid=xxx,yyy,zzz)と、その合計金額(ecomm_totalvalue=xxx)が送信される。
  • 購入完了ページにおいて、購入した商品の合計金額(ecomm_totalvalue=xxx)が送信される。

[藤本 2020年7月30日公開]