How I use Standard Shopping to maximize profit (Part 2)

(For your convenience, the link to part 1 of this is provided below.)

Have you ever had an e-commerce client that wanted to maximize profit instead of revenue?

If so, join me and our PPC friends at Product Hero in their upcoming webinar next week ‘Everything you need to know about POAS’.

In the webinar, I’ll present my A/B testing approach for Standard Shopping, which allows for optimizing your ROAS/POAS targets to maximize your profit.

Here’s a sneak peek:

Here’s the link to the webinar (7 August, 13:00 CET, 30 minutes):
https://producthero.com/en/profit-on-ad-spend-poas-webinar

See you there?

– Nils

P.S. As promised, here’s the link to the first part: https://nilsrooijmans.com/daily/how-i-use-standard-shopping-to-maximize-profit

see which keyword triggered which ad

With the deprecation of SKAGs and the rise of STAGs, single ad groups often contain tens of keywords.

And your ad groups most probably contain more than one ad.

This is all well and good, but how do you know what keyword triggered what ad?

Luckily for us, the Google Ads UI has a hidden feature that gives some clarity:

1. Navigate your way to your ad group
2. Click “Ads” 
3. Click “Segment”
4. Click “Keyword text”

Here’s what that looks like:

Hey Mom, look at that, I’ve got keyword stats per ad! 🙂

You can use these insights to optimize your ad copy and/or lander.

For example: 

  • Include the top keywords in your headlines 
  • Address the intent behind the top keyword in your description 
  • Create a separate lander for a popular keyword that has a slightly different intent from the rest of the keywords

Enjoy!

– Nils

PS: Sharing is caring! If you enjoyed this episode, please consider sharing it with a few friends who might find it useful. Thanks!

the need for speed

Here’s a pop quiz question: name a conversion rate killer that tanks results AND is often very tricky to spot.

You’ve guessed it! 

It’s high page load times!

Even the best landing page copy with the best design can’t stop high page load times from tanking your conversion rates.

And the bad news is that it can be tricky to spot them.

Right now, your landing page might load within 1.3 seconds.

A few minutes from now, it might take over 8 seconds!

An 8-second page load time = 0 conversions!

Here’s the thing: unless you frequently monitor page load times of your top landing pages, you are wasting $$$ on clicks that don’t convert for the wrong reason.

Here’s a short list of my favorite tools to help you spot and fix the issue:

1. Chrome extension: Page Load Time
This extension shows the page load times for every page you load in your browser. Quick and simple!
URL: https://chromewebstore.google.com/detail/page-load-time/fploionmjgeclbkemipmkogoaohcdbig?pli=1

2. Chrome Lighthouse 
This tool allows for automated page performance audits. The report lists improvements by priority and can easily be sent to webdev.
URL: https://developer.chrome.com/docs/lighthouse/overview/

3. Webpage Test
A reliable webpage performance test for free, from almost any location on earth.
URL: https://www.webpagetest.org/

4. GA4 page load times report
Track actual page load times from your users using GA4.
URL: https://measureschool.com/track-ga4-page-load-time/

5. GT Metrix
Reports how fast your website loads, PageSpeed, YSlow scores, and other page details. It also allows you to compare your site to other websites’ performance, set up alerts, and even monitor your load time. 
URL: https://gtmetrix.com/

– Nils

[Google Ads Script Review] Campaigns Reporting Script (Fun Edition)

Not convinced you can create your own scripts without any coding skills

Watch this.

Campaigns Reporting Script (Fun Edition)

What it does:
This Google Ads script creates a nicely-formatted email that reports the performance of your campaigns. It includes funny emojis to help you discriminate between good-performing campaigns and bad performers.

Why you’d care:
Simple reports like this can give you a quick and easy look into your account’s performance and ensure all is well. Peace of mind with a single click 🙂

Why I like it:
This script is 100% generated with AI. In a few minutes. Without any coding skills required! The author, Geert Groot, used the latest version of the Large Language Model Claude AI to create the script for him. It only took two prompts:
1st: Make me a Google Ads reporting script for enabled campaigns.
2nd: How can we make this more fun.
Note: Geert doesn’t know how to code. He has learned the basics of scripting (partly via my course on using GPT to create scripts for you), and has experimented a lot with prompts to learn how to have LLMs create scripts for him — with success!

URL: https://docs.google.com/document/d/1UcGx48fPzEV2FFaA29S273TzZH8NFY_6bQvLkVsQp7k/edit?usp=sharing

PRO TIP:
After installing and running the script, have a look at the output in your inbox. Come up with some ideas to improve the report and customize it to your own needs. Then, head over to your favorite LLM (e.g., ChatGPT/Claude/Gemini), feed it the script, ask it to explain the script, and then ask it to improve the script and implement your requirements.

