This article is a step-by-step approach to creating campaigns, ad groups, keywords and negative keywords using Casper mattress as an example.

Read more on the logic of structuring campaigns vs ad groups vs keywords.


Example account set-up – Let’s design the Google Ads structure for

Casper sells mattresses. They have three core mattress products: Wave Hybrid; Nova Hybrid; and Original.

Casper wants visits from users looking to buy a mattress. We can split these users (or the search terms they enter into Google) into two groups:

  • Brand: Users who have included Casper or a Casper product name in their search (a branded search).
  • Non-brand: Users who are looking at mattresses more generically (i.e. have not included Casper or a Casper product name in their search ⇒ non-branded).


Branded Search Terms

The first group of users (with branded search terms that include Casper) want to get to the Casper site – the ads are a nudge to get them there (and to the right page).


Example Structure for the first Campaign

Let’s create a ‘branded mattress campaign’ (read this article on how to name campaigns) that bids on any search term that includes ‘wave mattress’; ‘nova mattress’, ‘casper original mattress’, ‘casper wave’, ‘casper nova’, ‘casper hybrid’ etc.

Within that campaign we can create an ad group for each mattress product (with a landing page to that mattress product page – that’s the main reason to have separate ad groups).

Let’s also create separate ad groups that bid on the keywords ‘casper hybrid’, and ‘casper king size’ (and other casper mattress size keywords).

The structure looks like this:


What type of keyword match should we use?

We use keywords assigned to an ad group to bid on the relevant search term.

Google offers 3 different match types on a keyword – effectively how precise the keyword and search term must match for the ad group to bid on the user’s search term.

There are three match types: exact; phrase; and broad.

The syntax for entering a keyword such as ‘lawn mowing service’ for each match type is:

  • Broad: lawn mowing service
  • Phrase: “lawn mowing service”
  • Exact: [lawn mowing service]

An example of how a keyword of ‘lawn mowing service’ matches search terms depending on its match type is given below:



We think you should use the phrase match type (learn more about match types here) as it captures more traffic with little dilution of intent.

Here’s an example of the search terms a phrase match keyword of “tennis shoes” would bid on:



A phrase match keyword of “nova mattress” should trigger that ad group to bid if the search term includes both the words ‘nova’ and ‘mattress’ though not necessarily in that order, and also trigger if the search term contains additional words.

There is some additional intelligence that means the ad will be/not be triggered if Google believes the intent is there/not there.

Phrase match should also capture plurals and misspelled words (exact match will too).

Even exact match has leeway if the intent is clear – we have seen the exact match keyword ‘kids clothes sustainable’ bid on the term ‘children’s eco clothing’ for example – none of the three words in the search term matched the keyword.

We recommend not using ‘broad match’ in core campaigns as it casts a wide and uncontrollable net – there is a place for it as a source of new keywords – we’ll come to that later.

A lot of the time, broad keywords end up bidding on exact keyword terms (or even worse – your brand terms) which can make it look like they are performing ok when they are simply bidding on your core keywords plus some irrelevant terms.

It’s important to review the search terms that Phrase match is bidding on – if you find some of the terms furthest from the keyword are not converting as well as you would like then you can either add these terms as negative keywords or move to exact match. Learn more about tracking the performance of your campaigns.


Create a second brand campaign

Let’s add a campaign for people trying to find the Casper home page rather than a mattress specifically – we’ll make this a separate campaign as the intent is slightly different (and therefore we think the ROAS will be slightly different too).

For this campaign we’ll add an ad group with the keywords of ‘casper mattress’ and ‘casper’.

For this ad group we need to add several negative keywords (‘wave’, ‘nova’, ‘original’ etc.) that were keywords in the brand mattress campaign. That’s because if a search term does contain one of these keywords we want that specific mattress campaign to be triggered and not this home page campaign.


How do negative keywords work?

Negative keywords tell Google not to bid on a search term if the negative keyword matches all or part of the search term.

Again there are three match types: Exact; Phrase; and Broad.

The table below has five search terms that trigger an ad for a specific ad group.

If we add the negative keyword of ‘running shoes’ to the ad group then the ad will now not show for some of the search terms.

If ‘running shoes’ was added as a broad match type negative keyword then the ad does not show for the three search trerms that contain the exact words ‘shoes’ and ‘running’. It does show for the ‘blue tennis shoes’ and ‘running shoe’ search terms:



