How To Make A WooCommerce BOGO Coupon

WooCommerce BOGO coupon

This article will show you how to set up and configure a WooCommerce BOGO coupon on your store.

BOGO deals are a very popular way for store owners to give attractive looking incentives to customers without sacrificing lots of profit.

What does BOGO stand for?

BOGO is an acronym that stands for “Buy One, Get One”, it describes a type of pricing deal that retailers use to give discounts to customers where it appears they’re getting something for free or cheap, but over the total quantity of the deal, the store still makes a good profit.

For example: “Buy 2 T-Shirts and Get 1 T-Shirt Half Price”

In this example, it appears to the consumer that they’re getting a shirt for 50% off, but actually the store is only giving a 16.66% discount overall when you consider the other two shirts.

Making A WooCommerce BOGO Coupon

Subscribe to Advanced Coupons

A BOGO coupon, in the context of online sales with WooCommerce, is a coupon that your customers can use to redeem one of these types of deals.

In WooCommerce, it’s actually not possible to run a BOGO style promotion with just the core coupon features. You will need an extension that adds the extra BOGO features needed to the store.

Advanced Coupons is the only solution that I know of that offers BOGO coupons in three ways:

  1. BOGO with single products (eg. Buy X of this Product, Get X of this Product)
  2. BOGO with a group of products where the customer can choose (eg. Buy Any Of Product X, Y, Z, …, Get Any Of Product X, Y, Z)
  3. BOGO with a product category or categories (eg. Buy Any Product From Category X, Get Any Product From Category X)

With all of these options you can even mix and match the “Buy” and “Get” types. Meaning the products that trigger the deal don’t necessarily have to be the same products that are in the applying part of the deal.

Advanced Coupons BOGO Deals

Advanced Coupons is an extension plugin for WooCommerce that adds extra features to your standard coupon interface. One of those features is for running Buy One, Get One style deals.

You’ll find the BOGO deals feature under the General tab on your coupon edit screen.

Here’s what the interface looks like for BOGO deals:

(click to zoom)

As you can see by the screenshot above, there are a few options so you can mix and match the Buy and Get types:

  • Specific Products
  • Any Combination of Products
  • Product Categories

BOGO Deal Examples You Can Run

Here are some examples of the kinds of BOGO deals you could run:

  • Buy a coffee pod machine and choose a free pack of coffee pods from the coffee pod category
  • Buy a coffee pod machine and get your first pack of coffee pods half price
  • Buy 2 pairs of shoes and get a third pair free
  • Buy 1 t-shirt and get another t-shirt half price
  • Buy 2 bottles of shampoo and get another free

All of the mentioned BOGO deals are possible in Advanced Coupons. There’s heaps of flexibility too so you can run even more types of BOGO deals too.

But first, let’s discuss in more detail about Buy Types and Customer Types.

What is a Buy Type?

A trigger is what causes a BOGO deal to become active. It is what the system sits there waiting for in order to give the customer the deal.

Think of it like, under what conditions should a customer get this deal.

For example, if they need to have a certain coffee pod machine product in their cart, you would specify it here.

The Buy Type is determining how that trigger works.

(click to zoom)

Specific Products

The specific products buy type lets you choose to trigger a BOGO deal when there are specific products in the cart.

Meaning you have to specify exactly what products should be in the cart and in what quantities before the deal becomes active.

This is good for cases where the product you are promoting is exactly known such as a certain model of a coffee pod machine.

Any Combination of Products

You also can choose whether it should trigger on any combination of a list of products. This is handy for promotions where they’re allowed to have any combination of a set of products but the products have no other particular grouping.

It will trigger the deal as long as there is any combination of those products in the cart as long as the total quantity requirements are met.

This type is also handy for running BOGO deals on Variable product types which is where many other WooCommerce BOGO plugins fail. You can specify all of the variations of a product in here and it will treat every variation like an individual product (which is how WooCommerce actually sees them too).

For example, if you have a t-shirt promotion where they need 2 shirts in the cart. If you offer a specific shirt in blue and red and green, they can choose any combination of those and as long as the overall quantity on the cart is 2.

Product Categories

And lastly, you can choose whether it should apply based on a product category.

For example, any 2 products from this specific category/categories.

This works really similar to the Any Combination of Products buy type, but it just uses all products in that category or categories at the specified quantities.

What is a Get Type?

The Get Type focuses on the “get” part of the deal. What they should get, specifically, if the deal has been triggered. It’s called “Get Type” because it is focused around what is being applied as part of this deal.

(click to zoom)

Specific Products

The Specific Products Get type means they get a specific product at the quantity you say. You can also tell it to override the price, give a % amount off that product, whatever you need.

When the customer adds the specific product to the cart, the system will automatically adjust the pricing of the item they add to satisfy the deal.

Any Combination of Products & Product Categories

Next is the Combination Products and Product Categories types. I’m going to talk about them together because essentially they behave the same.

When a customer triggers a deal, what the system then needs to do in order to fulfill the deal is have the “Get” product put into the cart.

