【Google広告】MCCのすべてのアカウントから運用データを取得する
Google広告のデータをMCC内のすべてのアカウントから取得する方法です。
定期実行の設定ができるので毎日スプレッドシートに取得することが可能です。
アカウントごとにスクリプトを実行する方法はこちらになります。
MCCで多くのアカウントを管理している場合、アカウントごとに実行するのは大変なので、MCCで取得することをおすすめします。
Google広告のMCCでスクリプトを準備する
新しいスクリプトを作成します。
スクリプト
アカウント情報の取得
//レポート出力対象MCC-ID
var MANAGER_CUSTOMER_ID = '1234567890';
// MCC-IDを指定してアカウント情報を取得
var accountIterator = MccApp.accounts().withCondition("ManagerCustomerId = '" + MANAGER_CUSTOMER_ID + "'").get();
//var accountIterator = MccApp.accounts().get();
Logger.log('アカウント件数 : ' + accountIterator.totalNumEntities());
こちらを実行してアカウント件数が取得できれば成功です。
各アカウントからキャンペーン情報を取得する
campaignSelector()で取得するキャンペーンを指定します。
詳細はこちらから確認してください。
AdsApp.CampaignSelector
var account = accountIterator.next();
AdsManagerApp.select(account);
var campaignSelector = AdsApp
.videoCampaigns()
.forDateRange("TODAY")
.withCondition("Name CONTAINS '広告名' ")
.withCondition("Cost > 1")
var campaignIterator = campaignSelector.get();
各キャンペーンからデータを取得する
var campaign = campaignIterator.next();
var stats = campaign.getStatsFor('TODAY');
Logger.log(campaign.getName() + ', ' + stats.getClicks() + 'clicks, ' +
stats.getImpressions() + ' impressions');
全スクリプト
function main() {
//MCC-ID
var MANAGER_CUSTOMER_ID = '1234567890';
// 日付取得
var now = new Date();
// スプレッドシート
var spreadsheet = SpreadsheetApp.openById("1SO***********************")
// シートを取得
var sheet = spreadsheet.getSheetByName('シート名設定');
// MCC-IDを指定してアカウント情報を取得
var accountIterator = MccApp.accounts().withCondition("ManagerCustomerId = '" + MANAGER_CUSTOMER_ID + "'").get();
//var accountIterator = MccApp.accounts().get();
Logger.log('アカウント件数 : ' + accountIterator.totalNumEntities());
var data = []
while (accountIterator.hasNext()) {
var account = accountIterator.next();
AdsManagerApp.select(account);
var campaignSelector = AdsApp
.videoCampaigns()
.forDateRange("TODAY")
.withCondition("Name CONTAINS 'キャンペーン名' ")
.withCondition("Cost > 1")
var campaignIterator = campaignSelector.get();
while (campaignIterator.hasNext()) {
var temp_data = []
var campaign = campaignIterator.next();
var stats = campaign.getStatsFor('TODAY');
Logger.log(campaign.getName() + ', ' + stats.getClicks() + 'clicks, ' +
stats.getImpressions() + ' impressions');
MccApp.select(account);
temp_data.push(now )
temp_data.push(account.getCustomerId())
temp_data.push(account.getName())
temp_data.push(campaign.getName())
temp_data.push(stats.getClicks())
temp_data.push(stats.getImpressions())
temp_data.push(stats.getCost())
temp_data.push(stats.getConversions())
data.push(temp_data)
}
}
sheet.getRange(sheet.getLastRow()+1, 1, data.length, data[0].length).setValues(data)
}
ぜひお試し下さい。
AdsApp.report()を使用したい場合はこちらから
【Google広告】MCCのすべてのアカウントから運用レポートを取得する
参考サイト
Google広告スクリプト
ディスカッション
コメント一覧
まだ、コメントがありません