• Fiveのブログ
  • Yahoo!検索広告でスクリプトを使って自動レポートを作成する方法

Yahoo!検索広告でスクリプトを使って自動レポートを作成する方法

【検索広告】Yahoo!広告スクリプトを使って自動レポートを作成

Yahoo!検索広告のレポート作成を効率化し、分析に十分な時間を確保するための、データ抽出自動化の方法をご紹介します。

Yahoo!検索広告データの自動出力に必要な物

  • 編集権限以上を持つYahoo!検索広告アカウント
  • Googleスプレッドシート

Googleスプレッドシート上の操作

広告管理画面での操作に入る前に、データの抽出先となるスプレッドシートを準備します。
スプレッドシートを新規作成し、後ほどデータの出力先となるタブにあらかじめ名称を設定しておきます。

シート内で特別な作業を行う必要はありませんので、作成後はスプレッドシートのURLを控えておくだけで問題ありません。

後ほど、スクリプト内で使用するため、赤線部分の「d/」から「/edit」までの英数字(スプレッドシートID)を控えておきます。

株式会社Fiveは、
月額10万円の広告予算からWeb広告運用を代行できる、

成果を“共に創る”Web広告代理店です。

大手広告代理店・制作会社出身のメンバーが、広告運用からLP・バナー制作までをワンストップで代行します。
ヒアリングから施策立ち上げ、改善提案まで丁寧かつスピーディに対応可能です。
※過去実績:最短1~3営業日

  • 初めてのWeb広告をプロに任せたい
  • スピード感を持って立ち上げたい
  • LPやバナー制作もまとめてお願いしたい

そんな課題を感じている法人様やご担当者様は、ぜひお気軽にご相談ください。
店舗集客(エステ・ジムなど) / チケット販促(音楽フェス・Bリーグ・展示会・イベントなど) / BtoB集客(ウェビナー・リード獲得全般) / PR施策と連動させたWebプロモーションなど、幅広い業種の実績を公開しています。

ROASやCPAなどの指標にもこだわり、立ち上げ期から成長フェーズまで長く伴走できる“頼れるパートナー”として、皆様のWeb広告運用を全力でサポートいたします。

Web広告の運用に課題を感じているご担当者様は、ぜひお気軽にご相談ください。

Yahoo!検索広告管理画面上の操作

手順①

Yahoo!検索広告の管理画面で、右上にある「ツール」をクリックし、表示されたメニューから「運用支援」→「Yahoo!広告スクリプト」を選択して、スクリプト画面へ移動します。

※この操作は、スクリプトで自動的にデータ抽出を行いたい対象アカウントを開いた状態で実行してください。

手順②

作成済みのスクリプトが一覧で表示される画面に移動したら、まず右上にある「外部ツール連携」をクリックし、Googleアカウントとの連携を実施します。

連携が正常に完了すると、画面上に「連携済」と表示されます。

続いて、スクリプト一覧画面へ戻り、「新規作成」ボタンをクリックしてスクリプト作成画面に進みます。

手順③

テキスト入力用の枠が表示されるため、ここに抽出したい項目などのコードを入力していきます。コード量が多いため、最上部の抜粋部分のみ掲載します。

出力項目に変更がない場合、アカウントが異なっても赤字部分のみを変更することで流用が可能です。

※記事の最後に、実際に使用できるサンプルコードの全文を掲載していますのでご安心ください。

