Google Ads script: How to automatically apply bid modifiers

Here's a bid modifier script for in-market and remarketing audiences, device and location targeting.

Chat with SearchBot

This script which will save HOURS of your time. That’s not hyperbole, I promise.

Remember the in-market audiences bid modifier script I released last year?

This expanded version of the script automatically applies modifiers for device, location, in-market and remarketing audiences based on performance.

You can set campaign filters, decide which types of modifiers you want to adjust, set minimum impressions, conversions and cost filters, and weight the modifiers it applies according to adjustable volume thresholds.

Honestly, what’s not to love?

What’s new?

To recap, the old script looks at campaigns’ CPC over a given time range and sets bid modifiers to each of the campaign-level in-market audiences based on performance. If there are no campaign-level audiences, the tool will apply bid modifiers to all in-market audiences at ad group-level.

This one does the same, but includes device, location and remarketing audiences!

And where the old script only looked at minimum impressions as a threshold, this one has extra filters to choose from: minimum cost and minimum number of conversions. You can also weight the modifiers if the volume is low.

Just like the old script, it does calculated modifiers based on the following formula: Modifier = Entity CPA / Audience CPA, where ‘Entity’ is the campaign or ad group.

How to use it

As always, copy the script below and paste it in the scripts section of Google Ads.

You’ll need to set all the following variables correctly to make sure the script does exactly what you want it to do.

To start, use CAMPAIGN_NAME_DOES_NOT_CONTAIN and CAMPAIGN_NAME_CONTAINS to exclude or include specific campaigns.

Next up, your targeting options! These are pretty self-explanatory, set them to true to enable them: DO_DEVICES, DO_LOCATIONS, DO_IN_MARKET_AUDIENCES, DO_OTHER_AUDIENCES.

Use DATE_RANGE to determine the time frame for the script to look at, using one of these options.

Set MINIMUM_IMPRESSIONS, MINIMUM_CONVERSIONS, and MINIMUM_COST to the minimum number of each you want a campaign of ad group to have to be considered.

To be on the safe side, use MIN_BID_MODIFIER and MAX_BID_MODIFIER to define the upper and lower bounds for the bid modifiers to fall into.

If you would like to weight the modifiers based on the number of conversions, use CAMPAIGN_BID_MODIFIER_WEIGHTS or ADGROUP_BID_MODIFIER_WEIGHTS


Opinions expressed in this article are those of the guest author and not necessarily Search Engine Land. Staff authors are listed here.


About the author

Daniel Gilbert
Contributor
Daniel Gilbert is the CEO at Brainlabs, the best paid media agency in the world (self-declared). He has started and invested in a number of big data and technology startups since leaving Google in 2010.

Get the must-read newsletter for search marketers.