How to setup a dynamic woocommerce discount on shipping fees

In the same way that you can offer discounts on products price or on the cart subtotal, you can also offer woocommerce discount on shipping fees using the Woocommerce Dynamic Discount plugin.

WooCommerce offers many possibilities to define shipping fees. In general we have three shipping methods which are Flat rate , Local pickup, and Free shipping (read more about them by clicking on the links).

The Conditional Discounts for WooCommerce plugin allows you to apply discounts on shipping fees within the cart and this based on specific rules (which you can define in the discount settings).

Conditional Discounts for WooCommerce works with rules and product lists. So you can create dynamic discounts based on product lists and some rules. Click here to see how you can create product lists.

Many rules can be used to create discounts and some rules can be coupled to create advanced dynamic discounts like the woocommerce discount on shipping fees.

The screenshot below shows you the list of rules that can be defined :

word image


The image below shows you how to offer a 3% off discount on cart subtotal if for example the customer buys more than $500 worth of t-shirts.

word image 1

Now let’s see how to setup a woocommerce discount on shipping fees.

Let’s assume that the product list has been created and the shipping fees has already been defined. If you’re not sure how to do that, please check here.

The next step will consist in creating the discount.

To create a discount shipping fees using Conditional Discounts for WooCommerce follow these steps :

  1. Go to the WordPress Dashboard.
  2. Click on Discounts > New Discount menu to access the new discount page.
  3. After setting up the basic discount properties such as the start and end date, periodicity and user limit, set the rules relationship.
  4. Then click on the Add rules group button to create a new rules set (this step can also be ignored if you want to apply the discount to everyone without rule)
  5. Select the rule that best fits your demand
  6. Choose the specific Action; the type of discount to apply. For shipping discounts types, we have three possibilities.
    • Percentage off shipping fees : defines the discount percentage off the shipping fees
    • Fixed amount shipping fees : defines the discount amount off the shipping fees
    • Fixed shipping fees : defines a new fixed shipping fees that should be paid by the customerword image 2
  7. Select the percentage or fixed amount to apply according to your previous choiceword image 3
  8. Choose the shipping methods on which the selected action applies on. Here you have two possibilities. As said above, you have three shipping methods and only Flat rate and Local pickup can receive discounts. Note that Multiple choices are allowed here.word image 4
  9. Publish the discount.

Some dynamic WooCommerce discount on shipping fees examples using Conditional Discounts for WooCommerce:

  • 50% off discount on shipping fees for the first 10 customers who ships orders to Romania or Russiaword image 5
  • Free shipping if order subtotal is more than $999word image 6
  • Apply $2 off Flat rate shipping fees if customers email domain name is orionorigin.comwoocommerce discount shipping fees

This tutorial is to help you learn how to create a woocommerce discount shipping fees whenever you feel the need to do it.

If you have any questions or remarks, kindly drop a comment below.



22 thoughts on “How to setup a dynamic woocommerce discount on shipping fees

  • Hi guys,

    I am trying to figure out if your plugin can do what I am looking for. I know it says it can discount shipping fees.

    Basically, I am looking to be able to discount the shipping cost by an amount per item. So for example, say delivery is £20, I can make it so each product added discounts it by £1. If they add 10 of the same or different products, it will now be £10 shipping. If they add 20 products, it will be £0 shipping fee. Is this possible?

    Many thanks

    • No it is not possible to offer free shipping based on shipping zip code but you can offer it based on shipping state.
      You can hire us to develop this solution for you if you wish.

  • Hi I am looking for something like this

    My woocommerce shipping is only configure 1 Free shipping for all product like default shipping is “Free shipping”
    I also import shipping by alishipaddon and i want to add at least 1 premium shipping which is imported from alishipaddon beside my free shipping (default) options.
    however when i add 1 premium shipping from alishipaddon then it’s not allowed to make combine shipping (means same 2 product with different properties can use 1 shipping fee)
    so if use your plugin can i set a rule like this – if same product with different variants it will just consider 1 shipping fee?

      • Hi donald,

        Great thanks, BTW
        is it possible to do a trail/simulate with this plugin and see my expected result if its work then i can go for this plugin. how can I do a trail test? please advice.

  • Hello, I use the Colissimo Officiel plugin as shipping method (Colissimo at home and Colissimo relay). Is it possible to add a rule (free shipping) with this shiping method or your plugin can only recognize the WC basic shipping methods ? So these methods could be displayed but with price = 0 ? Thanks a lot for your reply.

    • Hello,
      Our plugin can recognize custom shipping methods. You can for example set 100% off the shipping fees if the selected method is Colissimo and it will work fine.

  • Hi guys, I need to offer a shipping fee discount just if the costumer has a specific membership plan, also, offer a various percentages discounts if the costumer have the membership active, and combine with the total purchase amount. is this possible? thanks

  • My client (operate a restaurant) allows for order $60 & above to enjoy special promotional shipping fees. But different location has a different discount rate, not a fixed percentage for all area. There are 14 locations/areas. Can this plugin help me? Btw, the restaurant is located in Singapore.

    • Hello Jasmine, Yes, the plugin can do it but you will have to create a discount for each location as the amounts differ

      • Can I enter the exact discounted amount in number… like $20 (for example, the amount after discount)? Or I need to enter by percentage for each location?

  • Hi! We’re using this with WooCommerce’s FedEx Shipping Method and would like to offer 100% off shipping if users use FedEx Ground (but not Priority Overnight or any others). Is there a way to set this up as a condition with your plugin, or is there another workaround to get there — any help appreciated!

    • Hello Michael, yes it is possible to set up a discount based on any shipping method available on your store using the plugin.

    • Hello Manu,

      We can help you reset the domain the license is active on whenever you’re ready to go live. And should your test site be a subdomain of your live site (or is installed on another path on the same domain) then there would be no need for us to intervene.

      The license works for a particular domain and ALL of its subdomains.

  • I would like to set up a discount that only applies to the “local pickup” option. The discount will need to subtract $20 off of each item in the cart if local pickup is selected

Comments are closed.