How to Make Shipping Free After a Certain Amount in WooCommerce

Offering free shipping after a customer reaches a specific cart total is a great way to incentivize larger purchases and improve customer satisfaction. WooCommerce, one of the most popular e-commerce platforms, allows you to easily set up free shipping based on cart totals. In this tutorial, we’ll walk you through the steps to enable free shipping after a certain amount in WooCommerce, both using the built-in settings and custom code.

Method 1: Using WooCommerce Built-in Settings

WooCommerce provides a built-in way to set up free shipping based on cart totals. Here’s how to do it:

Step 1: Enable Free Shipping in WooCommerce

  1. Log in to your WordPress admin dashboard.
  2. Go to WooCommerce > Settings > Shipping.
  3. Click on the Shipping Zones tab and select the zone where you want to enable free shipping.
  4. Click Add Shipping Method and choose Free Shipping from the dropdown menu.
  5. Save your changes.

Step 2: Set a Minimum Order Amount for Free Shipping

  1. Under the same shipping zone, click on the Free Shipping method you just added.
  2. In the settings, set the Free Shipping Requires option to A minimum order amount.
  3. Enter the minimum order amount required for free shipping in the Minimum Order Amount field.
  4. Save your changes.

Now, customers who reach the specified minimum order amount will qualify for free shipping.


Method 2: Using Custom Code (Advanced)

If you want more control over the free shipping logic or need to customize it further, you can use a code snippet. Here’s how to do it:

Step 1: Add the Code Snippet

  1. Log in to your WordPress admin dashboard.
  2. Go to Appearance > Theme Editor or use a plugin like Code Snippets to add custom code.
  3. Add the following code to your theme’s functions.php file or as a new snippet:
add_filter( 'woocommerce_package_rates', 'custom_free_shipping_after_amount', 10, 2 );

function custom_free_shipping_after_amount( $rates, $package ) {
// Set the minimum cart total for free shipping
$min_amount = 100; // Change this to your desired amount

// Get the cart total
$cart_total = WC()->cart->get_cart_contents_total();

// Check if the cart total meets the minimum amount
if ( $cart_total >= $min_amount ) {
// Loop through shipping rates
foreach ( $rates as $rate_id => $rate ) {
// Check if the rate is not free shipping
if ( 'free_shipping' !== $rate->method_id ) {
// Remove non-free shipping methods
unset( $rates[ $rate_id ] );
}
}
}

return $rates;
}

Step 2: Customize the Code

  • Replace $min_amount = 100; with the minimum cart total required for free shipping.
  • Save the changes.

Step 3: Test the Free Shipping Rule

  1. Add products to your cart and ensure the total exceeds the minimum amount you set.
  2. Proceed to checkout and verify that free shipping is applied.

Why Offer Free Shipping After a Certain Amount?

  • Encourages Larger Orders: Customers are more likely to add extra items to their cart to qualify for free shipping.
  • Boosts Customer Satisfaction: Free shipping is a highly desirable perk for online shoppers.
  • Increases Average Order Value (AOV): By setting a minimum threshold, you can increase your store’s revenue per transaction.

Conclusions for Free Shipping Settings

Setting up free shipping after a certain amount in WooCommerce is a straightforward process, whether you use the built-in settings or custom code. By implementing this feature, you can enhance your store’s appeal and drive more sales. If you’re comfortable with code, the custom method offers greater flexibility, but the built-in option is perfect for beginners.

Try it out today and watch your average order value grow! If you have any questions or need further assistance, feel free to leave a comment below. Happy selling! 🚀