In this article, you will learn everything you need to know about WooCommerce free shipping over amount. I’ll show you a free plugin that allows you to easily configure free shipping over amount and hide the paid shipping methods when the free shipping treshold is reached.
Let’s start with the basics. Entrepreneurs work hard to set and achieve their profit goals. Business is not a charity. That is why, a lot of managers have a strong bias against offering anything for free. However, in this case, the expression is purely a marketing tool – used because it can significantly increase your sales. The truth is, that free is not entirely free. Additionally, it is a great incentive to encourage customers to spend more. You should approach it as a business model. Merchants simply hide the costs in ’s price, rather than being upfront about it.
It may sound bizarre, but customers actually prefer the to be hidden in the price and love to receive free shipping. The research data does not lie. Let’s take a look at some interesting facts:
Clearly, free is by far the best tool to boost your sales and attract potential customers. Real money lies over there. Thousands of shops offering weird discounts are actually missing the key to increase the conversion rate. What is most interesting, all the research data points out an astonishing tendency. Online users would still prefer to select an item with free costs, even if the total value of the cart is still the same! , rather than a discounted item with
As simple as it is, people really hate costs. High delivery charges are the number one reason causing consumers to abandon online purchases, according to a survey by PayPal and comScore. A shocking 43% of those surveyed didn’t pay for items in their shopping carts because fees were too high. Nobody likes extra costs. It is quite understandable why free would make customers feel safe about no additional fees. To put it simply – it makes the cost calculation steady from page to checkout.
WooCommerce has a free shipping feature built-in. That’s great! It’s much easier to configure it when it’s supported, without the need for a plugin.
You need to go to the shipping zone to which you want to add your free shipping method (step 1). You’ll find it in WooCommerce → Settings → Shipping. Then you need to click on the Add shipping method button (step 2). Look at the screenshot:
A new window will pop up. You need to provide a Title. The title is used to display a shipping method in the cart and checkout.
The key feature in the WooCommerce Free shipping settings is the Free shipping requires… option. It differs the free shipping method from other methods: Flat rate and Local pickup.
This feature gives us all the options we need. I’ll guide you on them.
You can offer free shipping without any conditions. It will be offered to every customer in your store, for every order. If your pricing strategy allows for such a shipping method, feel free to configure it this way!
The first option for WooCommerce free shipping is to generate a valid free shipping coupon. How to generate such a coupon for marketing purposes? Just go to WooCommerce → Coupons → Add new and mark the Allow free shipping checkbox:
Don’t you have coupons feature in your store? Learn how to enable it and create WooCommerce coupons →
I created shippingpromo coupon here. Look how it works in the cart:
As you see, before I use the coupon, there is only one shipping method available: Flat rate. The second one – Free shipping – appears only after successfully applying the coupon.
Free shipping is a great marketing solution for generating more sales. People often add more to the cart to get free shipping.
Think about your costs and profits. Do you know when you can cover the shipping rate to still be profitable? Enter the amount in the Minimum order amount field and Save changes.
WooCommerce free shipping method offers something more: the hybrid solution. You can configure the method to apply when:
From a marketing perspective, you can make more types of promotions. Sometimes it’s better to offer free shipping above some amount, but only for customers with a coupon.
That coupon could be distributed exclusively via newsletter or social media. Configure the WooCommerce Free shipping method the way you need, the way it fits your store’s marketing vision.
Let’s say we want to configure such rules:
By default, you configure two shipping methods: Flat Rate for the first condition and Free Shipping for the second one. Free Shipping is not difficult to configure. However, there is a problem with such configuration. Both of the shipping methods will show up in the cart.
Go to your shipping zone: WooCommerce → Settings → Shipping and select your shipping zone.
Click the Add shipping method button and select the shipping methods.
Once you add them you will see such screen:
Click on the Flat Rate. The Flat Rate Settings for our example will look like this:
Next step is to configure the Free Shipping. You configure this shipping method that way:
It works now. You have configured WooCommerce Free Shipping over amount.
What’s the problem then? When customers exceed, £200 in order, they will see both shipping methods:
What you probably want to achieve is to show only one of the shipping methods. The Free Shipping.
When customers don’t exceed £200 in order, there should be £10 flat rate in the cart:
When they exceed £200 in order, there should be only Free shipping available:
I think that it should be the default way in which WooCommerce Free Shipping over amount works.
If you share my view, check out the solutions I found.
This is probably the simplest solution to configure WooCommerce Free Shipping over amount. You can just use the Flexible Shipping plugin that we developed. It’s a free that’s used daily by over 100,000 stores worldwide.
This plugin lets you create . in your it’s much more powerful than regular
Look:
You simply set 200 as Free Shipping. Next, you add only one table rate shipping rule by setting rule cost is: 10.
It will work the same way as the previous configuration, based on both Flat Rate and Free Shipping methods. However, it is definitely easier. You will do the whole configuration in one shipping method. What’s more, the plugin has a built-in Free Shipping label option. If free shipping is applied, you can display additional information for your customer. It’s a small thing, but it works great as a UX touch, and it will also reduce abandoned shopping carts.
Most importantly, by using one shipping method, you will avoid the problem that occurred when using the default shipping methods – two shipping methods in cart.
Display Remaining Amount to Free Shipping
If you want to further strengthen your free shipping and increase the value of your sales cart, the plugin has another feature: free shipping bar. Thanks to it, your customers will get information in their shopping cart and on the order page about the amount missing for free shipping in WooCommerce.
This plugin is not only powerful. It is available to download for free!
The best Table Rate Shipping for WooCommerce. Period. Create shipping rules based on weight, order totals or item count.
Download for free or Go to WordPress.orgThe configuration example shown above was a rather basic use of the plugin. If your free shipping scenario is more complex check out the more advanced scenarios:
Offering free products, it might be unprofitable. The solution for that is to disable free products. for certain in your online store is a great way to boost sales. However, for some
Free products in your store you should consider setting a weight limit for free and offer different for overweight orders. can be a very effective marketing tool that should benefit both the and the . But, if the order weight exceeded a certain amount, it can be problematic. If you sell heavy
Free options. You can use the quantity of the ordered products as the factor that will determine the no . over amount is not the only way to set the free delivery
If your requirements for PRO and set up based on one of the available conditions: methods are even higher you can use
– order weight
– size
– (WooCommerce , category, specific )
– user role
– time (day of the week, time of the day).
The best Table Rate Shipping for WooCommerce. Period. Create shipping rules based on weight, order totals or item count.
Add to cart or View DetailsIn this article, you have learned how to configure WooCommerce Free Shipping over amount with free WooCommerce plugin.
If you need any more help, let us know in the comments section below.
Yet another thing. I want to recommend you our Ultimate Guide to WooCommerce Shipping.
If you prefer video to text, you can also watch our latest video on How to Set WooCommerce Shipping Based on Product Category.
Learn how to configure custom shipping rules for furniture orders – from heavy and bulky to small and light.
Read Octolize Case Study about Vitrek – a provider of innovative global solutions for High Voltage Test and Measurement.
Read Octolize Case Study about EnglishSpeakingMum – Polish dedicated and involved parenting blogger.
i am using flexible shipping plugin but when the order amount is above the free threshold limit despite the payment getting through it shows the message ” Security Error. Illegal access detected. Please proceed to pay again” on returning to checkout page
Hi Rajesh, to be honest it’s the first time we are notified about such problem and it’s pretty odd since our Flexible Shipping plugin shouldn’t affect the payment gateway mechanisms in any terms. Please contact our support and we will try to figure out what’s wrong and what may be responsible for such behaviour.
Is it possible to have 2 free shipping scenarios based on the product category? I want to have free shipping above x spent in category a and free shipping above y spent in category b. And in mixed categories the higher value applies. Is this possible?
Hi Cor, yes, it should be possible to configure using our Flexible Shipping PRO plugin and WooCommerce shipping classes.
I need to add free shipping to orders of four or more items. How do i do this?
Hi Elnorz International, have you tried creating creating a rule based on Item quantity and simply setting its cost to 0 this way? [Image no longer available]
The snippet doesn’t seem to be working for me – WC 4.1+
Tested on 2020 theme, but still both shipping methods and showing. Hmm..
Got it working. Found a thread on StackExchange which mentioned having to do this:
There’s an alternative suggestion which I haven’t tried;
WooCommerce > Status > Tools > Clear customer sessions
Hi Lukasz,
Can you help me please? I set the Free Shipping minimum amount to 20000. The rules are:
1. Price based: 1- 3500 Shipping fee 1600
2. Price based: 3501 – 19999 Shipping fee 2000
Until I get the free shipping threshold everything works fine, but when the total order amount exceeds 19999 it says there are no shipping methods. What can be wrong?
I have only Flexible Shipping method set up for one zone.
Ahhhh, never mind! 😀 I figured it out.
If I delete the Free Shipping minimum amount and add a new price based rule that says:
above 19999 the Shipping fee is 0, then it works fine 🙂
What if I need to show Flat Rate and Local Pickup option and the Flat rate becomes Free Shipping when a free shipping coupon is used?
Hi Satyabrata, it can be easilly achieved using our Flexible Shipping PRO plugin and its Free Shipping Requires: Free shipping coupon option: [Image no longer available]
Thank you so much for your great writeup!!! I would love to read something like to to show a “Spend another XYS Euros to enable free shipping!!!” banner on top of the cart.
Hi Robert, we’ve just released the update for the free version of our Flexible Shipping plugin containing exactly this feature. Once this checkbox is ticked: [Image no longer available] the notice will be displayed in the cart and on the checkout page this way: [Image no longer available]
Hi,
I offer a number of items as Flat Rate, but with large quantity orders sometimes the accumulated postage fee is an absurdly large amount. I can’t offer Free Shipping over any amount. I want to set and charge a maximum postage fee per order. I have done this, but both postage amounts appear in the checkout and the customer needs to click one of the radio buttons. Could you please tell me how do I get just the one valid shipping value to appear? TIA.
Hi Ivor, I believe in your case instead of using two separate WooCommerce default shipping methods (Flat Rate & Free Shipping) you should replace them with one shipping method handled by our Flexible Shipping plugin. Then, you will be able to define not only the shipping cost calculation rules based on Item quantity, but the maximum postage fee per order using the Maximum Cost option as well.
[Image no longer available]
Thank you for confirming.
What about different currencies? £200 and 200 rupees is way big difference.
Hi Sandis, if you are using the currency switcher in your shop I suppose you should add some additinal conditioning resulting in using the proper shipping method with free shipping threshold set depending on which currency is currently active.
Hi There,
I am trialling your pro plugin and trying to replicate the following scenario:
For a specific shipping class:
if cart total equals $69.00 and weighs less than 5kg = Free shipping and/or
if cart total equals $89.00 and weighs less than 10kg = Free Shipping
otherwise
0-2kg $4.50
2-5kg $6.00
5-10kg $8.50
Can I achieve this in with the pro plugin? I have tried a lot of different options but don’t seem to be able to get it to work…..
Hi Julian, yes I believe our Flexible Shipping PRO plugin should be able to handle such scenario. In order to configure it, you will need to split the whole scenario into 3 separate shipping methods and set so called ‘filtering rules’ hiding the other methods if the specific condition has not been met.
Is it possible to exclude certain products from the amount threshold? I have a certain category of products that I don’t want to offer free shipping for. Prices of these products should be subtracted from the total. Any idea if this is doable?
Hi Kiran, I believe in such case your free shipping should come from the rule’s calculation cost ($0), not from Free shipping option. If it comes from the rule, you will be able to set which products should be included and which not. If you set e.g. such rule granting the free shipping above $200 for all the products with shipping class assigned and add the second one as on the screenshot below:
[Image no longer available]
the $0 will be applied only for the products with the shipping class. The ones without the shipping class assigned (Shipping Class: None) won’t be considered during the shipping cost calculation and will be excluded.
Hi, say I have free shipping for orders over £50. I also have a 20% off coupon. so say somebody has ordered products to total 58, they the use the coupon taking it down to 48.40 (roughly!) I want it to give the free shipping as original cost was over 50.
I set up an additional rule saying ‘if cost is minimum of 40 AND a coupon is used, give free shipping. the trouble is, it gives both free shipping options at checkout.
I believe woocommerce v4.0 and above includes this as an option but i cannot upgrade woocommerce for the life of me.
PLEASE HELP!!
Hi Ryan, I believe this option available in our Flexible Shipping PRO plugin might be the exact solution you are looking for: [Image no longer available]
if i have 2 delivery options, all shipping to the same country, option 1 charges flat rate as $10, but free if order amount over $200; option 2 charges flat rate as $15, but free if order amount over $300; can this plugin “Flexible Shipping ” help? Thanks
Hi MC, yes, I confirm, our Flexible Shipping plugin should handle such scenarion with ease.
Hi there,
How about if you want to have free shipping plus expedite shipping available too?
I tried different scenarios and couldn’t figure it out. Do I need the paid version for that to work?
The flat rate and free shipping works but I also want my customer to have the option to pay for expedite shipping.
Thoughts?
Thanks – Paul G
Hi Paul G, it sounds like simply having the two separate shipping methods running simultaneously should do the job.
Hi there (coudnl’t tag your username),
I tried that but the free shipping option goes away and the customer is force to do the expedite shipping only.
Not sure why but I created two separate shipping methods. two different flexible shipping methods and also one flexible and one regular (from woo) and still same issue.
Thanks for any help in advance.
Best,
Paul G
Paul G, could you please describe how exactly these two methods should depend on each other? The standard shipping should become free e.g. after reaching the defined order total price and the expedite shipping should be always available to pick, they should be hidden or should it be handled another way?
Hi there,
I figured it out.
I think I figured it out. I had to put the conditions on flexible shipping to be “always” = $5.99 rather than ‘price’. I thought price was for the overall order and not the price of the product. I think that was the issue.
Thanks it works now.
Hi Paul G, I’m glad to hear you were able to solve this out. The Price condition refers always to value of the products in the cart or the specific products’ shipping classes if used.
Thank you!
thanks alot.
Neither the snipet nor the plugin worked. The screen above is nowhere to be found when I downloaded the plugin
Hi Fx Resources, could you please clarify which settings’ screen exactly you weren’t able to localize? Knowing this I believe I will be able to help you and provide you with the proper information where to find it.
Hello,
I created 10 shipping classes and I want assign a free shipping threshold logic for each one.
For example: if customer’s cart amount for shipping class n°1 is above the threshold the shipping rate will be free and if in the cart there are also products of class n°2 with an amount below the threshold the shipping cost will be 6€.
Can I set this rule with one of your plug in?
Thanks for support,
Giovanni
Hi Giovanni, yes, I confirm that our Flexible Shipping PRO plugin should be able to handle the scenario you’ve described.
Can I add another method to show still if over an amount in addition to Free Shipping to include an “in store pick-up option”? Using the functions.php code edit option?
Hi Kathleen, I believe that it can be achieved simply by adding one more shipping method handled e.g. by WooCommerce default Flat Rate or Flexible Shipping which will be displayed simultaneously all the time, no matter if the free shipping threshold was reached.
I want to use the code you gave,
But after I insert it into the function file
He writes me such a note:
It is not possible to communicate with the site to check for serious errors, so the change in PHP was canceled and the code was restored. The PHP file should be uploaded with the changes by other means, such as using SFTP.
what can be done?
Hi Miri, have you checked if the snippet was added to the functions.php file properly, without the opening
<php?
code fragment at the beginning? If not and if it the opening code fragment was pasted by mistake as well it might result in php syntax errors you’ve mentioned. If removing it won’t solve the problem you can also try adding the snippet above via Code Snippets plugin or similar one.Hi! Is the “left to free shipping notice” and the “hide paid shipping” applicable for minimum spent rules for different countries?
Here is the example:
Will subscribing to Flexible Shipping PRO enough to get me these features? Or do I need to subscribe to the bundle?
Looking forward to your response. Thank you.
Hi Sarah, the scenario you’ve described should be possible to configure either with the Flexible Shipping PRO plugin only if all of the shipping methods in your shop are handled by Flexible Shipping or with Flexible Shipping PRO combined with Conditional Shipping Methods if you are also using other shipping methods, e.g. WooCommerce defaults or the ones coming from 3rd party plugins and want them to be hidden as well once the free shipping threshold is reached.
First, thanks a million for this article. I got “free shipping” to hide for orders under $30, but once the order hits 30 both shipping options appear. Website is http://www.pandantealeaf.com.
Hi Mariah, that’s because you are using 2 WooCommerce default shipping methods to handle this scenario – Flat rate and Free shipping. Unfortunately, the Flat rate cannot be hidden by default under specific circumstances since it doesn’t have such functionality in-built. I believe that the better option here, instead of using 2 separate shipping methods, would be configuring it all with only one Flexible Shipping method with $30 free shipping threshold set. If configured this way, it will work the same way as the Flat rate before and the shipping cost will be $3, but once the cart value reaches the $30 the shipping will become free. All handled by only one Flexible Shipping method and using only its free version available to download here: https://wordpress.org/plugins/flexible-shipping/.
Perfect! thankyou! its great to find copy and paste solutions, saves a lot of thinking and trial and error, love programming in WordPress but very time consuming…..
Thanks, Your code is helped me.
Hi Hatul, you’re welcome. We’re glad to hear it was helpful in your case.
Hi there,
I really appreciate this code snippet! I’ve checked quite a lot pages to find the real solution for my problem. I’ve also made a little modification in order to include in the modified list the local_pickup possibility as well:
Hi Istvan, it’s great to hear that it turn out to be helpful in your case and thank you very much for your contribution : )
Just wow but thing I am stuck for is I want either my customer can get free ship on certain cart value or they can get coupon discount at whatever cost not both at same time as I want to disable one for another simply but how can I do that? Please help.
Hi Amogh, just to make sure if I got everything right – you want to offer your customers the free shipping automatically once they reach a certain cart value threshold but they should also have the free shipping granted when they apply the free shipping coupon, even when their cart value is below the threshold – is that correct?
Thanks for the reply, will check on it surely