Daily Tracker for Google Ads using Scripts

I have developed a Google Ads script to track the performance of all the Ad Campaigns and AdGroups of an Account on an everyday basis.

What does the script do?

Daily tracker script will compare the performance of Campaigns and AdGroups for the last 30 days and 7 days with the corresponding previous period. The results are recorded in a Google spreadsheet. Additionally, it sends an HTML-formatted daily email with the spreadsheet URL.

Screenshot of the Spreadsheet

How it Works?

The script fetches the last 60 days statistics and updates the spreadsheet. The change column is filled by the spreadsheet with a predefined formula. The changes above 30% are displayed in green colour and one’s below -30% are shown in red. If the email address is specified, the script sends out an HTML-formatted email.

How to Setup?

  • Set up a spreadsheet-based script with the source code below. Make a copy of this template spreadsheet.
  • The template sheet currently contains some example campaigns. But don’t worry, they will be overwritten once you run this script on your account.
  • Create a new script with the source code below.
  • Don’t forget to update SPREADSHEET_URL in the script.
  • Schedule the script Daily at any convenient time. — How to schedule script?

How to make the best use of the script?

  1. To review any changes done for Optimisation: The campaign managers do a lot of optimisation on a daily basis like keyword changes, bid changes or ad copy changes. As the sheet directly shows the comparison with the previous period, any effect (due to the change) will be directly reflected on the change percentage.
  2. Identify better-performing campaigns (or otherwise): When there is a crunch in the budget, the campaign managers have to be extra careful about the performance of various campaigns. In that case, identifying the poor performing Campaigns/AdGroups and cutting down their budget will prove helpful in minimising redundant spend. Similarly, the same budget can be used for a better performing campaign.
  3. To detect the anomaly in the performance: I had added some broad match keywords in Contract Mgmt AdGroup of Search-AUS Campaign. I forgot to review the impact of this change. Then I saw some unusual activity in this AdGroup. So I checked and found that it was because of those broad match keywords. The search terms were irrelevant too and so I paused them. So this sheet proved to be a saviour :D

I hope you like this.

Please leave comment below for any clarification.