Hey there, we noticed you didn't complete your Advanced Coupons purchase.

We're excited to have you join the Advanced Coupons family! Complete your checkout now & save!
If you have any questions, please reach out to our support team!

How To Make A WooCommerce BOGO Coupon (Full Guide)

WooCommerce BOGO coupon

BOGO deals are a fantastic way for store owners to give attractive-looking incentives to customers without sacrificing lots of profit. This article will show you how to set up and configure a WooCommerce BOGO coupon on your store.

What is a BOGO coupon?

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

Here’s how you run a BOGO coupon in WooCommerce with Advanced Coupons installed:

Subscribe to Advanced Coupons
Subscribe to Advanced Coupons

We’ve made it simple for you, the store owner, to set up and execute a BOGO coupon.

You can find the BOGO edit screen under the General tab and change the Discount type to Buy X Get X Deal (BOGO). In the context of online sales with WooCommerce, a BOGO coupon is a coupon that your customers can use to redeem one of these types of deals.

In WooCommerce, running a BOGO-style promotion with just the core coupon features is impossible. You will need an extension that adds the extra BOGO features to the store.

Advanced Coupons is the only solution that fully implements multiple different kinds of BOGO coupons in WooCommerce. You can run BOGO coupons in four ways:

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

You can mix and match the “Buy” and “Get” types with these options. The products that trigger the deal don’t necessarily have to be the same in the applying part of the deal.

Advanced Coupons BOGO Deals for WooCommerce

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.

The BOGO deals feature is under the General tab on your coupon edit screen.

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

