How to Configure WooCommerce Free Shipping Coupon in Your Store (Quick Guide)

Free Shipping Coupon WooCommerce
Author Bartosz Gajewski
Reading time:
3 minutes read

In this article, I’ll teach you how to configure WooCommerce free shipping coupon. In this configuration, you will have both Free Shipping and Flate Rate shipping method. The second one will not show in the checkout when Free Shipping is available.

Let’s say we want to configure such rules:

  • £10 flat rate
  • free shipping with coupon

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 a configuration. Both of the shipping methods will show up in the cart.

I will tell you more about it later and I will give you a few solutions.

The configuration of WooCommerce free shipping coupon

Go to your shipping zone.

Click the Add shipping method button and select the shipping methods.

Shipping: add a shipping method

Click on the Flat Rate. The Flat Rate Settings for our example will look like this:

Flat Rate Settings

Next step is to configure the Free Shipping method. If you need help with it, read our WooCommerce Free Shipping Guide →

Once you add these two methods, you will see such screen:

Shipping zone settings: UK

You need to create a coupon next:

WooCommerce - Coupons

If you don’t have Coupons in WooCommerce menu, you need to activate them. You’ll find the option in WooCommerce settings:

WooCommerce - Coupons

While creating a coupon, you need to mark Allow free shipping checkbox:

Coupon data - allow free shipping

That’s all. You have configured WooCommerce free shipping coupon and it works now in your store.

You can use the coupon for marketing purposes.

But there’s one thing I mentioned at the beginning of this article.

The problem: two shipping methods in the cart

When customers add the coupon to an order, they will see both shipping methods:

Cart totals: both methods

But in such situation you want to show only the Free Shipping, right?

So we want to configure it this way:

When customers don’t add a coupon to an order, there should be £10 flat rate in the cart:

Flat rate in cart

When they use a coupon, there should be only Free shipping available:

WooCommerce free shipping coupon: WooCommerce Free Shipping over amount

I think that free shipping coupons should work this way by default.

The solutions to hide other shipping methods

You need a function that will hide all other shipping methods except for the Free shipping.

I found two solutions:

  • a plugin
  • a snippet

I’ll guide you through both of them.

WC Hide Shipping Plugin

It’s easier to use a plugin.

You need to download WC Hide Shipping Plugin. It is a free plugin. Over 5.000 stores use on a daily basis.

You need to install and activate the plugin. Next, you can configure it.

Go to WooCommerce → Settings → Shipping → Shipping options:

WC Hide Shipping Methods - Settings

As you see above, you can select which shipping methods the store should display in the checkout:

  • Free Shipping or
  • both Free Shipping and Local Pickup

You can select the second option if you use Local Pickup in your store.


There is another solution. You can simply add a snippet to your theme’s function.php file.

It’s a short snippet as you can see below:

Hide free shipping snippet

Grab the code

Flexible Shipping plugin as an alternative

You can use Flexible Shipping plugin that we developed instead of Flat Rate.

Over 243,566 stores worldwide use this plugin on a daily basis.

This plugin lets you create table rate shipping methods. Learn more about them.

It is very powerful. People appreciate Flexible Shipping! Look:

Reviews - screenshot

This plugin is not only powerful. It is available to download for free!

Flexible Shipping WooCommerce

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
100,000+ Active Installations
Last Updated: 2024-07-01
Works with WooCommerce 8.7 - 9.1.x


In this article, you have learned how to configure WooCommerce Free Shipping Coupon. Also, you have learned three solutions to hide all other shipping methods in the cart.

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.

Notify of
Inline Feedbacks
View all comments
Edge of Heaven
Edge of Heaven
4 years ago

Hi Szymon

Having issues with free shipping coupon.

I have 3 tier UK shipping pricing – Free 48 over £30, Free 24 over £60 and Free GND over £100.
I want to offer free UK48 shipping with a coupon.
If I don’t put a value on the coupon nothing is deducted, and no free shipping is granted
If I do put a value on the coupon, it deducts the value irrespective of what the basket value is – so if basket is £65, free shipping is qualified already but if the code is used it deducts the value of the coupon.
I don’t wish to remove all other shipping options when free is available – customer may want to pay upgrade anyway….

Driving me nuts!

Łukasz Spryszak
Łukasz Spryszak
Reply to  Edge of Heaven
4 years ago

Hi Edge of Heaven, have you tried configuring the coupon this way? [Image no longer available]

In the Flexible Shipping PRO 1.11.0 release we have also added a new feature allowing to ignore the price changes coming from the coupons during the free shipping calculation: [Image no longer available] , which might turn out to be useful in your case.

Check out our case studies

Dream Home Story
Furniture shipping via WooCommerce – Dream Home’s Case Study

Learn how to configure custom shipping rules for furniture orders – from heavy and bulky to small and light.

4 minutes read
Octolize Case Study
Vitrek’s Story

Read Octolize Case Study about Vitrek – a provider of innovative global solutions for High Voltage Test and Measurement.

2 minutes read
Octolize Case Study
EnglishSpeakingMum’s Story

Read Octolize Case Study about EnglishSpeakingMum – Polish dedicated and involved parenting blogger.

2 minutes read