WebToffee Logo
  • Home
  • Plugins
  • Bundles
  • Blog
  • Documentation
  • Support
Login
0

  • Getting Started
    • Plugin set up
  • Advanced Coupon Options
    • Display coupons using shortcodes
    • Giveaway Products
    • Automatically Apply Discount to Cart
    • Exclude Coupons/Store Credit from Applying
    • Coupons based on Shipping/Payment Method/Location
    • Restrict Auto Apply Coupons
    • Gift coupons on product purchase
    • Setup 'Seasonal discount offer'
    • Combo Coupons
  • Store Credit
    • Set up store credit
    • Gift via store credit
    • Hide My Coupons & My Store Credit
  • Bulk Generate
    • Bulk Generate Coupons
  • Import Coupons
    • Bulk import coupons
    • Coupon Generator and Importer
  • BOGO discounts
    • Buy X and get X for 50% OFF
    • Set up BOGO
    • Quantity/Volume Discount Coupon
    • Spend $X and get Y at discount
  • Nth Order Discount
    • First order coupon
    • Offer nth order discount
  • Abandoned Cart Discount
    • Offer abandoned cart discount
  • Sales Countdown Timer
    • Set up sales countdown timer
  • FAQ
    • Hide coupon code field
  • Changelog
    • Version 2.0.7
  • Signup Coupons
    • Setup signup coupon

Documentation/Smart Coupons for WooCommerce/How to offer BOGO discounts in WooCommerce

How to offer BOGO discounts in WooCommerce

Last updated on June 13, 2022

BOGO / Buy X get X / Buy X get Y discounts are a common promotion strategy to encourage customers to purchase goods from your online store.

The enhanced BOGO offers varied quantity or price based discounts such as buy x and gets the same product/any product from store/specific product from store/product from a specific category, etc.

The plugin allows you to provide full or partial discounts for the giveaway offer. However, you can configure the giveaways in the following manner:

  • same product as in the cart
  • a specific product
  • any product from a specific category
  • any product from the store

Watch our tutorial to setup BOGO easily on your store.

The Buy X Get X/Y discounts facilitates a number of purchasing scenarios such as:

  • Percentage (%) or price discount on the second item
  • Percentage (%) or price discount on the second item after spending a certain amount
  • Consecutive discounts such as Buy 1 Get 1 Half off, Buy 2 get 1 at 50% off
  • Scheduling begin and end dates for the BOGO offer
  • Option to exclude products or product categories from applying the BOGO
  • Recurring discounts eg, Buy 2 get 1, Buy 4 get 2
  • and many more.

Get started

  • First of all, install and activate the plugin.
  • From your WordPress dashboard, go to Smart Coupons > Add Coupon

Setting up BOGO

This guide will take you through the 3 simple steps for setting up various BOGO deals.

Note: In this guide, we have covered only the BOGO-specific UI fields. For a detail explanation, please visit the plugin setup guide.

Step 1: Choose BOGO (Buy X Get X/Y) as the discount type

  • From the Add new coupon window, key in an appropriate coupon code and description.
  • Then, choose the discount type as BOGO (Buy X Get X/Y) offer.
  • Set the coupon apply frequency (Number of times).
    • Apply once: If the cart is eligible or conditions are met, the coupon applies once. ie: If you set the coupon to offer Buy 2 Get 1, you get one free product. Moving more items to the cart will not make it eligible to get more free products.
    • Apply repeatedly: The coupon applies repeatedly whenever the cart is eligible or if conditions are met. ie: If you set the coupon to offer Buy 2 Get 1 then the coupon works repeatedly for Buy 4 Get 2 and so on.

Optionally, you may also set the following:

  • coupon start and expiry date
  • apply coupon automatically
  • display available coupons in the cart, checkout or My account page.

Step 2: Set the cart eligibility conditions for applying coupon

From the Usage restriction tab, select the product or category you wish to give the offer.

​​The UI fields that are directly dependent on the BOGO setup are the following:

Product/Category restriction: Enable to apply coupons only if the cart satisfies the product or category restrictions.

Individual quantity restriction: Enable to set minimum and maximum quantity restrictions for individual product/category instead of the entire cart. If disabled, then the Minimum quantity of matching products will be considered.

Product condition

Any from below selection: Applies coupon if any of the products from below is available in the cart.

All from below selection: Applies coupon if the cart contains all of the listed products.

Products: Apply coupon only if the selected product quantity is in the cart. Discounts will be given for the chosen product amount and not the total cart amount. For example, for setting up Buy X Get Y, choose the product/s X in this section.

