Notice: Function WP_Scripts::localize was called incorrectly. The $l10n parameter must be an array. To pass arbitrary data to scripts, use the wp_add_inline_script() function instead. Please see Debugging in WordPress for more information. (This message was added in version 5.7.0.) in /home/d689c45/public_html/wp-includes/functions.php on line 6031
How To Create a wooCommerce bulk discount per category of product?

Woocommerce bulk discounts are one of the most popular deals mainly used to increase the average order size on online stores. Despite WooCommerce being one of the most popular shopping cart systems in the world, one of their limitations is their dynamic discount system. Luckily many free plugins such as Conditional Discounts for WooCommerce fill the gaps by adding multiple dynamic pricing features such as the bulk discounts per category, per product, tags, custom property, field or meta. In today’s article, I will teach you how to create a woocommerce bulk discount per product and how to do the same for an entire category of product all these in few clicks.   Based on the purchased quantities of a product, woocommerce bulk discounts allow the shop manager to dynamically define a discount or a special price per product when the customer purchases multiple quantities of the same product at the same time. Conditional Discounts for WooCommerce provides 3 ways of creating woocommerce bulk discounts.

How to create a woocommerce bulk discount per category of product, tag or custom property?

A product category is one of the most popular product grouping options. A bulk discount per category is useful when you have an entire category of products that follow the same bulk discount rules. You’ll agree that it will be really exhausting to repeat the same definition product per product especially if you have dozens, hundreds or thousands of products per category.   To create a woocommerce bulk discount per category, we’ll first need to create a products list that will contain all the products within the category we want to target. Our list can contain products from multiple categories, tags, custom property, field or metas and any grouping property you can think of. If you don’t know how to create a product list, please start here.   Before creating our discount, let’s use an example to better understand how it will work:

  • If the customer purchases between 5 and 10 of a product within the clothing category, we need to apply a 10% discount off the product price.
  • If the customer purchases between 11 and 20 of a product within the clothing category, we need to apply a 13% discount off the product price.

Now that we agree on what we intend to do, we can now create our discount by following this woocommerce bulk discount demo:

  1. Click on Discounts > New Discount menu to access the new discount page.
  2. After setting up the basic discount properties such as the start and end date, periodicity and user limit, set the rules relationship to AND.
  3. Then click on the Add rules group button to create a new rules set.
  4. The first rules group we need to add will make sure this part of the discount applies: “If customer purchases more than 5 of a product within the clothing category”. In order to do that, click on the Add rules group button to create a new group.
  5. Select the If Order items count as discount condition for the first rule.
  6. Then select is more than as comparison operator.
  7. Finally enter 5 as value to compare the condition with.
  8. Then click on the and button in the group to add a new rule within the same group below the first rule we just set.
  9. Set If Order products as discount condition, IN as operator and select the product list you previously created as value to get the result below: woocommerce bulk discount per product category
  10. Click on the Add rules group button to add the second rules group. That second group we need to add will make sure this part of the discount applies: “If customer purchases less than 10 of a product within the clothing category”. Repeat the previous steps to setup the group as below: woocommerce bulk discount per product category It’s highly important that these two groups are added separately in order to have the plugin interpret each group independently according to our needs.
  11. Set the discount Action to Percentage off product price.
  12. Set the Evaluate per product to Yes if needed to make sure the plugin evaluates the number of purchases per product.
  13. Select the previously created Product list on which to apply the discount when all defined conditions rules are met.
  14. Save the discount.
  15. Create a different discount for each interval of your woocommerce bulk discount per category strategy.

The entire discount for the first interval will look just like this:

woocommerce bulk discount interval

This completes our tutorial on the woocommerce bulk discount per category configuration using Conditional Discounts for WooCommerce. If you have any questions, use the comments section to ask.