Don’t give up if it doesn’t work immediately. Simply feed error messages back to the LLM and ask it to fix them. Treat the LLM like your new intern. Be patient, and be concrete in your requests. Be surprised 🙂

Happy scripting!

– Nils

How I use Standard Shopping to maximize profit

Ever had an e-com client that preferred increased profit over revenue growth?

If so, be sure to join me and our PPC friends at Product Hero in their upcoming webinar ‘Everything you need to know about POAS’.

In the webinar, I present my “Gatekeeper Architecture” for Standard Shopping, which allows for controlled growth of your profit.

Here’s a sneak peek:

(The parts in green are automated via Google Ads Scripts.)

Here’s the link to the webinar (7 August, 13:00 CET, 30 minutes):

https://producthero.com/en/profit-on-ad-spend-poas-webinar

See you there?

– Nils

[PPC Productivity] Lorem fill, your cure to form fatigue

Have you ever had to fill out a form tens of times just to test if conversion tracking is set up correctly?

Re-populating these empty input fields with dummy data, countless times…

Ugh.

Here’s the good news: with the Lorem Fill plugin you can skip the horror of these endless mouse-click-type repetitions.

This plugin allows you to complete all input fills in a single stroke.

Here’s what that looks like:

Here’s the link:

https://chromewebstore.google.com/detail/lorem-fill/jfjnfhfeibkcokofbeipmehclfdojpaa

– Nils

magical experiences

I just got back from my vacation.

A motorcycle road trip through Oregon and Idaho.

There’s something magical about motorcycle road trips.

You go where the roads take you.

You don’t know where you are going.

You don’t know where you’ll end up.

There’s no way to get lost.

If you are on a motorcycle you can’t get lost.

You are there.

I’ve created my best scripts while having the same magic feeling.

Not knowing where I am going.

Just open up the white space in the script editor and start scripting.

See where the code takes you.

It’s magical.

– Nils

reporting confession

I’ve got a confession to make.

In Wednesday’s mail, I told you I don’t do fancy reporting, and offered you a script to automate the very limited data that I do report. (Email repeated below for your convenience.)

It’s true; I do not send fancy reports to my clients.

However… I do advise many of my coaching clients to use a fancy reporting tool!

What’s that, Nils? You don’t eat your own consulting dog food?

No. And yes.

Here’s what happens.

Many of my coaching clients are small to medium-sized agencies that want to do more with less hands. I help them automate the work so they can increase revenue without increasing headcount.

They typically serve tens if not hundreds of clients.

One of the main things that takes my clients forever? Sending out monthly, or even weekly, reports to their clients!

Many agencies have clients that simply expect them to send detailed reports. On time, every time. If they don’t, the client starts dialing numbers.

Many agencies use detailed reports as an entry point to start a conversation. That conversation with the client increases client retention.

Many agencies simply promised it in their initial offering.

Many reasons. Many hours of tedious, labor-intensive data gathering, number crunching, dashboarding, writing summaries, sending out emails…

Many hours of wasted time.

Wasted? 

Yes. Because you can automate almost all of it, and I’ve got just the solution for you.

IF…

  • you are swamped with daily reporting tasks and are losing your mind over it
  • or, you’ve cobbled together some data source connectors that should work, but never do
  • or, you are fed up with time-consuming setups for each new client
  • or, you simply do not have the time to learn new complex tooling
  • or, you don’t have the money for overpriced reporting solutions

THEN…

your GO-TO solution is Swydo.

I’ve found Swydo to offer the best price-to-quality ratio when it comes to automated reporting, for these reasons:

  • it aggregates data from the major platforms
  • it has a very small learning curve (easier to implement than Looker Studio)
  • it offers a free trial with a great onboarding service (get your specific report running in 20 minutes!)
  • it allows for copy-paste templates you can use for each new client
  • it’s the cheapest solution out there unless you want to spend a lot of time on the plumbing and client setups
  • it is reliable and robust (reports go out on time, every time)

Don’t get me wrong, it won’t give you the flexibility of a custom reporting setup using Supermetrics, Big Query, and Looker Studio. If that’s what you need, go for it.

Swydo is low effort, low cost, and just good enough. And good enough is what most agencies need.

– Nils

PS: If you want a reliable and affordable solution to automate your performance reporting -> sign up for a free trial

When you are happy with the tool and ready to upgrade, mention “NilsRooijmans” during the upgrade to get a $100 discount. 

I’d still share these tips without the kickback, but a few extra bucks is nice!

Here’s the link again: https://www.swydo.com/?utm_source=nilsrooijmans&utm_medium=newsletter&utm_campaign=jun2024)

Lastly, as promised, here’s the email from Wednesday: https://nilsrooijmans.com/daily/google-ads-script-monthly-reporting-my-very-basic-version

Google Ads Editor freezing again: here’s my fix

