View The AdWords Script That Alerts You When Your Account Is Down

According to the WSJ, recent studies in hospitals across the US have shown that caretakers have a hard time knowing when their intervention is needed to keep a person alive. This indecision is due to the fact that patients are hooked up to so many finicky monitors that there is a constant stream of alarms which they eventually tune out, ignore, or worse, don’t get because they turned off the monitoring equipment. In one particular study at a pediatric hospital in Philadelphia, they “found 99% of the alarms had no impact on the patient’s care, and the time it took nurses to respond rose in tandem with an increasing number of alarms in the previous two hours.” Interesting fact, but what’s the relevance on a blog about PPC you may ask.


Don’t Let Your PPC Patient Flatline


This scenario reminds me of search marketing where agencies and consultants are tasked with keeping many accounts healthy at the same time. To make sure no issues are missed, account managers resort to all sorts of tools and systems to alert them of potential problems. But this usually only creates a sea of noise and when that one critical alert is triggered, it gets ignored along with all the useless ones. It’s nowhere near as bad as letting a person die, but it certainly won’t look great on a resume when PPC accounts under your supervision flatline and no attempt was made to resolve the issue.


Getting The Right Level Of Alerts


So how do you get alerts that are meaningful and worth paying attention to? In Optmyzr, we provide both email alerts and in-app notifications on a dashboard because we believe that different account managers respond better to different methods of getting alerts. Having the flexibility to choose is part of one of the themes of PPC predictions for 2016. Experts say that custom automation will be big in 2016. Automation can send a constant stream of alerts (most probably useless) whereas custom automation can send alerts at the right time based upon factors account managers know about each of the accounts they oversee.


Alert When AdWords Billing Is Down


One particularly important alert to act on immediately is when the billing instrument for AdWords is declined. When this happens, and when there is no backup billing method on file, ads will stop serving immediately. Unfortunately, Google removed the alert for this situation from their API so our team went to work on creating a workaround. The script we wrote and which we are sharing here checks whether an account has served any impressions in the last couple of  hours.


AdWords Script: Alert When Account Stops Serving


What we’ve done is written this automation for you. The script simply checks whether the account had any impressions during the last 6 hours. If there weren’t any, there may be an issue with the billing and it’s time to investigate, so an email gets sent. Had you written this code yourself, one of the issues to overcome would have been how to check stats for the last couple of hours when those hours spanned different days, weeks, months, or even years. By using our code, you’ll save a couple of hours by not having to figure out how to do this. That’s the beauty of using cookie-cutter automation that someone else has created.


Download the AdWords Script code.


If you run this automation exactly the way we’ve written it, it may still trigger useless and false alerts because we decided to check data for the last 6 hours and that may not work for an account that is turned off by dayparting for 12 hours every day. We also decided to check impressions but you may find it more useful to check if there were any clicks.


Tweak The Script And Achieve Custom Automation


This brings me to custom automation. I started talking about scripts at HeroConf 3 years ago and made the point that they are better than typical automation because you get access to the code. With a little bit of work, you can leverage the baseline built by someone else, add your own methodology, and make it into a custom automation that not only saves time but also produces stellar results.


The script can be easily updated with one or several email addresses (comma separated) of people who should be notified when an account stops accruing data. You can also set the number of hours to look back so that you can reduce the false positives that would occur during times when there is no expectation of any data accruing, like when the account is paused at night. Finally, you can check any metric in AdWords, including:


  • Cost
  • Clicks
  • Conversions


The script will then no longer be used primarily to check when there are issues with billing, but it could be used to check when there might be a condition impacting what users do when they see the ad or visit the landing page. You can tweak these settings in lines 19-21 of the provided code.


Advanced Customizations


More advanced ways to alter the code could include looking at whether an alert has already been sent so that only 1 alert goes out for each account. That way if you intentionally ignore an alert, you won’t be bothered with another one about the same issue every hour. To do this, you could look back at some hours before the period you are checking and if there was no data then either, assume that the alert was already sent.


You could even alter the code to take into account dayparting settings so that you could look at metrics for a much shorter time frame, which would mean you’d get alerts more quickly when an issue first surfaces.


Or you could alter the code to do this type of analysis at the campaign level to find budget issues or at the ad group level to find when there might be issues with disapproved ads or keywords.


As always, we’re also putting this script into our Enhanced Scripts on Optmyzr so that you can easily run this methodology across many accounts under an MCC, copy settings between accounts, all without ever touching a single line of code.


I hope this code helps you prevent unpleasant situations where a client’s account has been offline and ignored. I’d love to hear ideas for new scripts to build so please reach out to me anytime.