LCL Engineers' Blog

夜行バス比較なび(高速バス比較)・格安移動・バスとりっぷを運営する LCLの開発者ブログ

DFP Key-Value ターゲティングを利用して、広告配信を制御する

Webエンジニアの森脇です。 今回は、DFPでの広告配信について紹介します。

DFPとは

DoubleClick for Publishers(DFP)は、Googleが提供している広告配信プラットフォームです。

多機能なので詳しくは、以下のドキュメントをご覧ください。

https://support.google.com/dfp_premium/answer/6022000?hl=ja&ref_topic=7519088

Key-Valueターゲティングとは

DFPでは地域・デバイス等の条件を、広告配信の条件として利用できますが、 サイト独自の条件(年齢、性別、コンテンツなど)は、DFPでは判断できません。 Key-Value ターゲティングを使用すると、DFPで判別できない独自の条件を定義できます。

たとえば、gender = male と定義すると、男性をターゲットとして配信制御ができます。この他にもサイト内での行動に合わせて、任意にKey/Valueを設定することも可能です。 なお、ユーザー個人を特定できるデータ(名前、住所、ユーザー ID など)をDFPへ渡すことは禁止されています。

本記事では、DFP管理画面の設定については、本記事では言及しませんので、以下のドキュメント等をご確認ください。

https://support.google.com/dfp_premium/answer/177381

Key/Valueの設定方法

JavaScriptで、Key/Valueを設定します。以下の例では、envというkeyに対して、productionを設定しています。開発環境の場合には、developmentを設定すれば、環境に応じた広告配信制御が可能です。

googletag.pubads().setTargeting('env', ["production"])

複数のkeyを設定することも可能です。

googletag.pubads().setTargeting('key1', ["value1"])
googletag.pubads().setTargeting('key2', ["value2"])

1 つのキーに複数の値を設定するには、カンマ区切りで設定します。

googletag.pubads().setTargeting("key",["value1","value2");

ページを更新せずに広告を再読み込みする場合

Ajaxを利用した等のページでは、ページを更新せずに広告を再読込したいときがあります。 その場合は、key/valueをセットして、refresh関数を呼び出すことで再読込することで、DFPに値を送信できます。

googletag.cmd.push(function() {
  googletag.pubads().setTargeting('key1', ["value1"])
  googletag.pubads().refresh();   
});

まとめ

エンジニアが広告配信にどこまで関わるかは、各社の状況によって異なると思いますが、 どのような仕組みで広告配信が行われているか知っておくと、色々な課題の解決に役立ちます。

広告周りは用語が難解で、普段から携わっていないと取っ付きにくいですが、公式ドキュメントを読めば理解できるため、今後の定期的にキャッチアップしていきたいと思います。