The Google Ads Framework Behind $101,790,000 in eCommerce Revenue

I was going to start this article with, “many people have asked for…,” but I don’t think anyone has asked for our framework. I’m not sure if many people—aside from our clients—who have been in an introductory call with me even know that we have one.

Nevertheless, I feel our framework can be used for inspiration for many of you as it is a powerful tool. A framework proven to work time and time again is partially what you get when you work with an agency.

This article is for other PPC specialists, but I believe that in-house teams can use it as well. Just replace “client” or “advertiser” with “boss” and think of your current account as the “new client.” Everything still applies.

We have implemented the same framework in-house for a few clients, and it works really well.

Our Methods: Summarized

First, it’s important that you understand our mindset. Blindly following our framework without having our mindset will get you nowhere.

So, let’s start with the mindset 🙂

Automate everything—even the things you want to do yourself. Everything you find exciting now will be boring in six months.

But, do things that don’t scale (if it’s quick). If you need to make an impact quickly, then do those tasks first and find a way to automate afterward.

The machines are better than us at math and repetitive tasks. Find the best way to feed the machine, control it, and get out of its way. That way, you can focus your time where you can make an impact.

Try new things and break stuff*, and we’ll forgive you. Ask for permission constantly, and your growth with SavvyRevenue will be limited.

The impact you have on account performance is everything. Analysis without action means nothing. You can work hard at getting to the core of the problem for hours, but without actually fixing the problem (aka making an impact) you might as well have played ping pong the entire time.

We understand and solve the business problem, not the Google Ads problem.

Is mobile getting more and more traffic, but the business has no plan for improving their website for mobile users? Our thought process is: Show clients the evidence and enable them to fix it. It will drive much more value than anything else they’ll do in Google Ads.

In this example, “breaking stuff” is relative. It doesn’t mean spend thousands of dollars by not double-checking your work. It means that you shouldn’t hound over every little detail and delay a launch. Get comfortable with launching efforts that are 95% complete, and fix the last 5% the following day when you have a clear head.

Big Picture Proven Process

Big Picture Proven Process

Before we get started on Google Ads, we first need to establish a client-agency fit.

This article is not intended to go into depth about this, so we will just briefly touch upon it:

  1. Establish Client-Agency Fit (Product, Logistics, Finances, People)
  2. Set Initial Revenue Target  and 90-Day Onboarding Plan
  3. Apply Low-Hanging Fruit Optimizations
  4. Optimize Google Ads and Execute Plan
  5. Ongoing Communication: Weekly, Monthly and Quarterly
  6. 90-Day Planning:
    • Determine actions that will deliver the most impact the next 90 days, then go back to step four
  7. Go Deeper: Profit, Customer Lifetime Value, New Marketing Channels, Email Value, etc.

The most important aspect of this as it relates to today’s article is #2:

Set initial target and 90-day plan

It’s crucial that we establish the right plan for every single advertiser before we get started. That plan might differ plus/minus 20%, but the fundamental plan will hardly ever change.

Now, to our Google Ads framework.

Our Google Ads Framework: How We Approach Every Case

The headline says we approach every case like this, but there’s more to the story. We do go into every case with this framework, but we change about 20% of it depending on the client situation.

We have room to do that because we have such a narrow client focus. This means we can take the time to dig deep into the details for every eCommerce store and make changes to the minor aspects rather than being stuck only focusing on the larger aspects.

Our high-level framework consists of:

  1. Stop the bleed: focus on low-hanging fruit
  2. Google Shopping with keyword split
  3. Automated Search with feed-based campaigns
    • Priority on keyword-types with highest likelihood for converting (brand, model, product, and generic)
  4. DSA to be the safety net to capture all keywords
  5. Automatic bidding (when we can)
  6. Routine tasks performed exceptionally well
  7. Every 90 days, we find the areas with the highest potential for increasing performance.
    • Sometimes that’s just tweaking what we have. Sometimes it’s digging deeper.
    • Sometimes it’s focusing our routine optimizations on a couple key aspects.
    • Sometimes it’s rebuilding and rethinking our approach to something.
  8. Once we have the basics in place, we expand to price monitoring, attribution, seasonality and diagnosing challenges in their business.

Now, let’s break down each step:

1) Stop the bleed: focus on low-hanging fruit

Whenever we take over a new Google Ads account we know there are three to five things that can move the needle. In some cases, we can save a bit of money quickly. For others, we can create significant traction immediately.

