Maximize Ad ROI with Google Ad Scripts

Once your Google Ads account starts to grow – or once you start to manage multiple accounts through an MCC account – it can become challenging to bring the same level of care to each campaign, ad, and keyword.

Additionally, sometimes there’s a granular level of detail you know you need to be active on that simply is too time-consuming or there’s automation you’d like to introduce that the platform doesn’t support out of the box. 

As the platform has gotten more advanced, new tools and features have been incorporated to make our campaigns ‘smarter’. While these new bells and whistles are great, I personally have felt a little less in control and more at the mercy of the platform (maybe an exaggeration…).

If experiencing any of these challenges including wanting to know more about what’s truly working within your campaigns, then I suggest you try out Google Ads scripts. They’re not as scary as they sound and they’ll save you time, give you better insights, and allow you to use more advanced tactics.

What are Google Ad scripts?

Google Ad scripts provide us a programmatic way for us to access our ad data. You write code in javascript, you use an embedded IDE (integrated development environment) that you have access to directly from the Google Ads interface, and then you run it from the same Google Ads UI you always use.

What do I need to get started with Google Ads scripts?

It’s a gentle introduction into programmatically managing your ads and automating certain features. It’s definitely beneficial if you have some working knowledge of javascript but if not, don’t worry – this is actually a nice contextual way to pick up a few chops.

Other than this, all you need to get going is your Google Ads account.

Why are Google Ad scripts helpful?

Google Ads scripts are super helpful for managing more complex account setups, for example, SKAG (single keyword ad groups).

Where do I set up Google Ad scripts?

You can work on your scripts either in a word doc or directly in the Google Ads platform.

How to Setup Google Ads Scripts

If you don’t have a coding background, scripts can be pretty intimidating at the start – and I say that as someone who doesn’t have a coding background and found scripts pretty intimidating! The good news though, is that there are lots of templates and premade codes available online which you can either take exactly as they are or use as the basis for your scripts.

Here are a few fundamental principles that will demystify how scripts are put together and work:

Functions are the first part of any Google Ads script and the script can not…‘function’ (get it?) without one of these.

Variables are the next part of the script you’ll need and they work as containers that store data values. You can access any data points within your ad account but bear in mind that each Variable must correspond to specific Objects and Entities in your account.

Objects specify in what classification of entity the script is going to pull data from (e.g. Ad account, spreadsheet, MCC account, URL).

Entities specify where you want the script to pull data from (i.e. which account, campaign, ad group, keywords, ad parameters, etc.).

Selectors are essentially filters and will most often look like:

  • withCondition( )
  • withIds( )
  • forDateRange( )
  • orderBy( )
  • withLimit( )

Methods are the commend elements of your script or in other words, the part of the script that specifies what we want to happen as a result of running the script. There are too many to name here but Google makes a complete list available here.

Iterators simply make sure the script continues to fire as long as it’s able to find valid data. 

Where can I add Google Ad scripts in my account?

Scripts can be easily added within ‘Tools & Settings’ under the ‘Bulk Actions’ column.

What does a complete Google Ad script look like?

Where to get started with Google Ad scripts?

To help you on your way here are my 5 favorite Google Ads scripts that I regularly use:

24/7 Bids

Google Ads come out of the box with limited default bidding periods. Using a script, you have the ability to customize your keyword bids by the hour. This comes in handy when you know your target audience is more active and engaged at certain hours of the day.

A good example would be any keywords related to “take out”, which traditionally see more traction and activity in the evenings.

Use this template and try it out right away!

CTR Heat Map

When it comes to paid search, nothing impacts your results and your ROI more than having good insights and acting on them. To that end, not all of these scripts are about automating rules. This one is about painting a clearer picture of where you’re doing well so you can do more of that. Makes sense, right?

By using a heat map, this will help you understand what bids you need to be adjusting before it comes to automating them.

Quality Score Tracker

They’ve always kept Quality Score as a bit of a mystery and even though it’s always been pretty hard to pin down how to fully control it, it’s always a good gauge of account health.

Side note: SKAGs have always proven effective for me to drastically improve quality score and allow me to get keywords at a better cost per result.

The specific script will track the quality score for all your keywords, which adds a historical and visual reporting element that the current Google Ads reporting doesn’t allow you to do out of the box.

Credit to PPC Epiphany blog for this great script that even comes with its own dashboard!

0 Impressions Pause

A regular housekeeping task I undertake is to trim out keywords from my ad groups that aren’t generating any impressions. This declutters our ad account and allows space for the system to work with and optimize for the words that we know we can get eyeballs on.

That being said, to go in and do this all the time is very time-consuming. Thankfully, we can write a script that will automatically do that. Obviously, we don’t want the script to pause all keywords with 0 impressions right away (e.g. new keywords that have just been added).

Check out the free script from here.

Bid Adjustment Script

If you’re continually trying to get more return and results for your ad spend, this is the very script that will get you there. Technically made up of two scripts (a ‘bid increaser’ and a ‘bid decreaser’) 

First of all, you’ll need to set up a filter so that the script knows when to fire. In this instance, we want to increase bids if our average position is worse than 2.4. Then, you’ll need to place the bid increaser script (credit to KlientBoost) into Google Ads so that bids are raised for instances where the below criteria occur.

When it comes to lowering bids automatically, it works in much the same way but with different criteria. With this script, any keywords that are not performing with the parameters we outline below will start lowering by a set amount.

You can access the bid decresarer script here (credit to KlientBoost).


Improved features and enhancements to ad platforms are great – but the more control you have, the clearer picture you have on what’s working and why it’s working. The less of your campaign and strategy success that’s hidden inside a BlackBox, the more valuable actually getting things right is to you – because you actually understand what you’re doing right.

Bottom line: don’t be afraid to try out Google Ads scripts because they’re not as scary as they sound.

If you’re looking for an Digital Marketing agency, get in touch with Blueliner here to see how we can help take you from “okay” to “awesome” in the Digital Marketing realm.


Share via
Copy link
Powered by Social Snap