//variable yesterday is exactly 24 hours ago.
var MILLIS_PER_DAY = 1000 * 60 * 60 * 24;
var now = new Date(); //date today
var yesterday = new Date(now.getTime() - MILLIS_PER_DAY);
//format the date yesterday and use it in the report as the custom date range's max date
var timeZone = AdWordsApp.currentAccount().getTimeZone();
var formattedMaxDate = Utilities.formatDate(yesterday, timeZone,
'YYYYMMDD')
var report = AdWordsApp.report(
'SELECT CampaignName, Clicks, Impressions, Cost ' +
'FROM CAMPAIGN_PERFORMANCE_REPORT ' +
'DURING 20170102, ' + formattedMaxDate);function main() {
var campaignIterator = AdWordsApp.campaigns()
.get();
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
// You can also request reports for pre-defined date ranges. See
// https://developers.google.com/adwords/scripts/docs/reference/adwordsapp/adwordsapp_campaign#getStatsFor_1,
// DateRangeLiteral section for possible values.
var stats = campaign.getStatsFor('ALL_TIME');
Logger.log(campaign.getName() + ', Clicks: ' + stats.getClicks() + ' , Impressions: ' +
stats.getImpressions() + ' Cost: '+ stats.getCost());
}
}function main() {
var body = [];
var campaignIterator = AdWordsApp.campaigns()
.get();
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
// You can also request reports for pre-defined date ranges. See
// https://developers.google.com/adwords/scripts/docs/reference/adwordsapp/adwordsapp_campaign#getStatsFor_1,
// DateRangeLiteral section for possible values.
var stats = campaign.getStatsFor('ALL_TIME');
body.push(campaign.getName() + ', Clicks: ' + stats.getClicks() + ' , Impressions: ' +
stats.getImpressions() + ' Cost: '+ stats.getCost() + '\n');
}
MailApp.sendEmail("YOUR EMAIL ADDRESS","YOUR SUBJECT", body)
}var campaignIterator = AdWordsApp.campaigns().withCondition("Status = ENABLED")
.get();function main() {
var spreadsheet = SpreadsheetApp.create('YOUR REPORT NAME HERE');
var email = ["ema...@example.com","ema...@example.com"];
var sheet = spreadsheet.getSheets()[0];
sheet.clear();
sheet.appendRow(["Campaign", "Clicks", "Impressions", "Cost"]);
var campaignIterator = AdWordsApp.campaigns().withCondition("Status = ENABLED")
.get();
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
// You can also request reports for pre-defined date ranges. See
// https://developers.google.com/adwords/scripts/docs/reference/adwordsapp/adwordsapp_campaign#getStatsFor_1,
// DateRangeLiteral section for possible values.
var stats = campaign.getStatsFor('ALL_TIME');
sheet.appendRow([campaign.getName() ,stats.getClicks(),
stats.getImpressions() , stats.getCost() ]);
}
spreadsheet.addEditors(email);
MailApp.sendEmail(email,"Campaign Stats", "Your spreadsheet is at " + spreadsheet.getUrl());
}function main() {
var spreadsheet = SpreadsheetApp.openByUrl("YOUR SPREADSHEET URL");
var sheet1 = spreadsheet.getSheets()[0];
sheet1.clear();
sheet1.setName("Search Campaigns");
sheet1.appendRow(["Campaign", "Clicks", "Impressions", "Cost"]);
getCampaignStats("SEARCH",sheet1);
var sheet2 = spreadsheet.getSheets()[1];
sheet2.clear();
sheet2.setName("Display Campaigns");
sheet2.appendRow(["Campaign", "Clicks", "Impressions", "Cost"]);
getCampaignStats("DISPLAY",sheet2);
spreadsheet.addEditors(email);
MailApp.sendEmail(email,"Campaign Stats", "Your spreadsheet is at " + spreadsheet.getUrl());
}
function getCampaignStats(campaigntype,sheet){
var campaignIterator = AdWordsApp.campaigns()
.withCondition("Status = ENABLED")
.withCondition("AdvertisingChannelType = '" + campaigntype + "'")
.get();
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
// You can also request reports for pre-defined date ranges. See
// https://developers.google.com/adwords/scripts/docs/reference/adwordsapp/adwordsapp_campaign#getStatsFor_1,
// DateRangeLiteral section for possible values.
var stats = campaign.getStatsFor('ALL_TIME');
sheet.appendRow([campaign.getName() ,stats.getClicks(),
stats.getImpressions() , stats.getCost() ]);
}
}