February 7, 2020

How to Set Up Shipping in WooCommerce, One Step at a Time

In today’s era, it’s not difficult to start an e-commerce site using WooCommerce. 

However, once you decide to set it up, there are a few integral parts of its functionality that you need to get right from the beginning. One such part is the shipping functionality.

 It’s a critical element because Shipping determines how your products reach the customers and how their experience remains throughout the delivery process. Therefore, it’s important for you to set it up in the right manner.

Lucky for you, we’ve come up with a full step by step guide of how to go about setting up shipping with all the details.

Let’s get started!

1. Set up WooCommerce shipping zones

The first step is to set up your Shipping Zones on your WooCommerce shop. The geographic areas you want to deliver to are defined by shipping zones, and for every zone, you can specify the delivery methods that are available.

This helps you show proper delivery information to your customers before they place their orders. And decided shipping prices based on distance.

You can find the option of Shipping Zones after you go to the Shipping tab on the WooCommerce settings page. Here’s what it looks like:

WooCommerce Dashboard - Set up shipping zones

As you can see, the first screen that opens up when you go to the Shipping tab of WooCommerce settings displays all the shipping zones you have.

You can set up a new zone by clicking the ‘Add shipping zone’ button here. When you click it, you’ll need to provide 3 different attributes for your shipping zone, which can be seen in the image below:

WooCommerce Shipping Zones

Here’s what information you need to provide for each of these 3 options:

  • Zone name is the name that you want to give to any particular zone, and you can choose any name depending on your choice.
  • Region is for selecting the area(s) that you want to cover. If you want to cover your whole country, type the country name and select your country. Otherwise, if you want to ship to only specific states, select the names of those states.
  • Finally, you need to select the shipping methods for your shipping zone. Click the ‘Add shipping method’ button, and choose from 3 available options, namely Flat Rate, Free Shipping, and Local Pickup. You can also add more options by using premium shipping plugins, which we’ll discuss later in this article.

Once you’ve defined all 3 attributes, save your shipping zone by clicking the ‘Save Changes’ button. Here’s an example of how you can define multiple shipping zones for various geographical regions based on your requirements:

LocalLondonLocal pickup
DomesticAll British statesFlat rate “standard” and flat rate “priority”
EuropeCountries in USFlat rate shipping

2. Configure WooCommerce shipping options

Next, you need to configure some other Settings for WooCommerce Shipping. Again, all these settings will be found under the Shipping tab of the WooCommerce Settings page. The next step is to navigate to the Shipping Options screen by clicking the link shown below:

WooCommerce Shipping Options Dashboard

Next, you need to configure some other Settings for WooCommerce Shipping. Again, all these settings will be found under the Shipping tab of the WooCommerce Settings page. The next step is to navigate to the Shipping Options screen by clicking the link shown below:

  • Calculations: Enabling this option allows your customers to calculate the shipping cost of what they’re buying on the product page itself. This can save you from cart abandonment because a large number of people don’t buy due to last-minute additional charges and unexpected price elements.
  • Shipping destination: This option allows you to select between a customer’s billing or shipping address for delivery. 
  • Debug mode: The debug mode is for when you need to troubleshoot. For now, leave it unchecked. 

3. Add shipping methods

The third step is to set up some additional shipping methods if you want to improve your customer experience. By default, WooCommerce comes with 3 standard shipping methods, which can be added easily to any of your shipping zones (we already explained how to add any of them to a shipping zone while creating it in Step 1).  Those 3 standard shipping methods are as follows:

  • Free: First of all there’s the option of free shipping. People love free shipping. So if you can offer it on your shop, it can significantly increase your conversion rate.  You can try recovering some of the shipping costs by raising the price of the products you’re selling but don’t increase it so much that it becomes significantly higher than the market rates. Alternatively,  you could offer it only for products that don’t cost a lot to ship.
  • Flat rate: The Flat Rate shipping means that you charge a fixed price for shipping anywhere in a particular zone. For instance, you can charge a flat 10% of the order cost or a flat price based on the number of items in an order. You can also offer different flat rates for different types of products using shipping classes. For eg for all T-shirts, you can charge $5 while for all shoes you can charge $10.
  • Local pickup: This option allows your customers to pick up their orders from a local store. The orders are delivered to a store with which you have partnered, and customers can pick them up from there at a time of their own convenience.

