What should I tell Jake?

This morning, my inbox surprised me with a message that I had to read 3 times. It made me laugh and cry at the same time.

Here it is (I faked his name for privacy reasons):

Hey Nils,

[…] 

I have been working as a fake Google Ads specialist for 9 months by only running Smart Shopping for some retail clients.

I want to learn how to manage Google Ads properly and become a real PPC specialist. What should I do?

Jake

Seriously, what should I tell him? 

– Nils

Do you want to steal away some of your competitors’ potential clients?

Do you want to steal away some of your competitors’ potential clients? If so, this little trick might be for you.

In the past, we used to run all of our competitor campaigns(*) on manual bidding with a CPC bid, and made sure we ranked at the top of the page.

We noticed that it was very hard to make these kinds of campaigns profitable because Quality Scores, CTRs, and Conversion Rates tend to be really low compared to the generic keywords in our accounts. This resulted in CPAs that were mostly too high.

Not anymore.

A few months ago, we started testing smart bidding on competitor campaigns, and the results have been very compelling.

Here’s the data from one of the latest experiments:

(click image to enlarge)

Note that the only difference between the original and the experiment is the bidding strategy. Search term analyses did not show a significant difference in the types of searches our ads showed for.

What this tells me is that Google’s target CPA bidding has learned how to discriminate between clicks from people who are open to an alternative, versus the people who are specifically looking to buy from the competitor.

Great job Google, smart bidding FTW!

(*) Note that competitor campaigns are campaigns that only contain competitor brand names as keywords.

– Nils

[Google Ads Scripts] “But what if it breaks?”

One of the new students in my Google Ads Scripts training asked a question that I know a lot of PPC specialists struggle with before running their first scripts:

“Is anyone here worried about scripts breaking things in their Google Ads account?”

The critical phrase here is “in their Google Ads account,” and the good news is: you don’t have to be worried!

Enter the ‘Google Ads Scripts Preview Mode’.

When scripts are executed in preview mode, they make no changes to the account or actual campaign data. Instead, script execution shows the changes that would have been made had the script been executed. Once you’re satisfied with the output, you can start the live execution of a script or schedule it.

Preview mode is a powerful feature, as it allows you to develop and debug a script without worrying about erroneous changes being made to your Google Ads data.

Note, however, that if the script is programmed to make changes to anything outside of Google Ads (like for example adding data to a spreadsheet), the Preview mode will make this happen.

So, no need to fear. You can start testing one of these 400+ free Google Ads scripts today!

– Nils

start migrating your Google Ads scripts

ICYMI: We all need to migrate our Google Ads Scripts to the new scripts experience before October 31, 2022.

Any scripts left unmigrated will be automatically migrated and may be paused on October 31, when legacy scripts sunset.

You should manually move your scripts over to the new experience before then to ensure continued functionality. 

Luckily for us, most scripts do not require any changes to the code.

Take note: Google has tried to implement backwards compatibility, but it can’t guarantee every script will work without changes, so definitely take some time to confirm yourself.

Here’s more info: https://developers.google.com/google-ads/scripts/docs/migration

Having trouble migrating? Let me know.

– Nils

[2022 PPC Salary Survey results] Is it time to negotiate your raise, or start looking for a new job?

Last month, I sent out an email requesting my newsletter subscribers to participate in this year’s PPC Salary Survey.

If you participated in the survey, on behalf of Duane (the driving force behind the initiative) and myself: a big Thank You!

Data like this gives us PPC peepz some bargaining power!

You can (re)negotiate salary for your current role (or a new one) with your employer, or use it in negotiations with a new employer.

Last week, Duane shared the results. Here you go:

Final Report: PPC Salary Survey 2022
https://www.reddit.com/r/PPC/comments/tk2tc0/final_report_ppc_salary_survey_2022/

Here’s one comment that stood out for me:

Thank you Duane for this great piece of work!

– Nils

Want to easily remove duplicate queries in your account?

Are you curious to learn about duplicate search terms in your account?

Duplicate search terms occur whenever the same search term is being triggered by different keywords, in ad groups you didn’t intend them to.

Bad news: duplicate search terms make it harder to optimize your account.

Good news: there’s a free Google Ads script you can use to help you quickly resolve the issues.

Here it is:

Duplicate Query Checker for Multiple Accounts

URL: https://adsscripts.com/scripts/google-ads-scripts/duplicate-query-checker-across-accounts

What it does: 
The script checks if a user query is matched to multiple keywords. This could be in the same ad group, across ad groups, and across accounts. If it finds a duplicate, the script then writes the results to a Google Sheet. This way, you can easily spot duplicates and create negative keywords to prevent them.

Why you’d care: 
Having the same search query leading to different ad groups can be bad news (unless you intentionally use different targeting settings). The data about that query isn’t all in one place, making it harder to see how it is performing. It also gets in the way of managing bids: if some queries do badly, turning the bids down in one group can mean the search term will just pop up again in a different group that now has the higher bid, continuing to waste your money.  