Exclude products: For a fixed cart discount, the exclude option is used for validating whether the excluded product is in the cart or not. The coupon will not be applied if the excluded product is in the cart.

But for all other discount types, the coupon will be applied even if the excluded product is in the cart. In this case, the coupon will be applied to all other eligible products in the cart.

In the above example, move two ‘XC Tshirt or YT Tshirt’ to the cart to be eligible for the coupon.

Category condition

Any from below selection: Applies coupon if the eligible quantity of products from any of the below-selected categories are available in the cart.

All from below selection: Applies coupon if the cart contains the eligible quantity of products from all of the below-listed categories.

Product categories: Apply coupon only if the selected quantity of products of the chosen category is in the cart. Discounts will be given for the chosen product amount and not the total cart amount.

Exclude categories: For a fixed cart discount, the exclude option is used for validating whether a product from the excluded category is in the cart or not. The coupon will not be applied if the product from an excluded category is in the cart.

But for all other discount types, the coupon will be applied even if the product from the excluded category is in the cart. In this case, the coupon will be applied to all other products of the eligible category in the cart.

In the above example, move any product from the category ‘Fashion’ to the cart to be eligible for the coupon.

Step 3: Choose what the customer gets on discount

Under the Giveaway products tab, choose the product or category that you wish to give on offer. It can be the same product in the cart, any product from the store or any product from the same or different category and so on.

Giveaway products for BOGO

Customer gets: Choose what the customers get for free or with a discount if the cart eligibility or conditions are met.

Specific product

If cart eligibility or conditions are met, your customers will get specific product/s for free or with a discount.

In the above example, the customer will get ‘ZC T-shirt on 50%’ discount if the cart eligibility or conditions are met. That is, on moving two ‘XC Tshirt or YT Tshirt’ to the cart, the customer will get ‘ZC T-shirt on 50%’ discount.

‘Buy 2 get 1 at 50%‘ for a Specific product will appear on the front end as shown below:

Any product from a specific category

If cart eligibility or conditions are met, your customers will get product/s from the selected specific category for free or with a discount.

In the above example, the customer will get ‘Any product from the category Fashion at 100% discount if the cart eligibility or conditions are met. That is, on moving two ‘XC Tshirt or YT Tshirt’ to the cart, the customer can choose any product from the category Fashion completely for free.

Buy 2 get 1 from any specific category will appear on the front end as shown below:

Any product in store

If cart eligibility or conditions are met, your customers will get any product/s from the store that is eligible for free or with a discount.

In the above example, the customer will get ‘Any product from the store at 50$ discount‘ if the cart eligibility or conditions are met. That is, on moving two ‘XC Tshirt or YT Tshirt’ to the cart, the customer can choose any product from the store at 50$ off.

Buy 2 get 1 for any product in the store will appear on the front end as shown below:

Same product as in the cart

If cart eligibility or conditions are met, your customers will get the same product as in the cart that is configured in the product restriction section.

In the above example, the customer will get ‘Same product as in the cart at 100% discount‘ if the cart eligibility or conditions are met. That is, on moving two ‘XC Tshirt or YT Tshirt’ to the cart, the customer will get the same product as in the cart completely for free.

Please note that this option will work only if you have assigned Product conditions (Usage restriction> Product condition).

Buy 2 get 1 for the same product cart will appear on the front end as shown below:

Any product from the same category as in the cart

This option will be available for you from next release onwards. Please keep the plugin updated.

If cart eligibility or conditions are met, your customers will get a product from the same category as in the cart that is configured in the category restriction section.

In the above example, the customer will get ‘Any product from the same category as in the cart at 100% discount‘ if the cart eligibility or conditions are met. That is, on moving two ‘XC Tshirt or YT Tshirt’ to the cart, the customer will get any product from the same category as in the cart completely for free.

Please note that this option will work only if you have assigned Category conditions (Usage restriction> Category condition).

Buy 2 get 1 for any product from the same category as in the cart will appear on the front end as shown below:

Apply tax only on discounted value: Enable this option to calculate the tax only on the discounted value, e.g, If you are providing a discount of $10 on a $100 product, enabling this option will calculate tax only on $90, which is the product giveaway price (sale price).

After configuring BOGO in the required manner, publish the coupon and your coupon is ready to use.

  • Was this article helpful?
  • Yes, thanks!Not really
Get the plugin