functionmain(){
reportDataToSpreadsheet();
}
functionreportDataToSpreadsheet(){
constspreadsheetId=‘1_OgROA0k4jx5JhYJwdw3rYIasxJs6CGFE8D6-WR6g8c
この赤字部分に
出力するGoogleスプレッドシートのURLd/から/editの英数字を入力
constss=SpreadsheetApp.openById(spreadsheetId);
constsheetName1=‘デイリー‘;←この赤字部分に
出力する出力するGoogleスプレッドシートのタブの名称を入力
constsheetName2=‘時間帯別‘;←この赤字部分に
出力する出力するGoogleスプレッドシートのタブの名称を入力
constsheetName3=‘KW‘;←この赤字部分に
出力する出力するGoogleスプレッドシートのタブの名称を入力
constsheetName4=‘検索クエリ‘;←この赤字部分に
出力する出力するGoogleスプレッドシートのタブの名称を入力

コードを入力後、スクリプトを初めて作成する際は、「認証」をクリックします。
Yahoo!広告と連携しているメールアドレス宛に承認コードが送信されますので、受信したコードを入力して認証を完了させてください。

認証後にスクリプトを保存すれば、作成作業は完了です。

認証が完了すると、「実行」ボタンが使用可能になるので、そのまま「実行」をクリックしましょう。

実行後は、「実行履歴」からスクリプトの実行状況を確認することができ、所要時間はアカウント構成や出力データ量によって異なりますが、通常は2〜3分程度で完了します。

ステータスが「成功」と表示されていれば、スクリプトは問題なく実行され、データも正常に出力されています。

手順④

スクリプトの実行が完了すると、最初に作成したGoogleスプレッドシートに、スクリプト内で指定した日付や各種数値が自動的に出力されます。

  • Excelレポートに貼り付け
  • 別タブで数式を組み、レポートを自動生成
  • データポータルを用いたレポート作成

など、目的に合わせて自由に調整・活用してください。

スクリプトコードの詳細

手順③で抜粋したスクリプトコードの全文を以下に掲載します。
赤字部分以外は、そのままコピー&ペーストでご利用いただけます。

functionmain(){
reportDataToSpreadsheet();
}
functionreportDataToSpreadsheet(){
constspreadsheetId=‘●●●●●●●●●●●‘;
constss=SpreadsheetApp.openById(spreadsheetId);
constsheetName1=‘デイリー’;
constsheetName2=‘時間帯別’;
constsheetName3=‘KW’;
constsheetName4=‘検索クエリ’;
letsh1=ss.getSheetByName(sheetName1);
letsh2=ss.getSheetByName(sheetName2);
letsh3=ss.getSheetByName(sheetName3);
letsh4=ss.getSheetByName(sheetName4);
constfields1=[‘MONTH’,‘DAY’,‘CAMPAIGN_NAME’,’ADGROUP_NAME’,’
AD_NAME’,‘IMPS’,‘CLICKS’,‘COST’,‘CONVERSIONS’,‘CONV_VALUE’];
constfields2=[‘MONTH’,‘HOUR_OF_DAY’,‘DEVICE’,‘CAMPAIGN_NAME’,‘
IMPS’,‘CLICKS’,‘COST’,‘CONVERSIONS’,‘CONV_VALUE’];
constfields3=[‘MONTH’,‘KEYWORD’,‘KEYWORD_MATCH_TYPE’,‘QUALITY_INDEX’,‘
CAMPAIGN_NAME’,’ADGROUP_NAME’,‘IMPS’,‘CLICKS’,‘COST’,‘CONVERSIONS’,‘
CONV_VALUE’];
constfields4=[‘MONTH’,‘SEARCH_QUERY’,‘SEARCH_QUERY_MATCH_TYPE’,‘
QUERY_TARGETING_STATUS’,‘CAMPAIGN_NAME’,’ADGROUP_NAME’,‘
IMPS’,‘CLICKS’,‘COST’,‘CONVERSIONS’,‘CONV_VALUE’];
constreports1=AdsUtilities.getSearchReport({
accountId:AdsUtilities.getCurrentAccountId(),
fields:fields1,
reportDateRangeType:THIS_MONTH_EXCEPT_TODAY’,
reportType:AD’,
});
sh1.clear();
sh1.appendRow(fields1);
sh1.getRange(‘A2’).setValues(reports1.reports[0].rows);
constreports2=AdsUtilities.getSearchReport({
accountId:AdsUtilities.getCurrentAccountId(),
fields:fields2,
reportDateRangeType:THIS_MONTH_EXCEPT_TODAY’,
reportType:CAMPAIGN’,
});
sh2.clear();
sh2.appendRow(fields2);
sh2.getRange(‘A2’).setValues(reports2.reports[0].rows);
constreports3=AdsUtilities.getSearchReport({
accountId:AdsUtilities.getCurrentAccountId(),
fields:fields3,
reportDateRangeType:THIS_MONTH_EXCEPT_TODAY’,
reportType:KEYWORDS’,
});
sh3.clear();
sh3.appendRow(fields3);
sh3.getRange(‘A2’).setValues(reports3.reports[0].rows);
constreports4=AdsUtilities.getSearchReport({
accountId:AdsUtilities.getCurrentAccountId(),
fields:fields4,
reportDateRangeType:THIS_MONTH_EXCEPT_TODAY’,
reportType:SEARCH_QUERY’,
});
sh4.clear();
sh4.appendRow(fields4);
sh4.getRange(‘A2’).setValues(reports4.reports[0].rows);
}

補足

表示回数・クリック数・コンバージョン数といった基本指標は、このサンプルコードで出力が可能です。
出力期間を変更したいケースもあるかと思いますので、対象期間の設定方法についても併せてご紹介します。

任意の期間でデータを取得したい場合は、以下を参考に調整してください。

該当箇所

reportDateRangeType: ‘THIS_MONTH_EXCEPT_TODAY‘,

赤字部分を、取得したい期間に応じた英字表記へ変更するだけで、任意の期間のデータを出力できます。
よく利用する期間指定については、下記の一覧にまとめていますのでご活用ください。

項目要件
TODAY本日
YESTERDAY昨日
LAST_30_DAYS本日を除く、過去30日間
LAST_MONTH前月
THIS_MONTH本日を含む、当月
THIS_MONTH_EXCEPT_TODAY本日を除く、当月
ALL_TIME取得可能な全期間

最後に

今回は、Yahoo!検索広告におけるスクリプト活用方法をご紹介しました。
本記事で取り上げた内容は汎用的なものではありますが、レポーティング工数の削減に少しでもお役立ていただければ幸いです。

より詳細な実装や応用を行いたい場合は、以下のYahoo公式ドキュメントも参考になりますので、ぜひご確認ください。

Yahoo!広告スクリプト公式

次回は、Yahoo!ディスプレイ広告におけるスクリプト作成方法についてもご紹介する予定です。

この記事を書いた人

この記事をSNSでシェア

  • X
  • Facebook
Five Blog編集部

Five Blog編集部

御茶ノ水でWeb広告全般の運用代行をしているFiveの編集部です! 実際の広告運用で得た知見を基に、Google広告やInstagram広告といった各媒体の最新情報やプロの運用担当が書いたノウハウを発信します。

無料相談

3分でFiveがわかる 資料ダウンロード