Free shipping is a great way to encourage customers to spend more. For example, offer free shipping on orders over $100.
Setup and Configuration
To offer the free shipping method it must be added to a Shipping Zone and you can add it to as many Shipping Zones as you like. Here’s how:
1/ Go to: WooCommerce > Settings > Shipping.
2/ Select a Shipping Zone, Click Edit
3/ Click Add Shipping Method and a modal will display. Select Free Shipping from the dropdown and Add shipping method.
4/ Select Free Shipping in the row you wish to define and select Edit.
5/ This takes you to a different screen to configure the free shipping method for that specific shipping zone.
6/ Enter a Title that displays to customers in checkout.
7/ Open the dropdown next to Free Shipping Requires…
- N/A – Not available, Free Shipping is an option for all customers
- A valid free shipping coupon – A coupon created that enables free shipping
- A minimum order amount – Free shipping is only available if a minimum amount is spent. Set this amount in the Minimum Order Amount field which will appear if you choose this option.
- A minimum order amount OR a coupon – Free shipping is available if a minimum amount is spent or the customer has a coupon that offers free shipping (see below: Create Free Shipping Coupons).
- A minimum order amount AND a coupon – Free shipping is offered only if a minimum amount is spent and the customer has a coupon that offers free shipping.
8/ If you have selected any of the options that include a minimum amount, enter a Minimum Order Amount.
9/ Finally, if you’ve selected any of the options that include a minimum amount, you can choose to apply this amount rule before or after coupon discounts have been applied. Below we explain this is a bit more detail (see: Coupon Discounts: When to Apply Minimum Order Total)
10/ Save changes.
Coupon Discounts: When to Apply Minimum Order Total
Since WooCommerce 4.1, you have the option to choose at what point the Minimum Order Total rule is implemented: before or after coupon discounts are applied.
This next example will help to illustrate the difference.
If you have a rule that the minimum order total should be $20, your customer has a product of $25 in the cart, and they also have a coupon that gives $10 off.
- After discount (Unchecked). In this case, the order amount is $25 – $10 = $15. The customer will not get free shipping according to the minimum order amount rule.
- Before discount (Checked). In this case, the order amount is $25 and the $10 discount is ignored. The customer will get free shipping according to the minimum order amount rule. The coupon discount will still be applied.
Create Free Shipping Coupons
1/ Create a coupon.
- Go to WooCommerce > Coupons.
- Select Add Coupon.
- Select Allow Free Shipping.
- Publish.
More info at: (Coupon Management).
2/ Enable free shipping for coupons.
- Go to the Free Shipping option you set up.
- Select the option A valid free shipping coupon from the dropdown.
- Save changes.
Customers can now use the coupon to get free shipping.
Advanced Options
Enabling or Disabling Free Shipping via Hooks
The free shipping method has an is_available function that can be hooked into:
return apply_filters( 'woocommerce_shipping_' . $this->id . '_is_available', $is_available );
This means you can use add_filter() on woocommerce_shipping_free_shipping_is_available and return true or false.
Frequently Asked Questions
How can I set up free shipping for orders over ___ ?
You need to set up at least one Shipping Zone. More at: Setting up Shipping Zones. Then follow steps above in Setup and Configuration, paying particular attention to #7, selecting A minimum order amount from the dropdown, then enter the amount (e.g., $25 or any amount you wish) in step #8.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article