Setup Free Shipping with WooCommerce Subscriptions

Let’s review a few different scenarios on how to set free shipping up with WooCommerce Subscriptions.

Maybe you want to offer free shipping only on renewal orders.

Or, maybe you want to apply free shipping on just the parent or all subscription orders.

Let’s review each of the scenarios below:

Offer Free Shipping for all subscriptions orders

This is the scenario if you want to apply free shipping on all WooCommerce Subscriptions orders. Free shipping would apply on both the initial order (parent order) and renewal orders.

There are a few ways to set this up:

1. Conditional Shipping and Payments

The Conditional Shipping and Payments plugin is my recommended choice.

For more info, follow the video below:

2. Smart Coupons

With the Smart Coupons plugin you can create a free shipping coupon that automatically applies when a subscription is being purchased.

Let’s go over how to set this up.

  • Create a new coupon called ‘freeship’.
  • Set Discount type as Recurring Product Discount
  • Set Coupon amount to 0
  • Enable Allow free shipping
  • Enable Auto apply (you may have to scroll down)
  • Publish your coupon

If you want to configure any other settings for the coupon make sure to go to the Usage restriction and Usage limits tabs.

Pro Tip: make sure you have a free shipping method set. Check this by going to WooCommerce > Settings > Shipping > Shipping methods > Free shipping.

Test this out by going through the Checkout process by adding your subscription product to the Cart.

Free shipping should automatically be applied!

Free shipping only on the parent order

To offer free shipping only on the parent order you can enable the One time shipping option on your subscription product.

  • Edit your subscription product
  • Click the Shipping tab
  • Enable the One time shipping option
  • Update your product

Now, shipping will only be applied on the customer’s first order (i.e. the parent order).

The 2nd/3rd/4th/Xth orders will not charge shipping.

Note: Shipping only applies to Physical products. If the product is a Virtual product, no shipping costs will be applied.

Free shipping with All Products for WooCommerce Subscriptions plugin

Are you using the All Products for WooCommerce Subscriptions plugin with WooCommerce Subscriptions?

If so, you DO NOT have the option to enable ‘One time shipping’ when editing the product in the backend as you are adding subscription options to a Simple or Variable product.

Here are a few scenarios..

Scenario #1: Offer free shipping only on renewals orders

Use the Conditional Shipping and Payments plugin.

For more info, follow this tutorial.

Scenario #2: Offer free shipping on all subscription orders

Use the Smart Coupons plugin to create a ‘freeship’ coupon that you can auto apply in the Cart and Checkout pages.

Scenario #3: Offer free shipping only on the parent order

Using the Smart Coupons plugin, create a new coupon called ‘freeship’ with a Recurring Product Discount.

  • Set the Coupon amount to 0
  • Set Active for x payments to 1
  • Enable Allow free shipping
  • Enable Auto apply

Troubleshooting

If free shipping did not automatically apply, double check your Free shipping method by going to your WooCommerce > Settings > Shipping > Free shipping.

For example, see the screenshot below:

Additional Resources

Simon Gondeck

I’m a big fan of WordPress + WooCommerce (especially WooCommerce Subscriptions). Check out my YouTube channel.

4 thoughts on “Setup Free Shipping with WooCommerce Subscriptions”

  1. Hi,

    By using the Recurring Discount as coupon type for free shipping, does that limit the coupon to only subscription products?

    We would like to use subscriptions (auto-ship) internationally, but only allow free shipping on subscriptions within the US.

    Then if you allow international subscriptions, does it automatically calculate shipping at time of the automatic recurring payment?

    Thank you

    Reply
  2. Hey Simon,

    What would be the best way to have a lower flat rate shipping fee for all renewal orders instead of free shipping? I have free shipping triggered by minimum spend, but most renewals won’t hit that amount. So, instead of having the standard flat rate of $9.99 (assuming they don’t hit the min for free shipping), renewals pay $3.99. Does that make sense?

    Thanks,
    Nick

    Reply
  3. Hi there,

    I have followed your instructions to set up shipping exclusions and now I’m getting that no shipping methods are set.

    help please
    Thans
    Tea

    Reply
    • Can you make sure you have a free shipping method set? Check this by going to WooCommerce > Settings > Shipping > Shipping methods > Free shipping.

      Reply

Leave a Comment