Top Five Ways To Structure Google Shopping / PLA


If you’re an eCommerce advertiser in 2024, you know how much opportunity there is with a well-built PLA structure. Sometimes, the problem is getting to the “well-built” part. In this article, I’ll talk about five ways you can ideate, structure, and optimize your Google Shopping Campaigns.

Setting The Stage: Client Example

Before we begin, let’s pretend we’re going to build out Shopping Campaigns for a sustainable furniture company called Franklin Furniture that sells products like chairs, tables, and beds. For fun, let’s also say that they have multiple materials and models for each product category.  Here are a few we’ll reference later on:


Things You Should Know Before Starting

Let’s also preface a few key tactics and tools that we’ll be discussing—you’ll want to understand the utility and deployment of these to have a successful go at any of the options below.

  • Query Funneling (also called Query Sculpting) – the process of excluding queries from one campaign to “force” them to flow into another
  • Campaign Priority – a setting at the campaign level that determines which campaign serves first if you have multiple products in multiple campaigns
  • Catchall – a single campaign that lives at the bottom of whatever PLA architecture you choose, and it’s just there to catch any queries that slide through the funnel or any end/late-day traffic you’re willing to pay pennies for
  • Product Feed Optimization – At collystring, we use DataFeedWatch to optimize product feeds. You don’t necessarily need a tool like this, but using one gives you infinite potential on how you create usable product fields to help build out PLA, such as product type & custom labels

Option One: Single PLA

  • Number of Campaigns: One
  • Priority: Low

There are not many accounts we audit or build that use this strategy anymore due to how basic it really is. At its core, you’ll have one campaign with all of your products, and your optimizations include bidding and query mining.

Example: We would have chairs, tables, and beds all in one campaign alongside all of their material and models. 

Why it works (I use that loosely): You only have a few products, or your business is very brand search-heavy to the point where you don’t need to spend a ton of time with a large PLA taxonomy.

Option Two: Priority Pillars

  • Number of Campaigns: Four
  • Priority: High, Medium, Low, Low

This architecture is likely something you’ve seen or tried at some point in your Google Shopping journey because it usually works pretty well—it’s easy to set up and manage. One Campaign for all products that is duplicated four times where each Campaign has a different priority, except here we have two Low priority options. 


  • High – all products, low bid
  • Medium – all products, medium bid
  • Low – all products, low bid (this is your Catchall)
  • Low – all products, high bid (this is your Brand PLA)

In the example above, we would exclude “franklin” from High, Medium, and Low (Catchall) in an effort to query funnel it into Brand. In addition, our approach here is that the High campaign is our fishing net where we want to see a ton of traffic come through that we can query mine and force to Medium, where we have more aggressive bids and allow for more specific queries.

Why it works: Priority allows you to specify what campaign you want to serve first, depending on the auction. This may not seem like a useful tool, but when you leverage query funneling alongside it—you see results. Keep in mind, this does take time and/or budget to get to a point where you have enough query data to really use the funnel.

Option Three: Product Categories

  • Number of Campaigns: Five
  • Priority: Three High, One Medium, One Low

This structure is a bit more advanced than the other two but also allows for a wonderful opportunity to make sure you aren’t artificially creating any zombie products (products that live in campaigns and never serve, either due to budget or listing quality).


  • High: chairs, all variants – medium bid with aggressive query mining for terms that don’t convert
  • High: tables, all variants – “ “
  • High: beds, all variants – “ “
  • Medium: all products, all variants, low bid (this is your Catchall)
  • Low – all products, high bid (this is your Brand PLA)

The idea here is that we’re allocating a specific budget to each category, and we’re solely focused on exiting any auction that isn’t resulting in Revenue. Any queries that pass through High will have the opportunity to serve in the Catchall as long as they aren’t Brand.

Why it works: Having budget per category is never a bad idea, and it solves one of the biggest issues in large eCommerce accounts where zombie/dead products are a real thing. This structure is segmented enough to be useful but not overcomplicated to the point where you are spending more time managing the admin side versus performance. 

Option Four: Single Product Campaigns

  • Number of Campaigns: Varies
  • Priority: Varies

We’re cresting into the camp of “too segmented” here, but bear with me because, in certain cases, this taxonomy works very well. Those cases are when you have 20+ SKUs and only a handful (or less) convert.


  • High – chair category, one SKU, high bid
  • Medium – chair category, all else – medium bid
  • Low – all products, low bid (this is your Catchall)
  • Low – all products, high bid (this is your Brand PLA)

In theory, you can do this exact same setup for as many single SKUs as you see fit to where you’d have all of those be set to High, and then the parent category (the one the single SKU lives in) is a whole campaign set to Medium. From here, our normal priority waterfall continues with Catchall and Brand.

Why it works: This works for much of the same reason that Option Three works—we are able to put budget on individual categories or products. If you’re a small store, having everything rolled up together might not work for you. So, breaking things out to be able to bid, budget, and optimize in a vacuum can be very beneficial. 

Option Five: Advanced Segmentation

  • Number of Campaigns: Varies
  • Priority: Varies

We’re now over the bridge and in the field of overcomplicated PLA architecture, but the point here is that anything is possible if you have enough time on your hands or client pressure. The example below will require some lifting in your feed management tool to be able to correctly map input fields (raw) to endpoints (Merchant Center). There is more time spent in the feed tool than there is in actually building this campaign type, per se.

Example: We’ll show one example here for Franklin Furniture to help give you an idea of how you can scale this in the real world. Remember our chart above with Product, Material, and Model? We’ll take that information through our feed management tool and set Material & Model as Custom Labels so that we can use them to filter our Product Groups.


To start, let’s preface that we have the following setup in GMC:

  • Custom Label 0 = Model
  • Custom Label 1 = Material
  • Product Type = Category

Now, let’s build out a single high-priority campaign for our Tables category using the Custom Labels; the example below will actually be within Product Groupings inside the Campaign:

  • Product Type: Table
  • Segmented By Custom Label 0: Dining
  • Segmented By Custom Label 1: Teak
    • Result: Any style of Teak Dining Table will live in this product group; consider there may be 15 different sizes and variants that you have here, so it’s important that we’ve done the grouping above to have all of those in one spot to analyze & optimize.

In theory, we would have one campaign that has all of these buckets broken out:

Category (Parent)Model (CL1)Material (CL0)Item ID (SKU)

Why it works: In this example, you’d be able to quickly see any groupings that are bleeding or performing and able to make decisions on those. In addition, you might also find use in having multiple Ad Groups for each bucket so that you can give specific bids to each; this only works if you’re using automated bidding strategies.

Secondarily, if you’re able to get to this point with a PLA structure, you are also likely checking many of the key boxes for feed optimization, which is always a good thing when managing PLA. Things like material, color, size, etc, are often not correctly set or mapped in the feeds we audit.


Hopefully, this gives you some ideas on how you might iterate your PLA taxonomy or continue to refine what you already have using things like query funneling, campaign priority, or custom fields. In reality, there are many ways to build PLA, and finding what works for your business or your clients is really the only thing that matters.

Related Posts

Ready To Get Started?