Free shipping always excites customers. It will not only help you to increase sales, but it will also help you to avoid dead stock.
WooCommerce is a very flexible eCommerce platform, allowing you to offer free shipping on the entire store.
In today’s article, I’ll walk you through the step-by-step process of offering WooCommerce free shipping on a single or specific product.
I’ll show you two different methods to do so. Without any further ado, let’s jump into it.
On This Page
- 1 How to Set up WooCommerce Free Shipping on a Single Product?
- 1.1 1. Using the WooCommerce Shipping Class
- 1.2 2. Using the Dynamic Shipping and Payments Plugin
- 1.2.1 2.1. Create a New Product Category
- 1.2.2 2.2. Add the Product to the Category
- 1.2.3 2.3. Install and Activate the Dynamic Shipping and Payment Plugin
- 1.2.4 2.4. Navigate to Shipping & Payments
- 1.2.5 2.5. Click the Payment Gateways tab
- 1.2.6 2.6. Offer Free Shipping for Specific Products or a Single Product
- 1.2.7 2.7. Hide the Free Shipping Method If the Product is Different
- 1.2.8 2.7. Save Changes
- 1.2.9 2.8. Final Results
- 2 Conclusion
How to Set up WooCommerce Free Shipping on a Single Product?
You can do that by using code, but for this tutorial, I’ll show you the easy and customizable methods to set up free shipping for a single or specific product.
Follow the following steps to offer free shipping for a single product.
1. Using the WooCommerce Shipping Class
The first method to set up free shipping for specific products in WooCommerce is by using the shipping class.
But first, let’s understand a bit about shipping class.
What is a WooCommerce Shipping Class?
WooCommerce shipping classes make it easy for store owners to handle product shipping. It allows you to group similar items and charge different shipping rates for each group.
For example, you can have a group for heavy items and a different group for lighter items and charge different shipping rates based on the weight of the items.
This way, customers are charged the right amount for shipping based on what they buy. Assigning products to a group is simple, and setting custom shipping rates for each group is straightforward too.
WooCommerce shipping class allows you to manage shipping in a way that makes sense for your business.
Please follow the steps to set up free shipping for a single product using the WooCommerce shipping class.
1.1. Navigate to Shipping Classes
First, we need to create a shipping class in WooCommerce. To do so, navigate to WooCommerce » Settings » Shipping » Shipping Classes from your WordPress admin dashboard.
1.2. Add a New Shipping Class
Once in the shipping class section, you need to add a new shipping class to WooCommerce. Even if you already have created a shipping class, you’ll need to add a new one for the product you want to offer free shipping.
You can add that class to more than one product, but I’ll only focus on setting up free shipping on a single product for this tutorial.
Please click the ‘Add Shipping Class’ button to add a new shipping class.
1.3. Add Shipping Class Details
You need to add the shipping class name to the ‘Shipping Class Name’ field.
You can leave the slug and the description field empty because the slug will automatically be created once you’ll save the shipping class.
Once you are done, click the ‘Save Shipping Classes’ button to save it.
1.4. Edit the Shipping Zone
Once you have created the shipping class, we need to edit the shipping zones. To do so, click the ‘Shipping Zone’ button, hover over your mouse on the shipping zone, and click the ‘Edit’ button.
Note: I have already added the shipping zone to my store. If you haven’t added it, click the Add Shipping Zone button and customize it according to your choice.
1.5. Edit the Flat Rate
If you have not added any shipping method to your store, you can create one by clicking the ‘Add Shipping Method’ button to add a shipping method. You’ll be able to select from the default shipping methods.
- Flat Rate
- Free Shipping
- Local Pickup
You’ll need to add a flat-rate shipping method.
As I have already added it to my store, I’ll edit it by hovering the mouse over it and clicking the ‘Edit’ button.
1.5.1. Flat Rate Settings
Once you click it, you’ll be redirected to a popup where you can add flat-rate shipping. But as we want to offer free shipping for a single or specific product, we need to ensure that the flat rate is zero and the shipping class cost is zero.
You’ll also need to add a shipping price in the ‘No Shipping Class’ field. It will only be charged by the users if customers purchase a product without a shipping class attached.
I have also edited the method title, so it makes more sense.
Don’t forget to click the blue ‘Save Changes’ button at the bottom right of the popup.
1.6. Add the Shipping Class to the Product
Finally, we need to add free shipping to the product for which you want to offer free shipping.
To do so, please follow the following steps.
1.6.1. Navigate to Products
Navigate to Products » All Products from your WordPress admin dashboard. Here you’ll see all the products you have added to your store.
1.6.2. Edit the Product
Now, you need to edit the product for which you want to make shipping free. To edit it, hover your mouse over it and click the ‘Edit’ button.
1.6.3. Add Shipping Class to the Product
Once you are on the product edit page, please scroll down to the ‘Product Data’ section and click the ‘Shipping’ tab from the left sidebar.
Select the shipping class we created in the previous steps from the ‘Shipping Class’ dropdown.
1.6.4. Update the Product
Once you have added the shipping class to the product, scroll to the top of the page and click the ‘Update’ button to save the settings.
1.7. Final Results
To test it, I added it to my cart and visited the cart or checkout page to see if I get free shipping for this specific product.
Now, I added another product to my cart to check the results.
It was adding the shipping cost, which we added in the ‘No Shipping Cost’ field in the above steps. As you can see below screenshot, I added the product to the cart, to which I didn’t add the free shipping class.
I am getting charged a flat rate as well, as it is saying ‘Free.’ It means that the product to which I added the shipping class has free shipping, while the other product has a shipping price of $50.
This is how you can set up free shipping on a single product in WooCommerce using WooCommerce shipping classes.
2. Using the Dynamic Shipping and Payments Plugin
The first method may confuse the users as they’ll see the ‘Free’ shipping tag with the shipping price for another product.
To overcome this issue, you have two options. You can either limit the cart quantity, or you can continue to read this article.
In the 2nd method to offer free shipping on a single product or specific products, I’ll use the Dynamic Shipping and Payments plugin.
This plugin will help you to create different shipping and payment restrictions. For example:
- How to Restrict WooCommerce Shipping by Postcode (6 Easy Steps)
- WooCommerce Disable Shipping for certain Products
- How to Add WooCommerce Shipping by User Role [Step-by-Step Guide]
- How To Restrict Shipping by State in WooCommerce?
- How to Hide Shipping On the Cart Page
- WooCommerce Restrict Payment Options (13 Easy Methods)
- How to Disable Payment Method For Specific Product (4 Easy Steps)
- How to Disable Payment Gateways For Some Users
- How to Set Up WooCommerce Role-based Payment Methods
Please follow the following steps to offer free shipping on a specific product.
2.1. Create a New Product Category
To offer free shipping on a single product or specific products, I’ll first create a product category and add the product (for which I want to offer free shipping) to it.
After that, I’ll add the shipping restriction to get the final results.
To create a category, please navigate to Products » Categories from your WordPress dashboard. Here you’ll see all the categories you have added to your store.
2.1.1. Give a Name to the Category
On the categories page, you’ll also see a form to add a new product category. We need to add the category name in the ‘Name’ field.
You can give it any name you want.
2.2.2. Save the Category
After that, click the ‘Add New Category’ button to save the category.
2.2. Add the Product to the Category
Once you have created the category, we need to edit the product and add it to the category.
I edited the product for which I want to offer free shipping.
Once you are on the product edit page, you can simply check the ‘Free Shipping’ category box from the ‘Product Categories’ section.
Don’t forget to ‘Update’ the product to save the settings.
2.3. Install and Activate the Dynamic Shipping and Payment Plugin
Note: You can skip this step if you have already installed and activated the Dynamic Shipping and Payments plugin.
To install the Conditional Shipping and Payments plugin, you will need to install the Woosuite Core plugin and activate it with the help of a license key. We have created a Quick Start Guide for you to figure out how to install and activate the Dynamic Shipping and Payments plugin.
2.4. Navigate to Shipping & Payments
Once the plugin is installed and activated, navigate to the Woosuite » Shipping & Payments from your WordPress admin dashboard.
2.5. Click the Payment Gateways tab
Click the “Shipping Methods” tab from the plugin’s settings to add a shipping method restriction.
2.6. Offer Free Shipping for Specific Products or a Single Product
Now we need to add a shipping method restriction so that users will get free shipping for specific products or on a single product.
Click the ‘Add Restriction’ button to add a shipping method restriction.
Once you click it, a new rule will add, and you can customize it to offer free shipping on a single or specific product.
To do so, please follow the following steps.
2.6.1. Add Short Description
In the ‘Short Description’ field, enter a description of the rule. For example, free shipping on a single product.
2.6.2. Exclude the Shipping Methods
From the “Exclude Methods,” select the shipping methods you want to hide from the users if they purchase a specific product. We’ll create this rule in the following steps.
I have selected all the shipping methods available on my store except the free shippingbecause I want to offer free shipping if the condition (we’ll create in the next steps) matches.
2.6.3. Add Condition for Free Shipping on a Single Product
Once you have selected the shipping methods you want to hide from the users based on a certain condition, now is the time to add that condition.
You can select the conditions as follows:
- Backorder
- Billing Country
- Category
- Coupon Code
- Customer
- Customer Role
- Order Total
- Package Item Count
- Product on Sale
- Shipping Class
- Shipping Country
- Shipping Method
- Shipping Postcode
As we want to offer free shipping for a single or specific product. We need to select the ‘Category’ option from the ‘Add Condition’ dropdown.
2.6.4. Select the Condition Type
Once you select the condition, you’ll see the fields next to the ‘Add Condition’ dropdown have been changed according to the condition.
As we selected the category condition, so from the next dropdown, you’ll get four different options.
- In package
- Not in package
- All items in package
- Not all items in the package
You can select the condition you want, but you may have to think about a different logic, so it works smoothly, and users will get free shipping if they are purchasing a specific product.
I’ll keep it to the default ‘In package’ condition type.
2.6.5. Select the Category
From the next dropdown, select the category we created in the previous steps of this tutorial.
The whole condition would mean if a user has added the product from the selected category (Free Shipping), then he’ll only see the ‘Free Shipping’ method. All the other shipping methods would be hidden.
Similarly, they won't get free shipping if the product is not from the specified category.
2.7. Hide the Free Shipping Method If the Product is Different
You need to add one more restriction to hide the free shipping method from the cart and checkout if the user adds the product from another category.
If you do not add this second restriction, users will see the free shipping method and other available shipping methods, and they can select the free shipping method for other products.
Clearly, that is not what you want.
So to avoid this situation, you need to add another restriction that will hide the free shipping method if the product is added to the user’s cart and not in the ‘Free Shipping’ category.
You’ll need to click the ‘Add Restriction’ button and follow the previous step instructions to configure the second restriction.
Note: Do not add another condition in the first restriction rule, as it may not work accordingly. You need to add another restriction to hide the free shipping for other products.
You just need to ensure that you select ‘Not in package’ from the condition type dropdown. It will check if the product in the cart has the ‘Free Shipping’ category.
If it is not, then it’ll hide the free shipping method.
2.7. Save Changes
Once you have added the conditions, click the green ‘Save Changes’ button at the top left corner of your screen to save the setting.
2.8. Final Results
Once the settings are saved, let’s test it.
To test it, I added the product to my cart (from the free shipping category) and visited the checkout or the cart page to see if I was getting free shipping.
As you can see in the screenshot below, I am getting free shipping.
To verify it, I removed the already-added product from my cart and added another product for which I don’t want to offer free shipping.
Conclusion
That’s it for today’s article.
I hope this article was helpful to you and you were able to offer free shipping on a single product. I tried to explain both ways in a very simplified way so you can understand and apply it to your store.
I recommend you use the second method, which is by using the Dynamic Payment and Shipping plugin. This plugin will help you one step further to apply the free shipping for a single product rule smoothly. Also, users won’t get distracted if they follow this.
One thing you may need to do with both methods is set the cart limit to one. There is a high chance that users may purchase different products, so the rules mentioned above won’t work as they should and may confuse them.
If you got any questions, please leave a comment below. I’d love to answer all your queries. You can also contact our support team to get quick and fast assistance.
Download the Dynamic Payment and Shipping plugin and build something great at your store!