Happy scripting!

– Nils

What if you had no competition?

Many of us spend a lot of time analysing competition (e.g., via auction insights).

I think this is a poor move.

Competition only exists where you let it.

Worrying about competitors is a sign that you haven’t yet understood what makes you and/or your client unique.

Once you fully understand the uniqueness, you’ll never worry about competition again. (*)

– Nils

(*) I like to express uniqueness in terms of a truly unique value proposition for the right (narrow) target audience, and translate these into creatives and targeting settings of my campaigns. This encourages clicks from potential customers while discouraging clicks from people outside of the real target audience, leaving competitors on a different playing field.

You want to increase your output?

Assuming you want to get the most out of your time, it makes tons of sense to find new ways to do your work quicker, better, and more easily.

This could mean building elaborate systems like complex script automations or mosaic Excel macros. Luckily, it doesn’t have to.

Here’s a simple setup that you can create in 30 minutes and will likely save you a lot of time in the long run.

Hotkeys and Text Expanders

Install a text expander application on your devices and load it up with text snippets that you frequently use. 

Inside Google Ads, I use it to easily paste the standard disclaimers that are required in my ad copy and to paste the default call-to-actions.

Outside of Google Ads, I use it to paste email signatures and some canned responses I frequently use in my email communications.

The tool I use is https://www.autohotkey.com/. (There are loads of other options, too.) 

To come up with your first batch of snippets, go to your recent ad creatives looking for anything repetitive. Even small things like the URL to your website, your top keyword, or a descriptive phrase can make a big difference. 

I also use AutoHotkey to create keyboard shortcuts.

Some examples of my keyboard shortcuts include:
– [Windows key + X], with X being a single digit, to open different browser profiles (since I use different profiles for different Google Ads accounts)
– [Windows key + ‘e’] to open Google Ads Editor
– [Windows key + ‘x’] to open Excel

What are your favorite shortcuts? I’m curious to know. You can email me about them at nils@nilsrooijmans.com.

– Nils 

The full new version of the Google Ads scripts experience is here

FYI: Google has launched the full version of the new Google Ads scripts experience.

The beta has been running since June of last year. Now, the final batch of features to match the functionality of legacy scripts has been released.

Here’s an excerpt from this week’s notice:

Starting soon, all new scripts will default to the new scripts experience, although you can still disable it on a script by script basis if necessary.

Existing scripts won’t be affected until September of 2022. After that, we will migrate all scripts to the new experience.

You should manually move your scripts over to the new experience before then to ensure continued functionality.

We’ve tried to implement backwards compatibility, but we can’t guarantee every script will work without changes, so definitely take some time to confirm yourself.

More details here: https://ads-developers.googleblog.com/2022/03/new-google-ads-scripts-experience.html

Note that the previous beta experience did not support manager scripts (MCC level). This latest release does support manager scripts, so you can start testing and migrating these as well.

If you are already migrating your scripts, please do let me know how it goes for you. You can email me at nils@nilsrooijmans.com.

– Nils

risky business

Wouldn’t it be great if you knew that every new campaign would be a great success? This could mean:

– Next to your highly optimized STAG alpha campaigns, you run a broad match beta that delivers 20% more clicks at the same CPA.
– You expand your account with some display remarketing campaigns, and get thousands of dollars extra profit next month.
– For the latest product in your client’s shop, you launch a Performance Max campaign, and the product sells out in the first week. 

Unfortunately, things don’t work like this. Anything worth doing brings with it a certain risk. In our PPC world, this could be: a non-zero chance of you wasting some (or a lot) of the budget on clicks that don’t convert.

Yesterday, I had a client asking me to promote a new product.

I explained to the client my expectations are low; the product is relatively expensive compared to the alternatives, the USPs only resonate within a small set of the market, and the keywords used by the target audience are also used by a lot of people that are outside of the target audience.

Conflicting thoughts went through my head:

– There’s no way I am going to do this, the risk of disappointing my client is too high
– What will my colleagues think if this turns into one big failure?!
– But damn, this could be a nice opportunity to discover the effects of a new campaign setup I’ve been thinking about for weeks.

Yes, I do feel that some smart bidding magic just might be able to detect the right audience signals and zoom in on the clicks from the audience that will convert.

So, here’s what I did:

1. Coordinate clear expectations with the client (“this is a test, we need a separate test budget for this, with zero ROI expectations for the next 6 weeks”)
2. Formulate success criteria for the last week of the test, based on our main KPIs (“we aim for 50 transactions per week at a ROAS of 450% or higher”)
3. Come up with a reasonable strategy to test smart bidding for the new product
4. A detailed plan for the setup and daily/weekly optimizations for the new campaign

If you have these things in place, there’s really no reason not to take the risk. 

Here’s the thing: to grow your account without risk is to risk not growing your account at all.

– Nils