One of the most annoying things in my PPC workday?

Google Ads Editor stalling.

It’s constantly freezing when downloading my account, not responding at all after multiple attempts. Again, and again. 

Yes, also after checking my internet connection, resetting my machine, downloading the latest version of the tool, and only selecting the basic download of a selection of the campaigns.

I’ve tried everything from signing in and out, removing temp files, disabling virus checkers, using VPN, and turning off Cloudflare… nothing works.

It still freezes.

Sounds familiar?

If so, try this solution for large accounts: you can force the download to finish by changing the download mode in Google Ads Editor! 

For Windows:

  • Select Start > Run, then type cmd.
  • Press Enter.
  • Enter the following command: cd “C:\Users\%USERNAME%\AppData\Local\Google\Google Google Ads Editor”
  • Press Enter.
  • Enter the following command: start google google_ads_editor_launcher.exe -dlMaxRequests
  • Press Enter.
  • Restart the account download.

FINALLY! I got the complete account downloaded in Editor again. (It still took 3 hours, though.)

Here’s a bunch of additional resources that will help you get the job done and Google Ads Editor back up to speed:

Uninstall and remove temp files:
https://support.google.com/google-ads/editor/answer/30515?hl=en

Download and install the latest version:
https://support.google.com/google-ads/editor/answer/30513

Select a portion of the account and download only basic data:
https://support.google.com/google-ads/editor/answer/30542

Make sure to not download images and videos:
https://support.google.com/google-ads/editor/answer/38872?hl=en

Log diagnostics to see what went wrong:
https://support.google.com/google-ads/editor/answer/94249?hl=en&ref_topic=9314

Hope this helps,

– Nils

[Google Ads Script] Monthly reporting: my very basic version

I don’t do fancy reporting.

In the end, there are only 4 numbers that matter:

  1. Google Ad Spend
  2. Gross Profit (from Google Ad Spend)
  3. My Google Ads Management Fee
  4. Your Net Result (‘net result’ = ‘profit’ – ‘ad spend’ – ‘management fee’)

Here’s what that looks like:

Here’s how I automate that via Google Ads Scripts: https://nilsrooijmans.com/google-ads-monthly-reporting-script-my-very-basic-version/

Go ahead, try the script right now!

It only takes 5 minutes to set up, and your clients will love you for the simplicity.

Happy scripting!

– Nils

help me decide the next course?

I am recording a video course on Google Ads Scripts this summer.

Can you help me decide on the exact contents?

I’ve prepared 3 different courses for different levels and need some advice on which one to start with:

A) Google Ads Script Tutorial for Absolute Beginners

  • Learn the absolute basics. 
  • At the end of this tutorial, you’ve learned just enough to comfortably install, test, and run your Google Ads Scripts, AND you’ve installed the 5 best scripts for your account.
  • Contents: 5 15-minute videos + 5 exercises
  • Your total workload: 4h
  • Price: ~$170

B) Google Ads Script Training for Beginners

  • Learn to create basic scripts.
  • At the end of this training, you will be able to read and understand almost any Google Ads script out there, understand basic Javascript concepts AND you’ve created your first, very own, Google Ads Script from scratch. 
  • Contents: 8 15-minute videos + 8 exercises
  • Your total workload: 8h
  • Price: ~$470

C) Google Ads Script Course for Intermediates

  • Learn to fix and write Google Ads Scripts for any task.
  • At the end of this course, you’ll know about all Google Ads Scripts concepts and how to use them. You’ll be able to fix and write scripts for almost any task in Google Ads.
  • Contents: 12 15-minute videos + 12 exercises
  • Your total workload: 20h
  • Price: ~$1470

D) Other, namely…

For A, B, and C, please rate your level of interest in each on a scale of 1 (least interested) to 7 (most interested).

If you respond in the next 48 hours, you will get access to an early bird discount.

Thanks a ton for your help!

– Nils

[Google Ads Script Review] PMax Shopping Spend Drop Alert

Are you running PMax campaigns and do you hate wasted ad spend?

If so, here’s another Google Ads Script for you. 

What it does:
This script monitors Performance Max campaigns across multiple Google Ads accounts under an MCC. It checks if these campaigns were served in Google Shopping the previous day and if their spend meets a specified threshold. If any campaigns do not meet these criteria, the script sends a warning via email.

Why you’d care:
For most advertisers running PMax campaigns, clicks from the Shopping PLAs are the main revenue driver. Spending the budget on other channels like Display and YouTube mostly tanks results. If, for some reason (*), PMax stops generating clicks from Shopping and/or starts spending much more on Display or YouTube, you want to be in the know.