If added as an exact match type negative keyword then the ad will show for all the search terms still except ‘running shoes’:

Broad match is the default and the most useful as it should stop Google bidding if the search term contains all the words in the negative keyword regardless of what other words are in the search term.

Note that even with broad negative keywords the words must match exactly. As above the broad negative keyword of ‘running shoes’ won’t stop Google from bidding on the singular ‘running shoe’.


How to add negative keywords

You can add negative keywords individually to an ad group, or add negative keywords to a list and then add the list to the ad group (we recommend using lists as it makes managing negative keywords across ad groups and campaigns easier).

Let’s create a list of negative keywords for the ‘brand home page’ campaign which is broadly all the positive keywords from the brand mattress campaign.

However, because broad negative matches don’t pick up plurals or misspellings let’s strip back to the core brand terms (i.e. drop mattress as otherwise we’d have to add all the misspellings of mattress too).

The brand mattress negative keyword list becomes: wave; hybrid; nova, foam, memory, king, queen, full, twin, king, cal – if the search term contains any of those words then the ‘brand home page’ campaign should not be triggered.


Create the remaining brand campaigns

Let’s create more campaigns that cover the ‘faqs’, ‘promo’, ‘sale’, ‘reviews’, and ‘mattress comparison’ branded searches.

We’ll put all the ‘faq’ related search terms into one campaign whereas terms that have more purchase intent we’ll put into separate campaigns:


More negative keywords

We can use negative keywords to help Google show the ad and associated landing page that we think is going to be most relevant to the user and most valuable to us.

Negative keywords help achieve consistency – ideally we should use keywords and negative keywords so that only one ad group can bid on a specific search term (having more than one ad group trigger for the same search term makes understanding and managing the ROAS for each ad group harder).

We need to come up with a hierarchy of where we should send users if the search term could match keywords in several different ad groups (e.g. without negative keywords the search term ‘nova mattress warranty’ could trigger both the warranty and nova ad groups).

But which campaign do we want to trigger for the search term ‘nova mattress warranty’? In this example we think the user wants to go to the warranty page rather than the nova mattress page.

We can use negative keywords to create a decision tree: if the search term contains an ‘faq’ keyword then go to the faq page, if no ‘faq’ term then go to the next decision.

This is the decision tree we propose for Casper brand search terms:

  • Decision 1: does the search term contain one of the faq keywords ==> faq campaign; otherwise…
  • Decision 2: does the search term contain a keyword around ‘trial’, ‘sale’, ‘comparison’, ‘review’ ==> trial campaign; otherwise…
  • Decision 3: does the search term contain a keyword for a specific model or mattress type (‘nova’, ‘wave, ‘hybrid’ etc) ==> product ad group; otherwise…
  • Decision 4: does the search term contain a keyword for size (‘king’, ‘twin’ etc.) ==> mattress size ad group; otherwise the home page

Let’s create a negative keyword list for each of those four decision groups:

  • faq: warranty, guarantee, returns, customer service, help, chat, phone, pay monthly, finance, credit, store, showroom, where made, removal, recycle, returns
  • trial|promo|review|comparison: coupon, voucher, promo, promotion, code, sale, try, trial, review, reviews, vs, versus, compare, comparison, buying guide
  • model: nova, wave, original, hybrid, foam
  • size: king, queen, full, twin, 38″, 53″, 60″, 72″, 75″, 76″, 80″, 84″

Then we can apply these negative keyword lists to the campaigns as follows:

  • Apply the faq negative keyword list to all brand campaigns except the faq campaign.
  • Apply the ‘trial/sale/comparison/review’ negative keyword list to the mattress and home page campaigns.
  • Apply the model negative keyword list to the size ad groups and home page campaign.
  • Finally apply the size keyword list to the home page campaign.


The setup looks like this:


How shall we set up the non-branded search campaigns?

We set up non-branded campaigns in a very similar way. The most important thing to do is add ‘casper’ and other casper brand terms (such as ‘nova’, ‘wave’, ‘original’) as negative keywords to all non-brand campaigns as we never want a search term containing ‘casper’ or casper brand terms to trigger a non-branded campaign.

The structure is similar to the branded terms campaigns.