However, as we said towards the end of Step 1, you can also add a number of other shipping methods to your WooCommerce installation for providing a better experience. Now it’s time to learn about those methods in detail:

Premium Shipping methods

These shipping methods cost some money to be configured but provide the best shipping experience. A popular premium shipping method is API-based shipping, which significantly increases the quality of shipping experience for your customers by providing shipping information in real-time.

At the moment only a few logistics service providers are offering this option (they include FedEx, USPS, DHL, and a few other popular shipping carriers). Some popular API-based shipping solutions include StorePep, EasyPost, and Postman. On the other hand, FedEx, Canada Post, and USPS have their own plugins for providing API-based shipping to WooCommerce users. 

User-defined shipping methods

There are also some shipping methods that allow you to control the shipping rates and other attributes of the shipping experience as per your convenience. All of these methods (except one) are configured by the installation of separate plugins. The methods are as follows:

  • Table rate shipping: In this method, you can create a table of different shipping zones with different shipping rates. You can choose a country, a state, or even a ZIP code for a zone, and then that zone can be assigned a separate shipping rate of its own in the table. WooCommerce Table Rate Shipping and Flexible Shipping for WooCommerce are good plugin options to help you achieve that.
  • Flat rate box shipping: The user-defined version of Flat rate shipping allows you to define the box sizes for every specific shipping zone and a flat rate of shipping for those zones. The box sizes you can choose depending on the volume of products that need to be shipped, and then the items can be packed in the boxes of the same size before being shipped at a flat rate defined by you. Flat Rate Box Shipping by WooCommerce can be used to implement it.
  • Local pickup: We already explained the Local pickup option earlier in this section. However, you can also tweak a few attributes of this method to make it user-specific. Just click the ‘Edit’ button below the Local pickup method in your shipping zone, and you’ll end up on a screen like this:
WooCommerce Pickup Settings

As you can see, you’ve 3 attributes that can be changed. And here’s how to change them:

  1. Title refers to the title of that page that’s provided to your customers when they choose Local Pickup as an option. Change it to show a more catchy title to your customers, but you can also leave it as it is if you wish. 
  2. Tax status is the variable you can change to define whether you want Local pickup to be free for your customers or taxable at the base rate of local pickup store. If you want it to be free then choose ‘None’ from the dropdown menu, otherwise, leave it as ‘Taxable’. 
  3. And Cost is another variable that you can define to set a cost for the pick-up if you keep your local pickup taxable for your customers. 
  • Per product shipping rate: Finally, this method allows you to define a fixed shipping rate for various products you’re selling on a per-product basis. This method is ideal for you if you’re selling heavy or sensitive items that can’t be shipped at a price applicable to other products. Advanced Flat Rate Shipping Method for WooCommerce and Per Product Shipping can be used to achieve that.

4. Order tracking and fulfillment Settings

Finally, you need to provide the functionality of order tracking. If you don’t include this functionality, you’ll end up answering all the calls and emails related to your orders yourself, thus wasting a lot of time.

Fortunately, WooCommerce allows you to save all that time with its various shipment tracking plugins (i.e. Advanced Shipment Tracking for WooCommerce, Shipment Tracking by WooCommerce, MIMO order tracking plugin, etc.). With these plugins, you can easily provide your customers with a real-time tracking link for their orders. This is achieved by inserting the tracking link in the email that is sent by WooCommerce upon shipment of the order.


So that’s how you can set up shipping on your WooCommerce site. Though it’s a lengthy process, we’ve tried to simplify it for you as much as possible while covering almost every aspect of it. Now, it’s your turn. Follow the steps outlined above, and set up shipping on your WooCommerce based shopping site. Once done, do share your experience in the comments. 

Disclosure: Some of the links in this blog post might be affiliate links. When you purchase through a link on our website, we receive a small commission, at no added cost to you, which helps us run Epitrove and keep producing great content. This does not influence our recommendations; we only recommend products we work with or love. Thank you for your support!


Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.