
Facebookのダイナミック広告は、Googleのショッピング広告や動的リマーケティング同様、データフィードを使用して動的な広告を配信できる機能です。
ユーザーの閲覧履歴に基づいて関連性の高い商品を訴求するリターケティング配信だけでなく、サイト未訪問ユーザーに対しても関連性が高いと思われる商品を訴求できるため、上手く使えば新規ユーザーの獲得拡大も期待できます。
今回はこのFacebookダイナミック広告の仕組みと作成方法、成果を伸ばすためのターゲティング設定までを解説します。


Facebookのダイナミック広告とは
Facebookのダイナミック広告とは、Facebookビジネスマネージャへアップロードした製品カタログ(Googleマーチャントセンターでいう商品フィード)と、ユーザーの閲覧履歴や属性を紐づけることで、各ユーザーと関連性の高い製品を画像付きで広告配信できる手法です。
閲覧履歴・居住地・年齢・性別・つながり・興味関心などのユーザー情報は、ウェブサイトへ実装するFacebookピクセルとFacebookのログイン情報によって集められています。
Facebook広告は、Facebookのログイン情報によって「人」単位でユーザーをターゲティングできるクロスデバイス配信が可能であるため、例えばPCで商品を閲覧したことがあるユーザーに対して、後日スマートフォンのFacebookアプリのニュースフィードへ閲覧履歴に基づくダイナミック広告を配信することが可能となります。
ダイナミック広告を活用するメリット
ダイナミック広告はユーザーの閲覧履歴に基づいて動的な広告を配信できるため、大きく分けて下記3点のメリットがあります。
①コンバージョン率の向上が期待できる
ダイナミック広告は、ターゲットと関連性が高いと判断された商品のページへ誘導するので、静的な広告よりもコンバージョン率が向上する傾向にあります。
ユーザーを商品ページへ直接誘導できることは、購入までのステップが少なくて済むという点でも、コンバージョン率の向上が期待できます。
②Facebookの広告オークションで関連度の高い広告と判断されやすいため、配信効率が良い
ダイナミック広告はユーザーの閲覧履歴等の情報を基にして、適切で新鮮なクリエイティブを配信できるため、Facebookの広告オークションで関連度の高い広告と判断される傾向にあります。
Facebook広告では、総入札額と呼ばれる指標が広告オークションで使用されますが、この総入札額は「入札額×広告の質と関連度×推定アクション率」で算出されるため、広告の関連度が高いと安い入札額でも配信量を確保することができます。その点ダイナミック広告は通常のリンク広告と比較して配信効率の良い広告と言えます。
※参考:Facebook広告の関連度スコア | Facebook for Business
③クリエイティブを作成する労力を減らせる
一度の広告作成で、複数の(ビジネスによっては膨大な)製品を宣伝できるため、通常のリンク広告で複数の製品を宣伝しようとするより遥かにクリエイティブ作成の時間を削減できます。
通常のリンク広告では、コンバージョン率を改善するため一人一人のユーザーに合わせてクリエイティブを作成することは現実的ではありませんが、ダイナミック広告では少ない労力でそれが可能です。
ダイナミック広告を作成するための準備
ダイナミック広告を作成するためには、下記2点の準備作業が必要となります。
- 製品情報を広告に自動反映させるために必要な製品カタログを作成する
- ユーザーの行動をトラッキングするFacebookピクセルをカスタマイズ&実装する
製品カタログを作成する
製品カタログとは、宣伝したい製品の名称や価格、画像等の情報が記載されている製品フィード(Googleマーチャントセンターで言うところの商品フィード)が格納されるコンテナのようなものです。
つまり、製品カタログを作成するためには、中身となる製品フィードをまずは作成する必要があります。
製品フィードの作成
Facebookの製品フィードとして、Googleマーチャントセンターの商品フィードを使うことが出来るため、既にGoogleショッピング広告を利用されている方は、そのデータを転用することができます。
※本記事ではGoogleマーチャントセンターの商品フィードを転用して製品フィードを作成する場合で話を進めていきますので、商品フィードを保有していない方については、下記URLを参考にして、是非作成してみてください。
参考:【2016年版】今日から始めるGoogle アドワーズ ショッピング広告、スタートアップガイド
また、Googleの商品フィードを転用する場合は次の点に注意が必要です。
Facebookの製品フィードの列名(Google 商品フィードでは属性名)は英語で記入する必要がある
Google商品フィードでは列名が日本語でも使えるため、列名が日本語の商品フィードを使っている場合は、英語の列名に修正をする必要があります。
必須項目
Facebookの製品フィードで必須となる上記項目は、Googleの商品フィードでも必須になるため、これを転用する場合は基本的に全てデータが埋まっている状態になっています。ただし、Facebookの製品フィード固有の要件として、[image_link]で指定する製品画像で必要とされる解像度が500×500ピクセルとなっており、Googleの商品フィードの最小要件100×100ピクセル(ファッションでは250×250)以上と異なるため、既にGoogleの商品フィードで使用している画像を確認して、この条件を満たすような画像情報を用意することが望ましいです。
参考:ダイナミック広告には、使用する画像はどのくらいのサイズが必要? | Facebookヘルプセンター
上記では必須項目のみを紹介しておりますが、セール価格やカラー、サイズ、送料などの任意項目も活用が推奨されています。フィードの情報量を増やすことでレコメンド精度の向上も期待できるため、可能な限り多くの項目を使用すると良いでしょう。
トラッキングパラメーターを削除する
トラッキングパラメーターを広告側で付与させる場合は、[link]列でセットしたURLから該当するトラッキングパラメーター部分を削除します。
製品フィードのアップロード
製品フィードの準備が完了したら、製品フィードをアップロードして製品カタログを作成していきます。
①まず、広告マネージャーより「製品カタログ」を開きます。
②「製品フィード」を選択し、③「製品フィードを追加」をクリックします
④にはフィード名を入力し、⑤では通貨を選択します。⑥アップロードタイプで「シングルアップロード」を選択します
※本記事では製品フィードがローカル端末上にある場合の例としております、FTPサーバー上などに保存されている場合は「定期アップロードを設定」してURLや認証情報を入力します
⑦「ファイルを選択」で作成済みの製品フィードを選択し、「次へ」を押して、無事アップロード完了となれば製品カタログの作成は終了です。
補足:製品セットについて
製品カタログの作成については、製品フィードをアップロードできれば一旦は完了となりますが、その他細かな調整として「製品セット」についても解説しておきます。
製品セットを活用すると、製品カタログの中から、設定した条件と合致する製品情報だけを集めてグループ化することができます。例えば利益率の低い製品の製品セットを構成して広告配信しないなどの調整が可能になります。
詳細な設定方法は割愛いたしますが、製品セットは、広告マネージャーの「製品カタログ」>「製品セット」より作成可能で、製品フィードで記載されている価格や商品名に対してフィルターを設定することで、製品を条件別でグルーピングすることができます。
Facebookピクセルをカスタマイズし、実装する
Facebookピクセルとは、広告配信の測定、最適化のためウェブサイトへ実装するJavascriptコードです。
Facebookピクセルは、ウェブサイト上の全てのページへ実装する必要のある「ベースコード」と、商品閲覧ページや購入完了サンクスページなどへ実装し、ユーザーのサイト内行動を追跡するための「イベントコード」の2種類があります。
ダイナミック広告では、ユーザーの閲覧履歴を基として関連性の高い商品を広告として訴求するため、ユーザーのサイト内行動を追跡するためのイベントコードの実装が必須となります。
具体的には下記3種類のページへ、イベントコードを実装する必要があります。
- 商品詳細ページ|ユーザーが閲覧した商品情報を取得
- カートページ|ユーザーがカートに追加した商品情報、点数、合計価格などを取得
- 購入完了ページ|ユーザーが購入した商品情報、点数、合計価格などを取得
また、ダイナミック広告は製品カタログの最も関連性の高い製品を表示させるために、イベントコードから製品IDや商品名・価格などの製品情報も取得しなくてはなりません。そのため、製品情報が動的に挿入されるようイベントコードをカスタマイズする必要があります。
つまり、ダイナミック広告を配信するためには、ベースコード+カスタマイズしたイベントコードを、前述した3種類のページへ実装する必要があるということです。
Facebook広告を既に導入されている方は、ベースコードについては実装済みだと思いますので、今回はダイナミック広告を配信するためのイベントコードのカスタマイズ&実装方法についてのみ解説していきます。
イベントコードを用意する
まず、カスタマイズするイベントコードを用意します。①広告マネージャーより「ピクセル」をクリックします。
②右上の「設定する」をクリックします。
③「自分でコードをインストール」を選択します。
続いてベースコードをコピーできるページが表示されますが、ここでは無視して④「次へ」を選択すると、イベントコードをコピーできるページへと移ります。
⑤トラッキングしたいイベントを選択すると、対応したコードをカスタマイズする事ができます。今回カスタマイズが必要となる対象のイベントコードは「コンテンツビュー」「カートに追加」「購入」になります。
次より、各イベントコードをカスタマイズする手順を解説していきます。
商品詳細ページへ実装するFacebookピクセルのカスタマイズ方法
商品詳細ページに実装するイベントコード「コンテンツビュー」のカスタマイズ方法を解説します。
①「コンテンツビュー」をクリックしたら、続いて②「別のパラメーターを追加」をクリックし、さらに③「コンテンツID」をクリックします。②と③を繰り返し「コンテンツタイプ」もクリックします。
続いて、パラメーターを入力していきます。各パラメーターの詳細は次のとおりです。
- コンバージョン値
商品の価格が動的に出力されるよう、コード記述します。各Webサイトによって出力方法が異なるので、記述すべきコードについてはサーバー管理者に確認をしてください。 注意点としては、アポストロフィー「’」で値が括られるように記述しなくてはならないことです。 - 通貨
日本円の場合は「‘JPY’」と記述します。 - コンテンツID
製品フィードで指定した製品IDが動的に出力されるよう、コードを記述します。コンバージョン値欄と同様に、記述すべきコードについてはサーバー管理者に確認をしてください。注意点としては、製品IDは半角大括弧「[ ]」で囲み、その上でアポストロフィー「’」でも囲む必要があります。 - コンテンツタイプ
「’product’」または「’product_group’」を記述します。
今回紹介した製品フィードの必須項目のみで製品カタログを作成している場合は「product」を記述すれば問題ありません。「‘product_group‘」を記述するのは、製品フィード内で「items_group_id」の値が一つでもある場合です。「items_group_id」とは、Googleマーチャントセンターの商品フィードで言うところの「商品グループID」のことです。
ここまでの手順でカスタマイズしたイベントコードを、商品詳細ページの</head>タグの下へ設置、もしくは下記の通りベースコード内へ設定します。
※黒い文字の部分がベースコードで、赤い文字の部分が挿入したイベントコード「コンテンツビュー」です。青い文字の部分は個別のFacebookピクセルIDになります。
カートページへ実装するFacebookピクセルのカスタマイズ方法
カートページに実装するイベントコード「コンテンツビュー」のカスタマイズ方法を解説します。
①~③の手順については商品詳細ページと同じになります。
また、イベントパラメータの記述内容も商品詳細ページと同様になりますが、「コンバージョン値」と「コンテンツID」欄については下記を考慮する必要があります。
- コンバージョン値
動的に出力される価格は、カート内に入っている商品の合計とする必要があります。 - コンテンツID
カートに商品が複数個入っている場合は、[‘ABC123’, ‘XYZ789’] といったように、カートに含まれる商品の製品IDをカンマ「,」で区切り、全てが書き出されるようにします。
ここまでの手順でカスタマイズしたイベントコードを、カートページの</head>タグの下へ設置、もしくは下記の通りベースコード内へ設定します。
※黒い文字の部分がベースコードで、赤い文字の部分が挿入したイベントコード「カートに追加」です。青い文字の部分は個別のFacebookピクセルIDになります。
購入完了ページへ実装するFacebookピクセルのカスタマイズ方法
イベントコード「購入」のカスタマイズ方法を解説します。
①~③の手順については商品詳細ページと同じになります。
イベントパラメータの記述内容も「カートページ」同様で、「コンバージョン値」欄にはカートに入れられた商品の合計価格、複数の製品IDがカートに含まれていた場合の「コンテンツID」はカンマ「,」で区切る必要があります。
イベントコードをカスタマイズしたら、購入完了ページの</head>タグの下へ設置、もしくは下記の通りベースコード内へ設定します。
※黒い文字の部分がベースコードで、赤い文字の部分が挿入したイベントコード「購入」です。青い文字の部分は個別のFacebookピクセルIDになります。
補足:ASPカートを利用したサイトにイベントコードを実装する場合
イベントコードには商品IDや価格など動的な値を出力する必要が有るため、ASPカートを利用している場合は前述で紹介した値を動的に出力出来る機能を備えている必要があります。
例えば、フューチャーショップ2というカートASPカートであれば、動的な値を挿入する箇所に「$GOODS_NO$」と記述することで、製品IDが動的に出力されるようになっています。記述法はASPカートによって異なるので、詳細は各ASPカートのマニュアル等を参照ください。
③カスタマイズしたイベントコードの動作を確認する
イベントコードを設置できたら、Facebookピクセルが正しく動いているか確認をしましょう。
Facebook社がGoogle Chrome向けに「Facebook Pixel Helper」という拡張機能を公開しており、Facebookピクセルの動作確認におすすめです。この拡張機能を利用すると、Facebookピクセルに対して値を正しく受け渡せているかまで把握できます。
参考:Facebook Pixel Helper – Chrome ウェブストア
④合算イベント測定を設定する
合算イベント測定とはiOS14.5以降のデバイスの利用者からのウェブイベントとアプリイベントの測定を可能にするプロトコルです。
iOS14.5のリリースに伴い、App Storeで公開されているアプリは利用者にトラッキングの許可を求めるようになりました。
トラッキングの許可をしなかったユーザー(オプトアウトユーザー)から取得できるデータは極端に減少してしまい、広告配信において最適化に大きな影響を与えます。
そこでMeta社が提供している最低限のトラッキングをできるようにした機能が合算イベント測定となっています。
最適化が必須のダイナミック広告においては、設定しない理由がない機能となっているためぜひ設定を行いましょう。
設定方法はこちら↓
ダイナミック広告の作成方法と成果を伸ばすためのターゲティング設定
製品カタログの作成、Facebookピクセルの実装、動作確認まで完了したら、いよいよダイナミック広告の作成へ移ります。
Facebook広告では、想定されるコンバージョン率の高さによって、訪問ユーザー>類似ユーザー>商材に関心がありそうなユーザーの順序で、ターゲット層を徐々に拡大していくケースが多いです。ダイナミック広告もリターゲティング配信から始めるケースが多いと思いますが、公式ヘルプ※では配信の拡大について、類似ユーザーの活用は推奨されておらず、デモグラフィックなど幅広いターゲット層を設定して拡大していくことが推奨されています。
幅広いターゲット層にリーチするには、広告のターゲットを年齢、性別、地域に基づいて設定します。ウェブサイトのカスタムオーディエンスがあれば、ウェブサイトのビジターやウェブサイトで特定のアクションを取った人を含めたり除外することもできます。最高のパフォーマンスを得るには、ウェブサイトで交流した一部の人々は含めて、製品カタログ内の商品を最近購入した人々は除外することをおすすめします。
また、最近ではトラッキングの制限があるなかでFacebook・Instagramのアプリ内で制限なく取得できるシグナルを活用したカスタムオーディエンスの活用例も増えています。
それぞれのメリットを踏まえ、課題に合わせたターゲティング設定を行いましょう。
※引用元:ダイナミック広告 | Facebookヘルプセンター
ここではリターゲティング配信・幅広いターゲット層を活用した新規向け配信・カスタムオーディエンス配信の3パターンで、ダイナミック広告を作成する方法について解説していきます。
ダイナミック広告×リターゲティング配信の作成方法
①まず、広告マネージャーより「キャンペーンを作成」をクリックします
②「オークション」を選択し、③マーケティングの目的は「売上」を選択しカタログ設定をONに変更、④作成した製品カタログを選択し、キャンペーンを入力したら「次へ」をクリックします。
キャンペーンの次は、広告セットの設定を行います
⑤製品セットより「すべての製品」または、作成済みの製品セットがあれば、どちらかを選択します。続いて⑥任意のオーディエンスを選択します。
この後の地域や予算の設定等から、広告の作成方法については、通常のリンク広告を作成する流れと同じです。
ダイナミック広告でも、リターゲティング配信のターゲット層については、過去7日以内の訪問ユーザー(未購入)を指定するなど、通常のリンク広告で費用対効果が合っている訪問期間(リテンションウインドウ)からテストするので良いかと思います。
また、今回は「売上」を目的としているキャンペーンでのダイナミック広告の作成方法をご紹介していますが、「トラフィック」や「リード」、「アプリの宣伝」を目的としたキャンペーンや「売上」を選択後カタログ設定をONにしなかったキャンペーンでも広告設定でダイナミック広告を作成・配信することは可能です。
ただし「売上」を目的としてカタログ設定をONにしたキャンペーンでは「画像形式」「カルーセル形式」でダイナミック広告を作成できるのに対して、その他の目的を設定したキャンペーンでは「カルーセル形式」でしかダイナミック広告を作成できないので注意してください。
尚、上記の⑥で紹介したオーディエンス内の「クロスセル製品」と「アップセル製品」も同様には、「売上」を目的としてカタログ設定をONにしたキャンペーンのみ設定できます。
クロスセル製品を設定すると、すでに自社の商品を購入したユーザーに対して、広告配信を通して別の商品を勧めることができます。そのため、リピートの多い商材を扱っていれば、既存顧客のLTV(顧客生涯価値)を高めることが期待できます。
アップセル製品を設定すると、ユーザーの商品閲覧履歴に基づいて、ユーザーが関心を示している商品と同じカテゴリーの中からより利益率の高くなる商品を広告表示させることができます。広告効果をROASで追っていて、顧客あたりの購入単価を上げたい場合などは効果的な配信手法となります。
「売上」を目的としてカタログ設定をONにしたキャンペーン以外でのダイナミック広告の作成方法については、下記の通りです。
広告作成画面より、「カルーセル」形式を選択します。
続いて「リンク」の項目で、「製品セットからテンプレートにダイナミックに追加」を選択します。
あとは通常のリンク広告の作成手順と同じですが、ダイナミック広告を作成する場合、上図の「+」マークより製品情報の変数を追加することで「見出し」や「ニュースフィードリンク説明文」へ製品フィードの情報を反映することができます。自動生成される製品画像の製品名や価格を自動表示してくれるため、是非設定しておきたい項目です。
ダイナミック広告×幅広いターゲット層を活用したサイト未訪問ユーザー向け配信の設定について
続いて、ダイナミック広告のサイト未訪問ユーザー向け配信の設定について解説します。
ダイナミック広告は、ユーザーの閲覧履歴に限らず、性別や年齢、地域などの情報を基として、広告セットでターゲット層に設定したユーザーと関連性が高いと思われる製品を宣伝できます。そのため、ダイナミック広告はサイト未訪問ユーザー向け配信の拡大にも大きく貢献することが期待できるのですが、その際のターゲット設定にはいくつか注意点があります。
- 類似オーディエンスや興味関心など詳細なターゲティング設定は行わず、性別や年齢、地域で幅広くターゲット層を設定する
- 除外設定するのは過去一定期間で商品購入済みのユーザーのみとし、サイト訪問済みユーザーは除外設定しない
通常、サイト未訪問ユーザー向け配信を拡大する場合は、類似オーディエンスや興味関心に基づいてターゲット層を絞り、ターゲット層がリターゲティング配信と被らないようサイト訪問済みユーザーをターゲット層から除外設定する場合が多いです。
しかし、ダイナミック広告の場合は訪問ユーザーをあえて除外せず、広告セットへそのデータを組み込むことで、幅広いターゲット層の中から、より製品と関連性の高い未訪問ユーザーをFacebookが見つけやすくしてあげるのがポイントとなります。
Facebook広告の最適化は、登録した広告と設定したターゲット層との関連性によって精度が変わるため、訪問ユーザーを一部組み込んでおくことで、より自社製品と関連性の高い新規ユーザーを発見しやすくなるのです。
サイト未訪問ユーザー向け配信でダイナミック広告を作成する方法は基本的にリターゲティング配信と同じです。
これまで、「製品カタログでの販売」を目的としたキャンペーンでは未訪問ユーザーへの広告配信ができませんでしたが2022年8月時点で、同様の設定である「売上」を目的としてカタログ設定をONにしたキャンペーンでもサイト未訪問ユーザーへの配信が可能となっています。
キャンペーンの設定を行った後は広告セットの設定にて配信オーディエンスの選択ができるため、目的に合わせて地域、年齢、性別の設定を行います。
広告の作成方法については、リターゲティング配信の設定と同様になります。
ダイナミック広告×カスタムオーディエンスを活用した配信の設定について
カスタムオーディエンスの機能を活用すれば、トラッキングの制限を受けないFacebook、Instagramのアプリ内にて取得したデータを元にターゲティングを行うことが可能です。
設定方法は広告セットの設定画面から行う方法とカスタムオーディエンスを先に作成しておく方法があります。
ここでは、いくつかのカスタムオーディエンス例と広告セットの設定画面から設定する方法をご紹介します。
キャンペーン、広告の作成方法はいずれも他のターゲティング配信と同様となります。
オーディエンス例①|Instagramアカウントにアクションを実行したすべてのユーザー
自身のInstagramアカウントのプロフィールにアクセスした人や投稿や広告に対していいねやコメント、ボタンタップなどのアクションを行ったすべての人が含まれます。
すでにアカウントに対して興味を示しているユーザーのみが含まれるため、地域、年齢、性別のみのターゲティングと比較するとピンポイントで広告配信を行うことが可能です。
設定方法
①広告セット画面にて「新しいオーディエンスを作成」→「新規作成」→「カスタムオーディエンス」を選択
②オーディエンスのソースで「Instagramアカウント」を選択
③ソースに自身のInstagramアカウントを選択し、イベントは「このプロアカウントにアクションを実行したすべての人」を設定
④リテンションは1~365日内で適宜設定し「オーディエンスを作成」をクリック
オーディエンス例②|Instagramショッピングでユーザーアクションをしたユーザー
Instagramショッピングを設定している場合、Instagramショッピング内で商品を閲覧したりそこからサイトに遷移したと思われるユーザーを選択することが可能です。
商品に対して興味関心があることがすでに分かっているユーザー層のため、未訪問ユーザーよりはリターゲティング配信に近しいセグメントになります。
Instagramショッピング内でどの商品を閲覧したかというデータも広告配信に使用されているため、トラッキングの制限が生じている中でも活用していきたいオーディエンスとなります。
設定方法
①広告セット画面にて「新しいオーディエンスを作成」→「新規作成」→「カスタムオーディエンス」を選択
②オーディエンスのソースで「ショッピングを選択」
③自身のInstagramアカウントを選択し使用したいイベントを設定
④1~365日でリテンションを選択し、「オーディエンスを作成」をクリック
まとめ
ユーザー個人個人に合わせたクリエイティブを配信できるダイナミック広告では、リターゲティング配信の成果が大きく伸びる印象があるかと思います。しかし、トラッキング制限によってなかなかこれまでのような成果が出せない…という広告主の方は多いのではないでしょうか。
今回ご紹介させていただいたようにリターゲティング配信だけが、データフィードの活躍の場ではありません。フィードを正しく作成し、各媒体の仕組みを理解し適切な設定を行えば、新規ユーザーの獲得拡大やトラッキングできないユーザーの獲得補完においてもデータフィードを活かせる可能性は十分にあります。
ユーザーごとに最適化されるダイナミック広告を活用して、最適な広告配信設計を組み立てましょう。