Google広告のレポートを作るとき、データは基本的にEXCELやCSVでエクスポートが普通の流れだと思いますが、
定形フォーマットがある場合など、自動で取得できると超便利です。
そこで今回はGoogleスプレッドシートに自動でデータを流し込む方法をまとめました。
いろいろ調べるとリファレンスがあるのですが、僕がほしいのはめちゃくちゃシンプルにデータを流し込めればよいだけなので、
Scriptのコードは数行でした。
AdwordsScriptの使い方
AdwordsScriptは、Google広告の「ツール」→「一括操作」→「スクリプト」で使用可能です。
スクリプト→Googleスプレッドシートへ流し込み
コードは下記です。ちなみに、アカウント承認が必要なので必ず承認しましょう
function main() {
var spreadsheet = SpreadsheetApp.openByUrl("GoogleスプレッドシートのURL");
var report = AdWordsApp.report("SELECT Date,Criteria,CampaignName,AdGroupId,CampaignId,AdGroupName,Clicks,Impressions,Cost,VideoViews,VideoQuartile25Rate,VideoQuartile75Rate,VideoQuartile50Rate,VideoQuartile100Rate,Engagements FROM DISPLAY_KEYWORD_PERFORMANCE_REPORT WHERE Impressions > 0 DURING LAST_7_DAYS");
report.exportToSheet(spreadsheet.getActiveSheet());
}
全くの初学者なので、果たしてこのコードがきれいかどうか全くわからないのですが、流し込みはできたので、僕的にこれで問題なかったです。
ポイントは下記です。
・スプレッドシートのURLを” “内にコピペしましょ
var spreadsheet = SpreadsheetApp.openByUrl(“GoogleスプレッドシートのURL”);
・取得する指標を選択しましょ
SQLライクなAWQLという言語で、取得する項目を選べます。
var report = AdWordsApp.report("SELECT Date,Criteria,CampaignName,AdGroupId,CampaignId,AdGroupName,Clicks,Impressions,Cost,VideoViews,VideoQuartile25Rate,VideoQuartile75Rate,VideoQuartile50Rate,VideoQuartile100Rate,Engagements FROM DISPLAY_KEYWORD_PERFORMANCE_REPORT WHERE Impressions > 0 DURING LAST_7_DAYS");
今回はGoogle広告の動画/ディスプレイキーワード別のデータを取得したいため、「SELECT」以降に取得したいデータ、「FROM」以降でレポートタイプ、
「WHERE」以降でインプレッションの0を除き、「DURING」で過去7日間のレポートを取得するよう設定しています。
レポートタイプなどの詳細は下記よりご確認ください。
https://developers.google.com/adwords/api/docs/appendix/reports?hl=ja
レポートタイプを参考にコードをカスタマイズして使うことができます。
1日一回の自動取得で完全自動化
AdWordsScriptのメリットはスケジュール化が可能なことです。
スクリプトメニューの「頻度」でスケジュールを設定可能です。
これで、上記のコードを設定していれば、Google広告の過去7日間のキーワード別レポートが、
1日一回自動取得完了です。
あとは、datastudioやBIツールと組み合わせれば完璧です。
|