One difference is handling searches about the dimensions of a mattress. People searching for the dimension of a mattress may not be interested in actually buying a mattress – just the dimensions of say a twin mattress (for perhaps buying bed sheets or to find out how much space the mattress would take up) – so the purchase intent is low which means these search terms are less valuable.

Let’s add a ‘size of’ campaign to handle this.

Here is the campaign and ad group structure:


The negative keywords are a little trickier.

The table below shows how we worked out what negative keywords to add to each ad group. The very generic ‘mattress’ ad group has all the other ad group’s keywords added to it as we only want this ad group to bid for the search term ‘mattress’.

On the other extreme, all ad groups except the competitor ad group have competitor names added as negative keywords because if a competitor name is in the search term we only want the competitor ad group to bid.



We need to also add the negative keywords of ‘casper’ and other Casper brand terms such as nova applied as negative keyword lists.


Tidy up – Non-converting terms

We also want to make sure that none of these brand or non-brand campaigns bid on non-converting terms such as ‘free mattress’, ‘how to clean a mattress’ etc.

Let’s add these as negative keywords to all the ad groups.


Broad search term campaign

You can add a ‘broad search campaign’ with the keyword ‘mattress’ and with all the other negative keyword lists added. This campaign should only capture search terms that don’t trigger any of the other existing campaigns.

I would add a low daily budget.

The aim is for this campaign to find search terms that we have not considered – if we come across some search terms that look viable then we can create a campaign for them or add relevant keywords to existing campaigns.


Other considerations

We’ve ended up with 21 campaigns (plus a broad search campaign) and 46 ad groups.

It’s worth adding audience segments so you can see how audiences within a campaign are performing. If you have repeat customers then you may also want to divide your larger campaigns between new and repeat customers.


Optimising and tracking performance

You can read about optimising campaigns and tracking performance here.

You ideally want to run experiments on the larger campaigns to work out the optimal Target ROAS. With repeats split out and experiments running then you could end up with sixty or more campaigns (which becomes realistically too many to manage well).

Once the campaigns have been running for a while, see if you can merge campaigns that have very similar max. ROAS and where the products promoted have similar CM2 %. This means fewer campaigns to keep on top of and more data for Google to use to optimise a campaign. Read more about campaigns vs ad groups.



You can view the final proposed structure on this Google Sheet which also includes on a separate tab the individual negative keywords on each keyword list.

This only covers the main mattress search terms so we would add additional campaigns for other products such as beds, pillows, bedding etc.


>>> Read the next article: Appendix 5: How to use and optimise shopping ads

>>> Back to main menu



Please be really careful making changes to your Google Ads account

  • Google doesn’t always respond how you (or we) think it will. The way we think about Google Ads may not be the best set-up for your account.
  • Only change one thing at a time.
  • If possible, always use an experiment to test a change – particularly for significant changes such as moving bidding strategy to Maximize conversion value (Target ROAS).
  • Protect your financial downside by testing with limited spend in the experiment/change. Note that moving to a smart bidding strategy requires a learning phase where Google may not be efficient.
  • Be careful if adding/removing primary conversion actions – changing what Google is converting to can radically change what and who Google targets and how much it’s willing to spend.
  • Remember, all changes to your account are at your own risk. Mapflo shall not be liable for any damages; losses; lost revenue or lost profit.


Glossary of Terms

AOV = Average Order Value

CM1 = Contribution Margin 1 = revenue minus COGS (cost of goods sold) in an order.

CM2 = Contribution Margin 2 = margin on an order after all costs directly attributable to that order such as COGS, shipping, payment fees, customer service etc. (except for marketing).

CM3 = Contribution Margin 3 = CM2 less marketing spend. An ‘Estimated CM3’ value uses an assumed CM2 %.

CPA = Cost Per Action. In this report taken to mean cost per conversion or cost per order.

Keywords = words or phrases (assigned to an ad group) that match a user’s search term and trigger Google to bid to show an ad.

Lifetime CM3 = CM3 from all orders (or subscription payments) for a customer.

Profit = CM3 less all fixed overheads (such as salaries and office rent). Hence Optimising CM3 also optimises profit at the same cost base

ROAS = ‘Return On Ad Spend’ = conversion value divided by cost. A ROAS of 400% means you get four pounds of revenue back for every pound of ad spend.

Search term = the word or phrase that a user searches for on Google.