Google Ads Script – Performance Max Non-Converting Search Term Alerts

Let’s talk  PMax search terms…

You are a PPC Pro, so you LOVE your keywords, right?

Keywords are _the_ most powerfull signal of intent.

Keywords are great to target.

AND keywords are great to UNtarget (exclude/negate).

Adding negative keywords to our accounts is one of the best ways to reduce wasted ad spend and increase profits.

Yet Google’s Performance Max is making it very, VERY difficult for us to exlude these non-converting search terms that just give donations to the Bank Of Nowhere (aka Google’s shareholders).

Performance Max is a black box.
Extremely little data about its performance is shared with us via the Google Ads interface.

Even a simple report like clicks and conversions for PMax search terms has long been unavailable for us.

No More!

Luckily for us, the Google Ads API allows us to pull some more data from the Google Ads platform.
And we can use a script to do some nice things with this data!

Imagine having a Google Ads Script that alerts you every week on search terms that have had a significant amount of clicks, but ZERO conversions.

Every week you’ll recieve an email with a link to a Google Sheet that list all these non-converting search terms. Ready for you to exlude them in your campaigns.

Neat right?

That script is right here, free for you to use ->

Continue reading “Google Ads Script – Performance Max Non-Converting Search Term Alerts”

Google Ads Script – PMax Trending Search Categories

Performance Max is a black box.
Extremely little data about its performance is shared with us via the Google Ads interface.

Yet, we all crave this data.

In fact, if I had to choose between a Google Sheet with yesterday’s PPC stats and my morning coffee…

my Harar French press would win.

BUT, the thing is:

We are PPC Professionals. We want to optimize based on performance data.
Reduce wasted ad spend in areas with low click value.
Increase clicks from targets that show great results.

Yet Google is making it harder to do our jobs each and every day by hiding valuable data in the interface.

Luckily for us, the Google Ads API allows us to pull some more data from the Google Ads platform.
And we can use a script to do some nice things with this data!

Imagine having a Google sheet at your fingertips that shows what search categories are trending in your Performance Max campaigns.

Easily see how the PMax algorithm is changing, and matching your assets to new user queries.
Quickly see what types of searches these newly inserted products are being matched to.
Promptly respond to downward trends in search terms that showed great conversion value in the past.

And there’s more.

You can use the insights to:
– add trending search categories as new (broad) keywords to your standard search campaigns
– tailor your creatives based on trends
– add popular search categories to your landing pages and Merchant Center feed descriptions to boost performance

I will take any additional insight I can get since Google gives so little on PMax.
That’s why I created this script.

Here’s a script to monitor how Performance Max is matching your assets to user queries, and what is changing in the search behavior of your audience.

Continue reading “Google Ads Script – PMax Trending Search Categories”

Negative Keyword Conflicts Alert Script – UPDATE

One of my favorite use cases for scripts is managing negative keywords.

I use scripts to:
– suggest negative keywords candidates
– allow for easy management of negatives via Google Sheets
– do n-gram analyses to discover potential negative candidates
– keep exact match keywords exact (super handy for brand campaigns to prevent non-brand from matching your brand keyword)
– automatically add positive keywords to a negative keywordlist that is attached to my DSA campaigns to prevent cannibalization
– auto-negate converting search terms in HIGH prio Shopping campaigns, so that the queries get funneled into higher bid MED prio campaigns
– automatically add positive keywords to a negative keywordlist that is attached to my DSA campaigns to prevent cannibalization
– …and a ton of other things.

Occasionally, me or my team members make the unfortunate mistake of accidentally adding a negative keyword that blocks one or more positive keywords.

Not good.

So, I use another script to alert me when that happens: the Negative Keyword Conflicts script.

What it does:
Email alert if an account has positive keywords which are blocked by negative keywords. The script saves all such conflicts to a spreadsheet and sends out the email alert.

Why you care:
Negative keywords are intended to prevent ads from showing on irrelevant search queries, but they may inadvertently block normal keywords from matching relevant search queries, making your campaigns less effective.  

The original script is developed by Google, but it has a major drawback;
it also looks at keywords in campaigns that have ended (ie: ended experiment campaigns).

This results in a lot of false alerts, making you want to ignore them altogether.

So I decided to fix this issue by changing the script to only look at campaigns that are still serving.

This fix was easy. The only thing I need to add was the condition to only look at campaigns with serving_status = ‘SERVING’.

In the code that means one extra condition in the GAQL query (extra condition in green):

`WHERE campaign.status = "ENABLED" AND campaign.serving_status = "SERVING" AND ad_group.status = "ENABLED" `+

All the scripts you publish save my life

"All the scripts you publish save my life, SO MANY THANKS , great job!!!!!!"

Marta Sabaté Méndez, PPC/SEM Manager & Digital Analyst - Barcelona, Spain

ᴎils rooijmans
2023-05-04T07:40:54+00:00

Marta Sabaté Méndez, PPC/SEM Manager & Digital Analyst - Barcelona, Spain

"All the scripts you publish save my life, SO MANY THANKS , great job!!!!!!"
0
ᴎils rooijmans

Here’s the complete code of the script:

Continue reading “Negative Keyword Conflicts Alert Script – UPDATE”

Google Ads Script – Change History Alerts

Be in the know when someone, or something makes changes in your Google Ads account.

Change happens.

Some changes are good. Other changes…not so much.

Occasionally, some of the most terrible changes pop up in your change history.

And the worst thing…they do so without you noticing!

Remember that last client of yours? That stubborn, overly self-confident ego-driven maniac?
He decided he knows best.
Made some “minor” changes to your carefully optimized account.
All by himself.
Changing ad copy, reducing test budgets, and adding non-brand keywords to your BRAND campaign…the horror.

Or maybe that overly ambitious intern that joined your team last week…Negating keywords all over the place!

And let’s not forget the worst of the worse; your colleague accidentally hitting the ‘Apply’ button next to one of Google’s Recommendations.

Oh dear.

Here’s the thing:

It is your job to manage and optmize your account.
Therfore you want be in the know when someone else makes any unanticipated change.
And you want to know immediately!

Thankfully, there’s a script for that!

Today I am sharing a stripped-down version of one of my favorite scripts in my private stack:

Continue reading “Google Ads Script – Change History Alerts”

Google Ads Script – Increase shopping feed update frequency

Do your products’ prices change more than once per day?
Or do products easily go out of stock during the day?

If so, bad news: you’re losing money every day!

The Google Merchant Center interface only supports a max of once-per-day updates of the product data in your shopping feed.

 

Google Merchant Center feed schedule rate

 

Because of this fetch rate limitation, your shopping campaigns may show outdated product listing ads on the Google SERP.

Outdated Shopping Product Listing Ads

Even worse, your ideal customer may click on your product, land on your website, only to discover the price isn’t as advertised, and then LEAVE WITHOUT BUYING!

There goes your money.

Now enter a world where your shopping ads are always up-to-date, showing your latest price, and respecting your current availability status.
No more false promises in your shopping ads. Landers that deliver the promise. Converting clicks.

This requires products that are up to date with the data in your shop and product feed. Every hour of the day.

Impossible?
Not anymore.

Here’s my script to automatically update the data in your shopping ads, every hour.
Continue reading “Google Ads Script – Increase shopping feed update frequency”