On this page

  • Get started
  • Setting up BOGO
  • Step 1: Choose BOGO (Buy X Get X/Y) as the discount type
  • Step 2: Set the cart eligibility conditions for applying coupon
  • Product condition
  • Category condition
  • Step 3: Choose what the customer gets on discount
  • Specific product
  • Any product from a specific category
  • Any product in store
  • Same product as in the cart
  • Any product from the same category as in the cart

This article posted in BOGO discounts, Documentation, Smart Coupons for WooCommerce

Written by

Shesna

Shesna is a technical content writer for WebToffee. She is familiar in working closely with the SMEs to break down complex technical information into a concise, easy to understand manner.

Comments (8)

  1. Nitesh Chaudhary

    Nitesh

    December 31, 2022

    Hi ,
    I am a pro user. I want to offer buy one and get one but there is a problem. The final cart value should be the highest one of them and other should be free but here which one the customer choose first that is cart value and other automatically becomes free. Now if customer chooses high order product it is fine but if they choose low value product first then I am facing a loss here. Please help me resolve it.

    Reply
    • Mike

      Mike

      January 12, 2023

      Hi Nitesh,

      I understand your requirement. Unfortunately, the plugin doesn’t have the feature to provide the cheapest item as the giveaway product. However, we have recently implemented this feature in the beta version of the plugin. It will certainly be included in the next release of the plugin. If you can’t wait till then, we can share the beta version with you. In that case, you may create a ticket through our dedicated support desk.

      Reply
  2. Giuseppe

    November 24, 2022

    Hi, the pugin solves this case:

    buy A OR buy B OR buy C OR buy D get Y

    where A, B, C, D can be variable products.

    I await your reply before proceeding with the purchase. Thank you

    Reply
    • Mike

      Mike

      November 25, 2022

      Hi Giuseppe,
      You can certainly set up a BOGO coupon to achieve this requirement. Once a user adds any of the A, B, C & D products to the cart, they will get the Y product.
      You may go ahead and purchase the plugin. We will be there for you if you encounter any issues with the plugin. If it doesn’t meet your expectations or work out for you, you can take advantage of our 30-day money-back guarantee.

      Reply
  3. Tohar Lugasi

    Tohar Lugasi

    August 2, 2022

    Why there is no option of Buy 1 and get 50% off on the lowest price item? this is totally basic!

    Reply
    • TyQuan Jainlett

      TyQuan Jainlett

      November 9, 2022

      Hello, have you found anyway to make this work? I have been trying to get this done. Buy 1 and get 50% off on the lowest price item

      Reply
      • Mike

        Mike

        December 5, 2022

        Hello there,
        The BOGO on the cheapest product feature is currently being implemented in the plugin. We are working hard to find the best solution that is compatible with the plugin’s existing functionality. Thanks for your understanding on the matter.

        Reply
  4. Mena Cashback

    June 7, 2022

    Dear One! You are really serving the mankind with the words you are producing. The concept of change is really the main source of your blogs. Keep it up. I promise to come again to read the blogs you have produced.

    Reply

Got any query? Please leave a comment or reach out to our support

Cancel reply

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

We develop awesome WordPress plugins & WooCommerce extensions to help build successful online businesses.

© 2023 WebToffee. All rights reserved.

Our plugins

  • GDPR Cookie Consent
  • PDF Invoices & Packings Slips
  • Product Import Export Plugin
  • User & Customer Import Export
  • Import Export Suite
  • Sequential Order Numbers
  • Smart Coupons for WooCommerce
  • URL Coupons for WooCommerce
  • PayPal Express Checkout
  • Stripe Payment Gateway
  • Subscriptions for Woocommerce
  • Product Catalog Sync for Facebook
  • PrintNode for PDF Invoices
  • Order, coupon, subscriptions for WooCommerce
  • WordPress Backup and Migration
View more +

Get Started

  • Plugins
  • Testimonials
  • Affiliates
  • We're hiring

Help & Support

  • Documentation
  • Documentation (Basic)
  • FAQ
  • Support

Company

  • Terms & Conditions
  • Privacy Policy
  • Refund policy
  • Support policy
  • License Activation

© 2023 WebToffee. All rights reserved.

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies. However you may visit Cookie Settings to provide a controlled consent.
Cookie settingsACCEPT
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of the basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website, to store user preferences and provide you with content and advertisements that are relevant. Such cookies will be stored on your browser but only upon procuring consent.

You will also have the option to opt-out of these cookies should you want to. But opting out of some of these cookies may have an effect on your browsing experience as per the descriptions elucidated against the respective categories below.