Because the system doesn’t know what the customer wants from that category or group of products it has to wait for the customer to put them in the cart.

Once they have selected eligible items from either the category or group of products, the system will, just like in the specific products case, automatically adjust the pricing of the items to satisfy the deal.

But what if the customer adds multiple eligible products?

In this case, the system will always give the cheapest item to the customer. In this way, it favours the store owner.

How does the customer know when/which products to add?

As mentioned when applying a deal, the system needs to have the customer add the “get” product to the cart. Once they do so, the system will adjust automatically.

To let the customer know what to do when they trigger a BOGO deal but haven’t satisfied the deal yet, you can show them a message. It’s called a BOGO notification.

BOGO Notification Message Settings
(click to zoom)

You can customize this message however you want to make it clear to the customer how to redeem the BOGO deal.

For example:

Notice setting:
Yay! You’ve just triggered the 2-for-1 t-shirts deal, add one more product from the T-Shirts category and you’ll get it for free!

Button Text:
Choose Free T-Shirt

Button URL:

Notice Type:

When the deal is triggered and the coupon is added it would look something like this on the cart:

BOGO Notification Example
(click to zoom)

This message serves as the instructions for what to do next, but it doesn’t actually add the products, it’s up to your customer to adjust their cart with whatever they choose.

Because of this, we recommend you direct them with the button on the message to the area on your site where they can add the correct products (eg. the product category or shop page or a single product page).

The System Always Gives The Cheapest Item

Another special thing to note is that the system always gives the cheapest item for the “Get” part of the deal.

If your customer adds multiple products that qualify for the “get” part, the system will check which one is cheapest on the cart and use that to satisfy the deal.

For example, in this case where a customer is satisfying a Buy 2 and get the third shirt FREE, the customer was given the cheapest shirt:

The cart totals highlights which product was discounted (in this case 100% discount) and the price actually gets adjusted on the line item in the table. (click to zoom)

The great thing about this is that if they remove one of the products which triggered the deal, and that means the trigger conditions are no longer met, then the coupon will be removed along with the product that was applied as part of that deal.

Likewise, if another product that gets added which also qualifies, but is cheaper, the deal will swap it over to that product instead.

(click to zoom)

It makes it impossible for the customer to claim the deal without satisfying the deal terms first or to claim the deal for most expensive products than they are entitled to.

How To Make A BOGO Deal With A Specific Product In WooCommerce

The following tutorial shows how to make a BOGO deal with a specific product, it’s your classic “Buy One of something and Get One of something” deal.

Subscribe to Advanced Coupons

The tutorial shows you how to run a BOGO deal on your WooCommerce store where the deal involves just one specific product.

Step 1 – Set the trigger for a specific product

Go to the BOGO tab on your coupon and select the “Specific Product” option under the Buy Type drop down box.

Add a row to the table and it will ask you to search for a product to add. You can search for the product by name and you can add it to the row.

Click on Add to ensure it’s added to the table.

If you wish, you can add multiple rows to the table to ensure they have all of those products on the cart to trigger the deal. In this example we’re choosing to use just one product.

(click to zoom)

Step 2 – Set the get type for specific product

Next choose the same, Specific Product, from the get type drop down.

This will mean to satisfy the deal you need to add that product to the cart. In our example here we are adding the same product so that it’s buy 1 of the product and get 1 of the same product.

(click to zoom)

Step 3 – Configure the BOGO notification message

The BOGO notification message lets you show a message when the user hasn’t satisfied the deal yet. You can tell them to adjust the quantities and even link them to the single product page.

(click to zoom)

How To Make A BOGO Deal With A Group Of Products In WooCommerce

The following tutorial will show you how to make a BOGO deal in WooCommerce where you want to let the customer choose from a group of products.

Subscribe to Advanced Coupons

This is where it starts getting tricky because managing a BOGO deal across multiple products where the customer can choose any of the products and get any of the products is not easy.

Step 1 – Set the buy type to combination of products

First you need to set the buy type to “Any Combination of Products”.

This will let you define a number of products in a list so that the system can check if there is any combination of those products together in the cart. It doesn’t matter what combination of the products there are, it will figure it out.

(click to zoom)

Step 2 – Set the get type to combination of products

Next you need to define what products should be used for the get part of the deal. Select the “Any Combination of Products” get type.

You can then search and input the products that are to be considered eligible. Again, it doesn’t matter what combination of products the customer chooses, the system will figure it out and give the cheapest option.

(click to zoom)

Step 3 – Configure the BOGO notification message

Lastly, you may want to configure a BOGO notification for this type of deal because the customer will need to know what to do in order to satisfy the deal.

I recommend you link the button to a place where they’re able to see all the available options. This might be the shop page or an archive or even a custom landing page maybe displaying the eligible products.

(click to zoom)

How To Make A BOGO Deal With A Product Category In WooCommerce

The last example we have is making a BOGO deal where the products span a category. In this example we’ll use the same product category but you can even trigger it across multiple categories.

Subscribe to Advanced Coupons