Free script to pause campaigns automatically when a site is down

Do you like paying for clicks that go nowhere?

I don’t. 

So, whenever one of my clients’ websites goes down, I want to be in the know. Immediately.

That’s why I use Uptime Robot to monitor the uptime of all my clients’ websites.

Uptime Robot alerts me when a website goes down, so I can immediately pause campaigns and stop wasted spend.

When the site is up again, I re-enable the campaigns.

Our PPC friends at the Greenhouse Group even created a script to automate this process for us. Here it is:

Google Ads Uptime Robot Monitoring Script

URL: https://www.themarketingtechnologist.co/pause-your-adwords-campaigns-automatically-when-a-site-is-down/

What it does: 
Pause campaigns when your website is down, and re-enable them when your website is up again.

Why you care: 
Many things can cause your website to go offline (such as website maintenance, CMS problems, hardware failures, DNS issues, and malicious hackers). You do not want to spend money on clicks when it does.

Happy scripting!

– Nils

Want to reduce load times for the Google Ads UI?

Fellow list member Erik Zomerhuis sent an email with a common question (shared with permission): 

“How to deal with the extremely slow loads of the Google Ads UI?”

A year ago, I had sent out an email to my subscribers, jokingly explaining the issue:

1969:
    “What are you doing with that 2KB of RAM?”
    “Sending people to the moon”

2021:
    “What are you doing with that 2.4GB of RAM?”
    “Running Google Ads in a Chrome tab”

Here’s the possible fix I had shared:

“Here’s the thing: want to speed up the loading of your Google Ads interface?

Increase both the number of CPU cores and your RAM. I have 4 and 16 GB. (*)

Best investment I made in a long time.”

(*) The Google Ads interface is very, very heavy on Javascript. 20MB (!) per tab. See screenshot from Lighthouse performance analysis below. The Javascript increases load times AND is also responsible for a big memory footprint as well as CPU hogging. Increasing CPU power and memory in your computer will increase performance and load times.

– Nils

[Performance Max] Upgrade tool for SSC and Local campaigns announced

In an online presentation today, Google showed us their tool to upgrade your Smart Shopping and Local campaigns to Performance Max. Here’s the URL: https://adsonair.withgoogle.com/events/get-ready-to-upgrade-to-performance-max

You can upgrade your campaigns manually at the start of the upgrade period, or have Google automatically upgrade them for you. The upgrade period starts on April 2022 for Smart Shopping and June 2022 for Local campaigns. You will have until August/September to do this manually. After that, Google will automatically update both campaign types to Performance Max. This should be finished in September 2022.

Basically, the upgrade tool allows you to upgrade all campaigns in bulk or one-by-one with a few clicks. Nothing fancy. Be warned, the Smart Shopping and Local campaign types will cease to exist after September 2022.

Now, here’s a tip for those of you who might be scared by the extinction of Smart Shopping: asset groups are not required if you already have a Merchant Center product feed!

You can simply take your SSC and turn it into a PMax campaign, and if you do not add any additional ad assets like images, videos, headlines, or descriptions, it is still a Smart Shopping campaign — only it is called Performance Max now. This way, you can keep the same performance and don’t have to worry about losing traffic and conversions.

– Nils

every single audience inside Google Ads, in one complete list

In Google Ads, knowing what audiences are available for you to target is hard. Horribly hard, if you ask me.

You have to go into the Google Ads interface (which still loads terribly slow) and use the tiny little search box to search for available audiences, just to know all that is available! 

Wouldn’t it be nice to have a complete list of every single audience inside Google Ads that you can target?

Enter the Google Ads Developer website:
https://developers.google.com/adwords/api/docs/appendix/codes-formats

Look under ‘Affinity categories’ and ‘In-market categories’. 

Amazing, right? 

That’s actually one of the benefits of creating Google Ads Scripts yourselves: you will learn some quirky details about the Google Ads platform that aren’t exposed via the standard support docs.

You want something even better?

Here’s the ZATO Google Ads Audience Targeting List of Affinity Categories & In-Market Segments. It is one super easy-to-read, color-coded, and completely filterable Google Sheet with all the audiences right at your disposal.

Great job guys!

– Nils

smart bidding and guardrails

Some Google Ads campaign managers say that ROAS or CPA targets safeguard your smart bidding campaigns. In my experience, this is only true if your target is very close to past averages.

If a ROAS target is set, say 1.5x or 2x your last_30_days average (or any realistic ROAS altogether), it is likely to stop the campaign from generating any clicks. In the other way around, set it at 70% or even 50% of your last_30_days average, and your campaign will spend like crazy with hardly any extra conversions.

ROAS targets don’t safeguard your campaigns. A decent setup does. 

If your campaign manager says that a ROAS or CPA target is necessary to “safeguard smart bidding,” politely suggest that if they really want to safeguard smart bidding, they should invest some time in a proper setup.

My $0.02. Your ROAS may vary.

– Nils