BOGO Interface in Advanced Coupons
BOGO Interface (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
  • Any Products

BOGO Deal Examples You Can Run

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

Buy… +

  • A coffee pod machine and choose a free pack of coffee pods from the coffee pod category
  • A coffee pod machine and get your first pack of coffee pods half price!
  • 2 pairs of shoes and get a third pair free
  • 1 t-shirt and get another t-shirt half price
  • 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 Buy Types and Customer Types.

What is a Buy Type?

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

Think of it like this, under what conditions should a customer get this deal? For example, if they need to have a specific coffee pod machine product in their cart, you would specify it here.

The Buy Type determines how that trigger works.

Buy Type in Advanced Coupons lets you activate the deal
Buy Type in Advanced Coupons (click to zoom)

Specific Products

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

You must specify exactly what products should be in the cart and what quantities before the deal becomes active.

This is good for cases where the product you are promoting is precisely known, such as a particular 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, where many other WooCommerce BOGO plugins fail. You can specify all of the variations of a product here, and it will treat every variation like an individual product (which is how WooCommerce sees them too).

For example, if you have a t-shirt promotion, they need two shirts in the cart.

If you offer a specific shirt in blue red, and green, they can choose any combination of those 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 two products from this specific category/category.

This works similarly 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 or what they should get, specifically, if the deal has been triggered. It’s called “Get Type” because it is focused on what is being applied as part of this deal.

Get Type in Advanced Coupons lets you specify what the customers will get from the deal
Get Type (click to zoom)

Specific Products

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

When the customer adds a 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 are the Combination Products and Product Categories types. I will talk about them together because they behave the same. When a customer triggers a deal, the system needs to fulfill the deal to 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 automatically adjust the pricing of the items to satisfy the deal, just like in the case of the specific product.

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 favors the store owner.

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

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

You can tell the customer what to do when they trigger a BOGO deal but haven’t satisfied it yet, and show them a message. It’s called a BOGO notification.

Set up a BOGO notification message to let customers know about the BOGO deal.
BOGO Notification Message Settings (click to zoom)

You can customize this message however you want to clarify 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 will look something like this on the cart:

An example of a BOGO notification
BOGO Notification Example (click to zoom)

This message serves as the instructions for what to do next, but it doesn’t 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 (e.g., the product category shop page, or a single product page).

The System Always Gives The Cheapest Item

Another notable 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 the 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 highlight which product was discounted
The cart totals highlight which product was discounted (in this case, 100% discount), and the price 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 that 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 gets added that also qualifies but is cheaper, the deal will swap it over to that product instead:

If another product gets added that also qualifies but is cheaper, the deal will swap it over
The deal will swap it over (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 the most expensive products to which they are entitled.

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 add it to the row.

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

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

Step 1. Set the trigger for a specific product.
Buy X Get X (BOGO) Deal (click to zoom)

Step 2. Set the get type for the specific product.

Next, choose the same, Specific Product from the get type dropdown.

You need to add that product to the cart to satisfy the deal. In our example, we are adding the same product so that it buys 1 of the product and gets 1 of the same product.

Step 2. Set the get type for the specific product.
Example: Customer Gets (click to zoom)

Step 3. Configure the BOGO notification message.

The BOGO notification message lets you show a message when the user is unsatisfied with the deal. You can tell them to adjust the quantities and link them to the single product page.

Step 3. Configure the BOGO notification message.
BOGO Notification Additional Settings (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

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

Step 1. Set the buy type to a combination of products.

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

This will let you define the number of products in a list so the system can check if any combination of those products is in the cart.

It doesn’t matter what combination of products there is; it will figure it out.

Step 1. Set the buy type to a combination of products.
Set buy type (click to zoom)

Step 2. Set the get type to a combination of products.

Next, you must 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 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:

Step 2: Set the get type
Set the get type (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 to satisfy the deal.

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

Step 3. Configure the BOGO notification message.
Additional Settings (click to zoom)

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

Our last example is making a BOGO deal where the products span a category. We’ll use the same product category in this example, 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 complex, and it’s something that not all plugins that claim to do it can do it properly. Advanced Coupons works and can execute these kinds of category-based BOGO deals properly on your WooCommerce store.

Step 1. Select the buy type as a product category.

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

This will let you specify which categories can trigger the BOGO deal.

Step 1. Select the buy type as a product category.
Select the buy type (click to zoom)

Step 2. Select the get type as a 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
Add new coupon (click to zoom)

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

Lastly, you can set the BOGO notification to tell people how to redeem the deal if they haven’t satisfied the Get portion yet.

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

Step 3. Set the BOGO notification message to point to the category.
Additional Settings (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 that 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 are a few tips on setting the 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 also want to pair this with the Auto Apply feature.

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

These features working in tandem mean that a coupon like a BOGO deal can be triggered automatically, surprising and delighting the customer.

WooCommerce BOGO Plugin

So to wrap up, yes, it is possible to run a BOGO coupon 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.

In this article, we outlined everything you need to know to set up a BOGO coupon:

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

author avatar
Josh Kohlbach CEO

34 thoughts on “How To Make A WooCommerce BOGO Coupon (Full Guide)

    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.

    1. Hi Cyndi, there’s an option to automatically add the product if its a single product BOGO. If its a BOGO where the customer is required to select the product, they have to add it to the cart and it will be detected automatically. We recommend using the BOGO notice for this which gets show after the deal is activated (when the Buy part has been added to the cart). Feel free to reach out to support if you need 🙂

  6. Nope, I take it back. Looks like it’s working. I was trying to test it from inside the website, but when I logged out, and went in as a regular customer, it worked.

  7. Hi,
    I have some pre-purchase BOGO questions. I want to run a auto-apply coupon with, say, 20 products ProductA, ProductB, ProductC etc, and when any of them are added to cart, another is added to cart as free: add ProductA, get another ProductA free; add ProductB, get another ProductB free, and so on.
    – Can your plugin do this from one coupon, or would it mean creating lots of coupons – and if so could they all auto apply?
    – Is there a limit on the number of auto-apply coupons?
    – Does having lots of auto-apply coupons slow down the cart?
    Thank you.

    1. Hi Jason,

      Yes this is exactly how you would do it in this case. There’s no limit to auto apply coupons, but it does process them on the checkout. Auto apply coupons, in general, do not slow down the cart as we have heavy caching mechanisms for it. We’ve made it pretty efficient 🙂

  8. Jason,
    Yes, with Advanced Coupons for WooCommerce, you can create one auto-apply coupon to handle multiple BOGO deals for different products. There’s no strict limit on the number of auto-apply coupons, but having many could potentially slow down the cart, so testing is recommended.

  9. hello, i wanted to ask for BOGO discount type. My client wanted 50% discount for the next items if the customer chose any product A. Let say if customer choose more than 3 items in the cart, how to set the setting for the discount applied on the higher item price. Because currently, the systems only applied the 50% discount on lower price. My client wanted the 50% apply for the higher price.

    Thank you, sorry for my grammar.

    1. Hi cdeq, the discount always applies to the cheapest matching item. Is there a reason why your customer would want to give more discount? This is a bit counterintuitive. Feel free to reach out to our support to discuss.

Leave a Reply

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