Google サイト運営タグを作成する

GPT でターゲティングとサイズを設定する

GPT で広告ユニットを指定する

広告スロットごとに広告ユニットを指定できます。指定した広告ユニット(またはその広告ユニットが属するプレースメント)をターゲットに設定している広告申込情報が、該当タグへの配信候補となります。

アド マネージャーの広告枠構造、広告ユニットの階層、広告ユニットでターゲティングが継承される仕組みについて詳しくは、広告枠の概要をご覧ください。

GPT で広告サイズを指定する

タグでは、各広告スロットに配信できるクリエイティブのサイズを指定する必要があります。シングルサイズの広告スロットでは、クリエイティブがレンダリングされる <div> 要素のサイズを定義することもできます。これにより、クリエイティブが非同期でレンダリングされる場合、<div> 要素の後に続く要素が読み込まれた後に、ページ上の他の要素が移動しないようにすることができます。同期モードで <div> タグのサイズを指定しない場合、広告スロットはクリエイティブのサイズに応じて自動的に拡大または縮小します。ページのレイアウトは、広告スロット用のスペースを空けるために変更されます。

クリエイティブのサイズは googletag.defineSlot() 関数で指定します。広告スロットに複数のサイズを配信するには、カンマ区切りのリストを使用できます。例についてはこちらをご覧ください。広告タグに含めることができるサイズの数に制限はありませんが、タグの種類に応じて、リクエスト URL に指定できる文字数には上限があります。詳細

GPT で Key-Value ターゲティングを使用する

Key-Value を使用すると、広告ユニットよりも細かいレベルで広告のターゲットを設定できます。詳しくは、Key-Value についてをご覧ください。

Key-Value ターゲティングを使用する際は注意が必要です。契約条件に基づき、Google が個人情報として使用または認識できる情報を Google に渡すことはできません。

各広告呼び出しでは、setTargeting() 関数を使用してキーを渡すことができます。それぞれのキーに値を指定できます。各広告呼び出しでは、下記のとおりネットワークのニーズに応じて、スロットレベルまたはページレベルのカスタム ターゲティング パラメータを使用できます。

  • スロットレベルのカスタム ターゲティング: ページ上の個々の広告スロットに対して Key-Value の属性を設定できます。スロットレベルのターゲティングを設定するには、.setTargeting を使用します。例については Google サイト運営者タグの例をご覧ください。

    通常、カスタム ターゲティングはスロットレベルで行うことをおすすめします。ページ全体で Key-Value が同じ場合でも、個々のスロットで異なる場合でも、あらゆるターゲティングの状況に対応できます。

  • ページレベルのカスタム ターゲティング: このターゲティングでは、ページ上のすべての広告スロットを対象にカスタムの属性を設定できます。ページレベルのターゲティングを設定するには、googletag.pubads().setTargeting を使用します。例については Google サイト運営者タグの例をご覧ください。

    ページレベルでターゲットを設定すると、タグ内のコードを減らすことができ、すべての広告スロットに同じ Key-Value 属性の組み合わせを設定できます。たとえば、ページレベルのカスタム ターゲティングでは、Key-Value ペア gender=m をすべての広告スロットに設定することができます。

Key-Value をタグに渡すことにより、指定した Key-Value ペアをターゲットとする広告申込情報をそのタグに配信できます。たとえば、カスタム Key-Value gender = male.setTargeting('gender', 'male'); としてタグに渡すと、gender = male をターゲットとする広告申込情報が配信候補となります(他のすべての条件が一致すると想定)。

複数の属性または値のターゲットを 1 つのキーに設定する

複数の属性をターゲットに設定したり 1 つのキーに複数のターゲティング値を関連付けたりするには、以下の手順を参考にするか、Google サイト運営者タグの例全体をご覧ください。

スロットレベルまたはページレベルで設定されている Key-Value ターゲティングの場合

複数の Key-Value 属性を定義するには、setTargeting を複数回呼び出します。

     .setTargeting("gender", "male")

     .setTargeting("age", "20-30");

複数の値を 1 つのキーに関連付けるには、次の形式を使用します。

     ("key", ["value1", "value2", "value3"])

ページレベルで設定されている Key-Value は、すべての広告スロットに継承されます。

Key-Value を GPT 広告タグに含めるときのルールと制限事項

Key-Value を GPT 広告タグに挿入する際のガイドラインを以下に示します。

  • キーの先頭に数字は使用できません。

  • Key-Value のキーに特殊文字 " ' , = ! + # * ~ ; ^ ( ) < > [ ] を使用することはできません。

  • Key-Value の値に特殊文字 " ' , = ! + # * ~ ; ^ ( ) < > [ ] を使用することはできません。

  • Key-Value ではスペースを使用できます。たとえば、.setTargeting('region',['middle east','southeast asia']); のように指定できます。

  • 広告タグに含めることができる Key-Value の数に制限はありませんが、タグの種類に応じて、リクエスト URL に指定できる文字数には上限があります。詳細

