Want to apply free shipping to a single product in WooCommerce?  Read on.

I shop quite a bit online. When I find myself on an eCommerce site like eBay or Amazon, I tend to filter the products I intend to buy looking out for those with free shipping.

I am fairly sure I am not alone in this.

What I know is that applying free shipping on orders in your store plays a significant role in enticing your customers and customers to be to order from your online store.

Luckily for us, WooCommerce users, you can add the free shipping to your site.

The only caveat with the WooCommerce free shipping feature is that it is only triggered with coupons and minimum spends that is applied to all the products in the order.

What if you wanted to apply free shipping on a single product.

That way, only select products are shipped free while the rest of the orders in the cart attract the standard shipping rates.

As you can see, this may seem impossible with WooCommerce.

And for that, you could look at using a free WordPress plugin.

But, before you think of a plugin, there is a perfect way within WooCommerce to apply free shipping to a single product with no need for a third-party plugin.

What you would need is to create a shipping class that has a free shipping rate and apply it to a single product.

Okay, this is how you would go about it.

How to Apply Free Shipping on A Single Product in WooCommerce?

Step 1: Create A Shipping Class

In your WordPress backend, go to your WordPress settings.

Create shipping class WooCommerce

On the left menu, go to WooCommerce, then to Settings, then to shipping, then to Shipping Classes, and then click Add Shipping Class.

Please give it a name of your liking and then save your shipping classes.

Step 2: Assign The Free Shipping Class to Product

Go to the Product data section of the product you want the free shipping class to.

If you want to add the free shipping class of an older product, then edit it.

Then go Product Data, then to shipping, then to Shipping Class, and then assigning the “Free Shipping class you created” to it.

Publish or Update the product.

To be sure that your product has been added to the free shipping class, go back to the shipping class under WooCommerce, Settings, Shipping, Shipping Classes.

You should see number one under the product count.

Shipping classes product count

Step 3: Configure A Flat Rate for The Shipping Class

In your WooCommerce settings page, go to the Shipping Zones.

Flat rate WooCommerce

That’s under WooCommerce, Settings, Shipping, Shipping Zones.

Edit each zone and the Edit the Flat rate shipping method.

Note that each shipping zone will need a flat rate shipping method.

If your zone does not have the Flat rate shipping method, then click the Add Shipping method button to create one for your store.

In each zone, you should have at least 1 Flat Rate.

Edit each Flat Rate, and make sure:

Cost is $0

“The Free Shipping class you created” class cost is $0 (as you can see mine is “Free Shipping”)

“No shipping class” set the shipping costs for all other products, not using this shipping class.

“Per class: charge shipping for each unit class in class individually” is enabled.

Flat rate settings WooCommerce

When you are done, save your changes.

Your specific product will now have free shipping. If it happens to be in an order that, along with products to be charged, then the no shipping class cost is added to the order.

Ordered alone, the product will have zero shipping costs.

That is, a simple way to apply free shipping to a single product in WooCommerce.

Since we are talking of free shipping, I want to mention a plugin that helps with free shipping conditions way beyond the default WooCommerce free shipping feature – WooCommerce Advanced Free Shipping.

How to Apply Free Shipping in WooCommerce with A Plugin

WooCommerce Advanced Free Shipping, as mentioned in its name, is an advanced shipping plugin that allows you to set up advanced free shipping conditions.

The plugin gives the power and flexibility to do almost whatever you want with the free WooCommerce shipping rates.

Within each shipping rate, you can create multiple ‘OR’ condition groups with multiple ‘AND’ conditions inside each group. This means that it is very easy to set up a free shipping rate for multiple user roles in one shipping rate, for example.

Here are some conditions you can use

  • Subtotal
  • Quantity
  • User role
  • Country
  • Zipcode
  • Shipping class
  • Category
  • Weight
  • Volume (Width / Length / Height)
  • And lots more.

Note that, as an extension to WooCommerce, the WooCommerce plugin needs to be installed and activated on your website prior to activating WooCommerce Advanced Free-shipping.

Step 1. Install Woocommerce Advanced Free-shipping WordPress Plugin

Log in to your WordPress website admin area, go to Plugins and click Add New.

In the search box, enter WooCommerce Advanced Free-shipping to search the WordPress plugin database.

Install WooCommerce Advanced Free Shipping Plugin

When the results load, click the Install Now button, and then click Activate.

Step 2. Add Free Shipping Rate

To set up your free shipping rates and conditions, go to the plugins settings page.

On the left menu, go to WooCommerce, then to Settings, then to shipping, then to Advanced Free Shipping. From there, click Add Free Shipping rate.

WooCommerce Advanced Free Shipping settings

On the next screen supply the required information and then publish your advanced free shipping rate.

WooCommerce Advanced Free Shipping settings condition

From the screenshot above, if we wanted to use this plugin to add free shipping to an individual product, we would have to add the free shipping class to its rules.

That tells you that on its own, the plugin cannot apply free shipping to a single product.

Though that should not stop you from exploring the depths of this plugin for adding free shipping to your WooCommerce store.


I hope you have learned how to apply free shipping on a single product in WooCommerce.

You can do it natively or employ the services of a free shipping plugin like WooCommerce Advanced Free Shipping. The choice is yours.

One more thing. A word of caution, especially for those with big stores. Before installing a third-party tool to a production site, test it in a staging environment. Better still make a backup of your website just in case you need to restore your site.

Our WPVivid Backup and restore plugin can perform all these for you. It can help set up your staging site as well as backup and restore your data when or if you ever need to.

Give it a try and let us know. It is free.