Necessary
Always Enabled
The cookies defined under this category are absolutely essential for the website to function. Hence they are loaded by default irrespective if user consent.
CookieDescription
__cfruidCloudflare sets this cookie to identify trusted web traffic.
__stripe_midStripe sets this cookie cookie to process payments.
__stripe_sidStripe sets this cookie cookie to process payments.
cookielawinfo-checkbox-advertisementSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analyticsSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category .
cookielawinfo-checkbox-necessarySet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category .
cookielawinfo-checkbox-preferencesThis cookie is set by the GDPR Cookie Consent plugin to check if the user has given consent to use cookies under the "Preferences" category.
CookieLawInfoConsentRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
PHPSESSIDThis cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user sessions on the website. The cookie is a session cookie and is deleted when all the browser windows are closed.
viewed_cookie_policyThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not a user has consented to the use of cookies. It does not store any personal data.
Analytics
Analytics cookies help us understand how our visitors interact with the website. It helps us understand the number of visitors, where the visitors are coming from, and the pages they navigate. The cookies collect this data and are reported anonymously.
CookieDescription
_gaThis cookie is installed by Google Analytics. The cookie is used to calculate visitor, session, campaign data and keep track of site usage for the site's analytics report. The cookies store information anonymously and assigns a randomly generated number to identify unique visitors.
_ga_BQH8MSKD4MThis cookie is installed by Google Analytics.
_gat_gtagIdentification code of website for tracking visits.
_gidThis cookie is installed by Google Analytics. The cookie is used to store information on how visitors use a website and helps in creating an analytics report of how the website is doing. The data collected including the number visitors, the source where they have come from, and the pages visited in an anonymous form.
_hjAbsoluteSessionInProgressHotjar sets this cookie to detect the first pageview session of a user. This is a True/False flag set by the cookie.
_hjFirstSeenHotjar sets this cookie to identify a new user’s first session. It stores a true/false value, indicating whether it was the first time Hotjar saw this user.
_hjidHotjar cookie. This cookie is set when the customer first lands on a page with the Hotjar script. It is used to persist the random user ID, unique to that site on the browser. This ensures that behavior in subsequent visits to the same site will be attributed to the same user ID.
_hjIncludedInPageviewSampleHotjar sets this cookie to know whether a user is included in the data sampling defined by the site's pageview limit.
_hjIncludedInSampleThis cookie is set to let Hotjar know whether that visitor is included in the sample which is used to generate heatmaps, funnels, recordings, etc.
_hjIncludedInSessionSampleHotjar sets this cookie to know whether a user is included in the data sampling defined by the site's daily session limit.
_hjTLDTestTo determine the most generic cookie path that has to be used instead of the page hostname, Hotjar sets the _hjTLDTest cookie to store different URL substring alternatives until it fails.
CONSENTYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
has_recent_activityThis cookie is used to signal to the code repository website if the user has browsed other website resources during the current session.
tk_aiGathers information for our own first-party analytics tool about how our services are used. A collection of internal metrics for user activity and is used to improve user experience.
tk_lrThis cookie is set by the JetPack plugin on sites using WooCommerce. This is a referral cookie used for analyzing referrer behavior for Jetpack.
tk_orThis cookie is set by the JetPack plugin on sites using WooCommerce. This is a referral cookie used for analyzing referrer behavior for Jetpack.
tk_qsGathers information for our own first-party analytics tool about how our services are used. A collection of internal metrics for user activity and is used to improve user experience.
tk_r3dThe cookie is installed by JetPack. Used for the internal metrics for user activities to improve user experience.
Advertisement
Advertisement cookies help us provide our visitors with relevant ads and marketing campaigns.
CookieDescription
_fbpThis cookie is set by Facebook to deliver advertisements when they are on Facebook or on a digital platform powered by Facebook advertising after visiting this website.
frThe cookie is set by Facebook to show relevant advertisements to the users and measure and improve the advertisements. The cookie also tracks the behavior of the user across the web on sites that have Facebook Pixel or Facebook social plugin.
VISITOR_INFO1_LIVEA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
Preferences
Preference cookies are used to store user preferences to provide them with content that is customized accordingly. This includes the language of the website or the location of the visitor.
CookieDescription
_gh_sessThis cookie is used to preserve users' states across page requests.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDurationDescription
_hjSession_137657130 minutesNo description
_hjSessionUser_13765711 yearNo description
_octo1 yearNo description available.
_zendesk_authenticatedpastNo description
_zendesk_sessionsessionNo description available.
_zendesk_shared_sessionsessionNo description available.
edd_wp_session12 hoursNo description available.
logged_in1 yearNo description available.
m2 yearsNo description available.
Save & Accept