Free shipping is a great way to encourage customers to spend more. For example, offer free shipping on orders over $100.
- Go to WooCommerce > Settings > Shipping > Shipping zones.
- Click the Edit button on the shipping zone where you want to offer this method.
- Inside the shipping zone, click the Add shipping method button.
- Then, select the shipping method and click the Continue button.
- Enter a Name that displays to customers in the cart and checkout pages.
- In Free shipping requires, you can select what is the requirement to offer free shipping:
- No requirement — Free Shipping is offered to all customers
- A valid free shipping coupon — Free Shipping is available if the customer uses a coupon that offers free shipping (see below: Create Free Shipping Coupons).
- 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 uses a coupon that offers free shipping.
- A minimum order amount AND a coupon — Free shipping is offered only if a minimum amount is spent and the customer uses a coupon that offers free shipping.
- When any of the Minimum order amount options is selected, an additional checkbox will appear: Apply minimum order rule before coupon discount.
- If the box is unchecked, the order amount after a coupon discount will be compared to the Minimum order amount to determine if Free shipping should be offered.
- If the box is checked, then the order amount before a coupon discount will be used instead.
- Click the Create button to finish.
You have set $20 as the minimum order amount for free shipping eligibility, your customer has a product of $25 in the cart, and they also have a coupon that gives $10 off:
- If “Apply minimum order rule before coupon discount” is unchecked — The order amount is $25 – $10 = $15. The customer will not get free shipping according to the minimum order amount rule.
- If “Apply minimum order rule before coupon discount” is checked — 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.
1/ Create a coupon.
- Go to WooCommerce > Coupons.
- Select Add Coupon.
- Select Allow Free Shipping.
More info at: ().
2/ Enable free shipping for coupons.
- Go to the shipping zone where you added the Free Shipping method in the previous step.
- Click the Free shipping method
- Select the option A valid free shipping coupon from the dropdown.
Customers can now use the coupon to get free shipping.
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.
You need to set up at least one Shipping Zone. More at: Setting up Shipping Zones. Then follow steps above in Setup and Configuration: in the Free shipping requires dropdown, select A minimum order amount from the dropdown, and then enter the amount (e.g., $25 or any amount you wish) in the Minimum Order Amount field.
WooCommerce’s core behavior is to show all the valid shipping methods from the shipping zone that matches a given address. If you would like to force “Free Shipping” to be the only option available to eligible customers, you can use the Conditional Shipping and Payments extension to hide shipping methods when the cart reaches a minimum amount or if it contains products from a specific shipping class.