【Google広告スクリプト】運用データをスプレッドシートに自動取得する方法|AdsApp.report活用
Google広告(Google Ads)の運用データを毎日手動でダウンロードするのは手間がかかります。Google広告スクリプトを使えば、インプレッション・クリック数・コンバージョン数などをスプレッドシートに自動で蓄積できます。
本記事ではAdsApp.report()を使ったデータ取得スクリプトの設定手順を解説します。Yahoo広告版はこちらを参照してください。
スプレッドシートの準備
出力先スプレッドシートに「GSNdb」と「GSNtemp」のシートを作成します。

- GSNdb:データが蓄積されるシート
- GSNtemp:一時的なデータ記録用(非表示でも可)
Google広告スクリプトの設定
データを取得したいGoogle広告アカウントを選択し、「ツールと設定」→「スクリプト」を選択します。

新しいスクリプトを作成します。

スクリプトのコード
以下のコードを使用します。
function main() {
// データシートのスプレッドシートIDを設定
const FileID = 'スプレッドシートのID'
const temp_sheet = SpreadsheetApp.openById(FileID).getSheetByName('GSNtemp');
const db_sheet = SpreadsheetApp.openById(FileID).getSheetByName('GSNdb');
// 取得したいデータを指定
var report = AdsApp.report(
'select CampaignName, Date, Clicks, Conversions, Cost, Impressions ' +
'from LANDING_PAGE_REPORT ' +
'during YESTERDAY'
);
report.exportToSheet(temp_sheet);
if (temp_sheet.getLastRow() == 1) {
return; // データなしの場合終了
}
const values = temp_sheet.getRange(2, 1, temp_sheet.getLastRow() - 1, temp_sheet.getLastColumn()).getValues();
const ranges = db_sheet.getRange(db_sheet.getLastRow() + 1, 1, values.length, values[0].length);
ranges.setValues(values);
}
3行目のスプレッドシートのIDを作成したスプレッドシートのIDに変更してください。
取得データのカスタマイズ
クエリのselect部分を変更することで取得するデータを指定できます。
// キャンペーン名・日付・クリック数・コンバージョン数・費用・インプレッション
var report = AdsApp.report(
'select CampaignName, Date, Clicks, Conversions, Cost, Impressions ' +
'from LANDING_PAGE_REPORT ' +
'during YESTERDAY'
);
利用可能なフィールドの一覧はAdsApp公式リファレンスを参照してください。
コンバージョン種別ごとにデータを取得する場合
var report = AdsApp.report('SELECT campaign.name, segments.conversion_action_name, segments.date, metrics.all_conversions FROM campaign WHERE segments.date DURING LAST_30_DAYS');
自動実行の設定
スクリプト一覧画面でスケジュールを設定します。「毎日」「毎時間」など任意の頻度で自動実行できます。

設定した時間にスクリプトが実行され、スプレッドシートにデータが蓄積されます。
MCCアカウントから複数アカウントのデータを一括取得する方法はこちらの記事を参照してください。






ディスカッション
コメント一覧
参考にさせていただきます!
参考にさせていただいております!
すみません、一つわからないことがあり回答頂けますと幸いです。
日付の期間を120日前まで取得したい場合、スクリプトのどの箇所を変更するとよろしいでしょうか?
「yesterday」の箇所を「LAST_120_DAYS」に変更すると、エラーが起きてしまいました。
ご回答の程、よろしくお願いいたします。
ありがとうございます。
クエリにつきましては下記を参考にしてください。
https://developers.google.com/google-ads/api/docs/query/overview