文字が安全でないとされる理由はさまざまですが、その一部を以下に挙げます。

  • 文字 ? : @ は HTTP の URL で特別な意味を持つ文字で、Key-Value に含めると広告リクエストが中断されます。

  • 文字 ; / & ; は、アド マネージャー広告タグ内で特別な意味を表す文字として予約されており、それぞれの目的にのみ使用できます。

  • 引用符(")は URL を区切るために使われます。

  • 文字 # は、URL と、URL の後に続く文字列 / アンカー ID を区切るために使われます。

  • 文字 % は他の文字のエンコードに使われます。

  • { } | ^ ~ [ ] \ といったその他の文字は、URL の一部としてウェブ経由で送信された場合、ゲートウェイやその他トランスポート エージェントにより変更されることがあるため、安全ではありません。

  • Key-Value の値を空(例: cat=、cat=" "、cat=' ')にすることはできません。値を意図的に空白にする場合は、null または空白を表すその他の値を入力してください(例: cat=null)。

  • Key-Value に大文字と小文字の区別はありません。小文字で入力した語と大文字で入力した語は同じ語として扱われます。

Key-Value を渡す GPT タグの例をご覧ください。
<head>

 <script type="text/javascript">
   var googletag = googletag || {};
   googletag.cmd = googletag.cmd || [];
   (function() {
     var gads = document.createElement("script");
     gads.async = true;
     gads.type = "text/javascript";
     var useSSL = "https:" == document.location.protocol;
     gads.src = (useSSL ? "https:" : "http:") + "//www.googletagservices.com/tag/js/gpt.js";
     var node =document.getElementsByTagName("script")[0];
     node.parentNode.insertBefore(gads, node);
    })();
</script>

 <script type="text/javascript">
   googletag.cmd.push(function() {
     var adSlot1 = googletag.defineSlot('/6355419/Travel/Europe/France/Paris',[300, 250], "banner1"); // 最初のスロットをスロットレベルの Key-Value とともに追加する

     adSlot1.addService(googletag.pubads());
     adSlot1.setTargeting("pos", ["atf"]);

   var adSlot2 = googletag.defineSlot('/6355419/Travel/Europe/France/Paris',[300, 250], "banner2"); // 2 つ目のスロットをスロットレベルの Key-Value とともに追加する

   adSlot2.addService(googletag.pubads());
   adSlot2.setTargeting("position", ["bottom"]);

   googletag.pubads().setTargeting("articletopic","basketball"); // ページ全体(ページ上のすべてのスロット)に適用する Key-Value を追加する

     googletag.enableServices();
   });
 </script>
</head>

広告スロットの定義と広告選択の順序

複数の広告スロットがあるページにタグを設定する場合、順序は重要です。*

GPT を使用する、複数サイズの広告スロットがあるページでは、アド マネージャーによって広告が選択されて埋められる順序でヘッダー内のスロットを宣言します。

広告が順次選択されるように広告スロットを定義する

上記の広告申込情報でクリエイティブ配信を [すべて] に設定し、GPT を使用してターゲットに設定したページで、広告スロットが次の順序で宣言されている場合を考えてみます。

googletag.defineSlot("/1234567/travel", [[300, 600], [300, 250]], "div-gpt-ad-1");
googletag.defineSlot("/1234567/travel", [300, 250], "div-gpt-ad-2");
googletag.defineSlot("/1234567/travel", [728, 90], "div-gpt-ad-3");

この定義を使用して、広告スロットは次のように設定されています。

スロット 1: [[300, 600], [300, 250]]

スロット 2: [300, 250]

スロット 3: [728, 90]

広告リクエストが届くと、アド マネージャーは GPT で記述されている順序でクリエイティブを広告スロットに割り当てようとします。上記の場合は、広告申込情報で最初に一致する 300x250 ピクセルのクリエイティブをスロット 1 に割り当てて、次にスロット 2 に割り当てるクリエイティブを探します。しかし、300x250 ピクセルのクリエイティブはすでに使用されているため、割り当てることのできるクリエイティブがありません。この場合、アド マネージャーは広告の順次選択のロジックに沿って、広告申込情報のクリエイティブをすべて配信することはできないと判定し、どのクリエイティブも配信しないことになります。

ページに正しく配信するには、広告スロットを次のように宣言する必要があります。

googletag.defineSlot("/1234567/travel", [300, 250], "div-gpt-ad-2");
googletag.defineSlot("/1234567/travel", [[300, 600], [300, 250]], "div-gpt-ad-1");
googletag.defineSlot("/1234567/travel", [728, 90], "div-gpt-ad-3");

* 順序指定は GPT を使用する場合に必ず適用され、広告申込情報のタイプや優先度によって変わることはありません。

クリエイティブのレンダリング時に要素が移動しないように <div> サイズを定義する

サイズを定義するには、広告を保持する &lt;div&gt; 要素の「style」属性を使用する必要があります。例についてはこちらをご覧ください。

この属性はシングルサイズの広告リクエストのみに使用することをおすすめします。マルチサイズの広告リクエストを作成する場合は、クリエイティブが間違って切り取られないように、最も縦に長いクリエイティブの高さと、最も横に長いクリエイティブの幅を設定する必要があります。

ページ外スロットを定義する

ページ外の広告スロットを指定するには、[タグを作成] ウィンドウで [ページ外] チェックボックスをオンにします。

この情報は役に立ちましたか?
改善できる点がありましたらお聞かせください。