You may be wondering, “Why do we spend time on optimizing something that we will pause shortly?”

Because it takes between two to four weeks to get our new setups launched. By week four, we will have worked an entire month and if we have done nothing to improve an account’s performance, then:

  1. We aren’t delivering value
  2. We put more pressure on ourselves for our new setup to work
  3. If our new setups don’t work, we don’t get a second chance

But if you can get easy improvements by focusing on low-hanging fruit, then do it.

It’s the same for you who are reading this who are in-house. Even if you’ve worked on your own account for years, and have neglected the account for a bit, then you can start with the low-hanging fruit.

2) Google Shopping with keyword split

In 80% of cases, we use a Google Shopping campaign structure with a keyword campaign split. It works incredibly well and allows for a quick setup seeing as we have a lot of experience with the campaign structure.

In a nutshell, the campaign structure is about using the priority setting for Google Shopping campaigns, so you can have three campaigns with different “keywords” that you bid for differently:

pasted image 0 2

By separating the keywords in the various campaigns based on how well they convert, we can apply a more suitable bid rather than just bidding on the average performance for all search terms.

However, in about 20% of our cases, we don’t use it. It’s typically for products with a higher AOV or where there are no meaningful performance differences between search terms.

3) Automated Search with Feed-based campaigns

One of the first things I learned when we started SavvyRevenue was that it would be unprofitable to build search campaigns manually. I think I spent a week building my first account (which wasn’t THAT big). I remember thinking, “how can I ever do this fast enough to make money on it without charging a ridiculously high amount of money?”

Two years later, we had perfected creating search campaigns using a modified Google Shopping feed.

Not only are campaigns, ad groups, keywords, ads and ad extensions automatically built/changed/paused/removed, but we also have a central interface where we can run ad tests, promotional ad messaging and campaigns in multiple languages.

We follow a campaign structure that basically follows the following thinking:

pasted image 0 4

A product campaign can be structured like this:

pasted image 0 1

A brand campaign can be structured like this:

pasted image 0 7

We launch campaigns that mimic the current account’s exposure levels.

In plain english that means that if an account is only running product keywords, then we’ll start there and then branch out.

We don’t follow a framework that has to be launched at the same time every time. We’ll run a waterfall approach to simply start a few campaigns at a time, so we can learn what’s running well and what’s not.

Note: Don’t get stuck on the fact that I call this a feed-based Search campaign. If that’s outside your grasp, you can just build campaigns the old-fashioned way and still use this framework.

4) DSA to be the safety net to capture all keywords

Because we run feed-based campaigns, we miss out on a keyword here and there. It’s automatic, and despite our best efforts in trying to capture keyword variations we don’t catch them all.

That’s where Dynamic Search Ads come in.

Dynamic Search Ads function as the catchall beneath all our other Search campaigns:

pasted image 0 6

They allow us to spend the time building the blueprint that the feed-based campaigns are running on as well as get feedback on what keywords we’re missing. We then include those keywords in the feed-based setup.

The opposite scenario would be that we should spend a lot of time manually reviewing every single brand/category/product for alternative keywords before we launched.

By using Dynamic Search Ads as the catchall, we save a lot of time.

And Dynamic Search Ads often perform well on their own, which merits about 70% of the eCommerce stores we run campaigns for.

5) Automatic bidding (when we can)

Automatic bidding is the cornerstone of what we do.

We have three levels of automated bidding:

  1. Smart Bidding from Google
  2. Automated third-party bidding
  3. “Rules”

With “Rules” I refer to any bidding format that doesn’t have any algorithms behind it. This can be Optmyzr’s bidding rules, automated rules in Google, etc.

Our goal here is to get the best performance for the least amount of time spent.

This might sound paradoxical as an agency, but we don’t want to spend a second more than we have to in our accounts. There are so many things we can do within the accounts, so automating the parts that can do the job as well as we can is a no-brainer.

Sometimes accounts run so stable that Google’s Smart Bidding is the best and cheapest option.

Other times, there are factors involved in the bidding process that require that we have the ability to override the bids from time to time. That’s where third-party or rule-based bidding comes into play.

Only on rare occasions do we utilize manual bidding, but it does happen.

6) Routine tasks executed exceptionally well

Magic happens when routine tasks are being executed well.


All first-time Google Ad setups don’t perform to their full potential.

Some might perform well, but they can always be improved.

Ad testing, negative keywords, audience bidding, ad scheduling, campaign structuring, product exclusion, bidding methods,—and I could go on—could all be improved.