(*) Potential reasons for PMax dramatically shifting spend to non-Shopping channels:

  • Main products go out of stock
  • Main products get disapproved
  • Settings mistakes: wrong exclusion settings in product groups (e.g., custom label filters), too low/high ROAS targets, budget too high
  • Sudden change in actual ROAS performance due to: sale promotions, seasonality, competitor pricing, increased brand traffic
  • Google’s greed to make more $$$

Why I like it:
This script will help you monitor PMax behavior and make sure performance stays on par. It is another great example of how I like to use scripts to Keep an Eye on Google’s AI.

URL: https://drive.google.com/drive/u/0/folders/1GsgWS3GYeIXxTBvHyxJrkY-Za3FD1Vd8

Note on the installation:

Be sure to read the instructions in the Google Drive folder.

PRO TIP:
Learn about 15 other scripts I use to optimize PMax campaigns by watching the recording of my SMX Advanced session on “Mastering Performance Max campaigns using scripts.”

Happy scripting!

– Nils

What role do I want my work to play in my life?

When you consider a new client or job opportunity, one of the first questions to ask is: 

“What role do I want my work to play in my life?”

Make as few decisions as possible that violate your answer.

Here’s the thing:

Many opportunities are disguised in excitement but actually give you less of the life you want.

– Nils

betting to grow

In PPC, every decision is a gamble.

When you decide on a course of action, you’re betting that your decision will pay off.

It might work, or it might not work.

You don’t know in advance.

You CAN’T know in advance.

You have to test.

You have to take a chance. 

As with all bets, you must put some “chips on the table” for a chance to “win the pot.”

The trick to making good decisions over the long term is to consistently try to maximize your payoff and minimize losing what you put at risk.

In other words, don’t “bet the total monthly budget” on a long shot that is highly unlikely to pay off.

Instead, make lots of small bets that have the potential of paying off big.

Placing small bets on new products, new keywords, and new audiences.

That’s how you grow your PPC accounts.

– Nils

Join me at SMX Advanced: free session on Mastering Performance Max using Scripts

Are you having trouble getting consistent results from PMax?

Do you feel PMax is wasting your spend?

Or does scaling PMax campaigns feel like a hit-and-miss to you?

If so, please join me in my session about ‘Mastering Performance Max using Scripts’. Coming up at SMX Advanced next week!

You will learn (1) how Google Ads scripts can open up the black box that PMax is, and (2) how you can use scripts to automate PMax optimizations that would not happen without them.

Hope to see you there!

Session Title: ‘Mastering Performance Max using Scripts’ 

Date and Time: June 11, 12.30 PM – 1.30 PM (EDT) / 18.30 – 19.30 (CEST)

Register for free: https://searchengineland.com/smx/advanced/agenda

should you increase your impression share?

Last week, one of my coaching clients asked how they could improve impression share for good-performing keywords.

Here’s my answer:

I am not sure if a “better impression share” is really what you are after; sometimes “worse” impression share leads to more profits.

The reason for this is that Impression Share (IS) includes all auctions where your ad showed (impressions), and all auctions where your ad is competitive enough to enter the auction (total eligible impressions).

NOTE: The total volume of searches out there might be much higher than your number of total eligible impressions because of your targeting and/or budget and bidding settings preventing you from entering the auction.

Impression share (IS) is the percentage of impressions that your ads receive compared to the total number of impressions that your ads could receive. Here’s an example:

Impression share = impressions (47) / total eligible impressions (100)

Thus, IS = 47%

It might very well be that with a CPC bid that is 200% of your current bid, you achieve an IS of 72%. However, your CPA might increase drastically because of your higher spend on acquisition.

That being said, there are some cases where it makes sense to try to increase your IS. Here’s how:

1) If you are happy with the current CPA, AND your campaign is limited by budget, meaning ‘Search lost IS (Budget)’ > 0% —> simply increase budget (I recommend steps of 20%)

2) If your current CPA is below your targets, AND your campaign is NOT limited by budget —> try increasing your CPA target (again, I recommend steps of 20%)

3) If your current CPA is around your target or higher —> 
   3.1) improve your targeting (add negatives, exclude low-perf placements, exclude low-perf locations, exclude low-perf audiences, exclude low-perf demographics) 
   3.2) improve your ad quality. Also see: https://support.google.com/google-ads/answer/6167130?visit_id=638516356303037699-3656695430&rd=1

– Nils

create an edge

One of the characteristics of Google Ads Scripts that I probably don’t talk about enough is this:

Google Ads Scripts give you an edge over your competition.

Here’s why:

In an AI-driven world, where Google is trying to automate everything for the average advertiser, scripts allow you to automate the stuff at the edges.

It is at the edges where you make the difference and discriminate yourself from your competitors.

Here’s the thing:

Google Ads Scripts allow you to create automations that are unique for you and your clients.

(And the more uniqueness you create, the better you position yourself for this AI-driven future that levels our playing field.)

– Nils