20 comments

  1. Chris

    I need to apply a fixed amount discount from the subtotal if someone buys at least three of a certain category. When I set it up as described here, it takes the fixed amount off even if all three items aren’t from the same category.

    March 22, 2018 at 11:45 pm
    Reply
    • Grace Ouendo

      Please start a live chat at the lower right side of your screen so our support team can help you.

      March 24, 2018 at 4:20 pm
      Reply
  2. Jose

    How can I set a 3×2 discount per category?
    I mean not a discount based on purchase 3 identical items, but 3 different items being part of the same category.

    May 25, 2018 at 10:43 pm
    Reply
    • Donald Faly

      Use the rule “If Different order items count” instead of “If Order items count” for discount based on different items

      May 26, 2018 at 8:15 am
      Reply
      • Luis

        how can I configure 3×1 taking the cheapest with 50% discount:
        When a customer buys 3-5 get 1 the cheapest one for free.
        When a customer buys 6-8 get 2 the cheapest for free.
        When a customer buys 9-11 get 3 the cheapest free.

        Each client will choose differently, for which I need to be allowed, for example, 2 of the same and 1 of another different product, and they are on the list.
        or if you have 3 of the same and they are on the list.
        or if it has 3 but they are all different and are included in the list.

        I have created a single list with the ids of the products.
        I have created 1 discount for range 3-5 get 1 cheapest for free.
        I have created 1 discount for range 6-8 get 2 the cheapest for free.
        I have created 1 discount for range 6-8 get 2 the cheapest for free.

        In advance very grateful.

        June 12, 2022 at 9:28 pm
        Reply
        • Donald Faly

          Hello Luis,
          Please See the following examples to configure your discounts.
          example1
          example2
          example3

          June 13, 2022 at 1:40 pm
          Reply
  3. lplightle

    I have a Buy 2 get 1 free rule setup, but I need it to repeat for every group of three items they add to their cart. How do I do this?

    November 2, 2018 at 10:24 pm
    Reply
    • Adedayo Adeniyi

      Hi there!
      You can use the logic that includes “Multiples of” 2 i.e. IF Order products count “Multiples of” 2.

      November 5, 2018 at 2:08 pm
      Reply
  4. mamick6012

    I have to change EVERY product to allow for discounts? I have HUNDREDS of products. PLUS, each time If choose to offer a different type of discount, I have to change the discount type in each product?? If so, this is ridiculous! Please tell me I am misunderstanding these instructions.

    February 5, 2019 at 9:30 am
    Reply
    • Donald Faly

      Hi there!
      If you want a specific pricing table with a different discount type for each product, you must create it for each product, unless you use the same type of discount there you can create bulk discounts on all your products.
      What do you recommend ?

      February 6, 2019 at 9:54 am
      Reply
  5. Denny

    Hey!
    I want to know how I can achieve my discount rule: if you buy more than 3, less than 20, in category x with attribute x, you only have to pay a fixed price of xx,xx. Means: if the customer buys 4, 5, 6 etc. (more than 3), till 20 products, he has to pay a fixed amount of xx,xx$.
    I´ll be so glad, if you can tell me, how I can reach this rule. 🙂
    Thanks in advance!

    February 20, 2019 at 12:51 pm
    Reply
    • Donald Faly

      Hi,
      You must create two different combined rules as described in the tutorial.
      In your case you the rules will be :
      “if order item count is less than 3” and “order product in your product list (category x)”
      (Use “Add rules group” to add the second combines rules exactly as describe in the tutorial example picture )
      “if order item count is more than 20” and “order product in your product list (category x)”
      The action in this case will be : “Fixed product price”

      Note : If you want to filter your product list according to a specific attribute, you have to manage it in the taxonomy part when creating the product list

      February 20, 2019 at 3:32 pm
      Reply
  6. andres julian chalarca

    How does it works the date and time of the discounts regarding the time zone? How do I know what time zone is taken in account while creating a discount by time?

    December 20, 2019 at 10:24 pm
    Reply
    • Donald Faly

      the dates in the discounts allow you to define the start and end dates of the discount being created.
      The plugin uses the default timezone defined in the general settings of your website.

      December 24, 2019 at 9:24 am
      Reply
  7. SAUL

    Hi, how can I show a message about the discount that can be reached? i.e. “If you buy more than X you get X discount”

    January 18, 2021 at 8:55 pm
    Reply
    • Hermann

      Hello,
      Unfortunately we don’t have a feature like that at the moment…

      January 19, 2021 at 8:07 am
      Reply
  8. SteCha

    Hello,
    until the last update from this plugin, if I made a discount rule for a category, the discount price would appear on my homepage in the “Recent Products” section. But after the update, it does not happen anymore.
    How do I display the discount price on my homepage?

    January 24, 2021 at 6:28 pm
    Reply
    • Hermann

      Hello,
      Can you create a ticket by sending an email to help at orionorigin dot com so we can take a look?

      January 25, 2021 at 9:20 am
      Reply
  9. Philippe

    Hi, how can I use the product-specific Discount Price (default to woocommerce) in my rules if the customer buys multiple products of a category ? I’ve a different discount price for each of my products and cannot apply a common rule over everything..

    September 10, 2022 at 9:16 am
    Reply
    • Donald Faly

      Hello Philippe, sorry for the late reply.
      Unfortunately this is not possible with the plugin however you can request the customization of the plugin by starting a new live chat or by filling this form https://discountsuiteforwp.com/get-in-touch/

      September 21, 2022 at 1:16 pm
      Reply

Leave a comment

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