pasted image 0 3

Hacking away at the routine work many people don’t find sexy is the cornerstone of what we do.

Some tasks are automated.

Some tasks are partially automated.

Some tasks are still,horribly, manual work (we’re working on it!)

But they all have to be done.

Almost three years ago, I published the first version of our Google Ads optimization calendar. It’s been updated multiple times, but the foundation of the guide is strong.

7) 90-day plans keep us proactive, and the client updated

Every three months we find the areas with the highest potential for increasing performance and make a plan for how to execute that.

Here is the last one created for a new client:

The Google Ads Framework step 7

Sometimes the plan is just tweaking what we have. Sometimes it’s digging deeper.

Sometimes the plan is focusing our routine optimizations on a couple key aspects.

Sometimes the plan is rebuilding and rethinking our approach to something.

But the key here is that we work in 90-day sprints. Much has been written about 90-day plans, and I’ve personally worked like this for many years.

The magic of 90-day plans is that you have a cut-off point. The biggest complaint from clients in agencies is that performance is either too low or that they feel the need to get another set of eyes on the account because the agency isn’t bringing anything new to the table.

I can’t tell you how many times we’ve broken our own setups for the clients that have been with Savvy for 2+ years.

We’ve redone the campaigns at least once for all clients, and in some way or another rebuilt major parts of the accounts. We don’t charge an extra setup fee. We don’t charge extra hours (we don’t bill hourly at all, actually).

We have good clients. No, GREAT clients. Our most important job is to keep them. So we are our own competition when it comes to reviewing our work.

And you should do the same. Think, “if another agency was making suggestions about my account, what types of suggestions would upset me?” Do that once a quarter. It’s really that simple.

Having an approach where you dig deep every 90 days also accomplishes the following:

  1. You conclude on the previous 90 days, so your client/boss feels that they have closure
  2. There is a designated time to discuss new approaches without the pressure of time
  3. There is a designated time to be proactive and come up with new ideas, so you’re not pressured to do it EVERY DAY

We have a good internal process, and anyone who would like to see can email me:

I’ll gladly share our Notion process with you.

8) Expand to the complex: price monitoring, attribution, seasonality, diagnosing business challenges

Once we have the basics in place, we expand to the more complex aspects of working with eCommerce businesses.

Some of the areas for improvement might not even be Google Ads related. If we can get a client to focus on monitoring competitor prices and set more competitive prices for their products, then we can improve performance by 20-50% overnight with very few actual changes to the account.

Using our overall eCommerce insights (seeing as we don’t work with anything else) has been key in establishing this part of our relationship with clients. As a specialist agency (Google Ads focused), we can get backed into a corner quickly where we are only regarded as the Google Ads experts. We don’t like that. We want to be the eCommerce marketing experts.

What’s key for us is to show our clients how they can improve their business by improving their Google Ads account.

Take What Works For You and Discard the Rest

If I had to choose one area from this article to implement, it would definitely be #7:

  • 90-day plans keep us proactive, and the client updated

Implementing 90-day plans can keep your account fresh and you on your toes. It will help you manage your efforts on the few big ticket items that will move the needle the most.

If you can implement a few (two to five) new initiatives every quarter on your account, you will never end up with a stale account again and your boss will love you for your initiative. Because Google Ads is not “campaign focused” (as in ad campaign focused), you can quickly be stuck in a rut of doing the same thing week after week.

It’s boring as h***, and it’s the main reason why people think Google Ads is boring.

With eCommerce there is always something to do and with 90-day plans you have the framework to do this.

4 thoughts on “The Google Ads Framework Behind $101,790,000 in eCommerce Revenue”

  1. Anonymous

    do you use a custom built software for feed to search campaign automation? Any suggestion on this piece?

    1. Andrew Lolk


      Our notion is that we want to focus on our core competences when we’re still small. So we use third party software whenever we feel the software is good enough.

      One day we’ll probably develop our own, but for now we are happy with what is in the market and for us to develop software that is equal to what’s on the market would be wasteful.

      Our go-to software right now for feed-based Search campaigns is

  2. Patrick

    Hello, great articles.
    What tool / CRM do you use for managing agncy, billing?

    1. Andrew Lolk

      Thanks, Patrick!

      We use Accelo to run a lot of the areas, but for billing we use Economic in Denmark.

      We also swear by for pre-paid corporate cards, and CorpayOne for bill pay.

Leave a Comment

Your email address will not be published. Required fields are marked *