Keeping track of all the products that are eligible for a deal or able to trigger a BOGO deal is hard and its something that not all plugins that claim to do it can actually do it properly. Advanced Coupons actually works and can execute these kinds of category based BOGO deals properly and smoothly on your WooCommerce store.

Step 1 – Select the buy type as product category

Firstly you want to select the Product Category option from the BOGO buy type.

This will let you specify which categories should be considered eligible to trigger the BOGO deal.

(click to zoom)

Step 2 – Select the get type as product category

Next you want to select Product Category as the get type as well.

You can specify the categories that should be considered eligible for the “get” portion of your BOGO deal.

Set the apply type of the BOGO deal to define which categories are eligible
(click to zoom)

Step 3 – Set the BOGO notification message to point to the category

Lastly you have the option of setting the BOGO notification to tell people how to redeem the deal if they haven’t satisfied the Get portion yet.

This is handy for the category based deals because you can point the notification button straight to the category archive where they can select their product.

(click to zoom)

Automatically Applying WooCommerce BOGO Coupons

So can you take this one step further?

Yes, the next logical step is to automate the application of the deal and for this, we will introduce two other features:

  • Cart Conditions
  • Auto Apply

Cart Conditions lets you determine whether a coupon should be allowed to be applied or not. Here’s a little article which explains what conditions you can test for.

Here’s a video tutorial on how to automatically apply a BOGO deal coupon in WooCommerce:

Subscribe to Advanced Coupons

Here’s a few tips on setting the Cart Conditions:

Check Cart Conditions

When you try to apply the coupon it will check the cart conditions you have set and if it doesn’t match it will not allow the coupon to be applied.

This is great when you want to test for conditions like whether certain products are in the cart or whether there are products from a certain category in the cart.

In our example here, we want to also pair this with the Auto Apply feature.

Automatically Apply WooCommerce-coupon

Auto Apply lets you apply WooCommerce coupons automatically. It will apply only when the Cart Conditions that you have set are true.

Both of these features working in tandem mean that you can have a coupon like a BOGO deal be triggered automatically, surprising and delighting the customer.

WooCommerce BOGO Plugin

So to wrap up, yes, it is possible to run BOGO deals in WooCommerce.

Advanced Coupons is possibly the most comprehensive, yet easiest to use, especially from the customer’s perspective. It’s also very flexible too. As a store owner you’re able to run all kinds of deals you couldn’t run before.

Remember BOGO is just one part of Advanced Coupons, if you want to see what else Advanced Coupons has to offer, just head over to the pricing and features page for a full rundown.


24 thoughts on “How To Make A WooCommerce BOGO Coupon

    1. Hey Gennaro, it is a coupon. But you can combine with Cart Conditions and Auto Apply features and have it automatically apply the coupon once it’s eligible. Hope this helps, feel free to reach out with more details if you’d like us to comment on how it would work for your scenario.

  1. I have a client whose website sells tea. The options are: 50g, 100g, and sample. I want to set it so that whenever someone buys 4 x 50g bags of any type, they get a 5th 50g bag free. Am I able to set the variance level with advanced coupon bogo feature?

  2. It is wonderful to have details about how to make certain sales “events” happen like BOGO, but I don’t have any product to “sell” in the traditional sense, only “sell” – convince others to read my free material. Great details!

  3. Is it possible to have the coupon code apply even when something that is not included in the promo is in the cart? It just keeps saying “SORRY, IT SEEMS THE COUPON “FREETEES” IS INVALID – IT HAS NOW BEEN REMOVED FROM YOUR ORDER.” I would like to give my client the option to buy something else that isn’t in the promo. Any advice?

    1. Probably the easiest way would be to use the sub categories in the BOGO deal instead of the parent category. Please reach out to Advanced Coupons support and they’ll definitely help 🙂

  4. How can I apply a BOGO coupon to ANYTHING in the shop? ie: buy one item and get ANY item in the shop free.

    1. Hey Natalie,

      Yes you sure can. At the moment the best way is to create a new Product Category and add all the products to that category, then use the Product Category trigger/apply types.

      In the next version of Advanced Coupons we’ll be releasing official “Any Product” and “Same Product” support. So stay tuned!

  5. Hello, I’m using Advanced Coupon Free Plugin on my e-commerce WordPress.
    I’ve created a BOGO coupon (buy 1 get 1 free the same item), when I try, there is no notification that the coupon is triggered, and when I try to use the coupon, the cart interface is not updated (free items are not added to the cart) so the price is not even updated.

    Am I setting the coupon wrong?

    1. Hi Agus, you’ll need to turn on auto apply if you want to have it apply automatically. Otherwise the customer needs to add the coupon to the cart. Feel free to reach out via the support forums if you have any further questions!

    1. Hi Ana, yes this is possible. But it depends how your products are set up (ie. are they all the same price?) You may be able to use either BOGO or just a fixed/percentage discount with some cart conditions to test the number of items in the cart.

      Would we be able to have you reach out to the team? We can help you configure this deal.

Leave a Reply to samir litim Cancel reply

Your email address will not be published.