![The Ultimate Guide to WooCommerce Shipping [2025]](https://funnelkit.com/wp-content/uploads/2025/12/The-Ultimate-Guide-to-WooCommerce-Shipping.jpg)
Shipping setup is where many WooCommerce store owners quietly lose money. Charge too much, and customers leave. Charge too little and profit margins suffer.
Research from the Baymard Institute shows that 48 percent of shoppers abandon their carts due to extra costs such as shipping, taxes, and fees.
That makes it the number one reason people do not complete checkout. Another 22 percent leave because delivery feels too slow.
After working with hundreds of WooCommerce stores on shipping setups, the same problems keep coming up.
Overlapping shipping zones confuse the checkout experience. Flat rates fail to scale with order value. Shipping classes get created and then never used.
This guide walks you through WooCommerce shipping zones, methods, and classes in a practical way most tutorials skip. You will learn when to use each option, which configuration mistakes to avoid, and which pricing formulas actually work for real stores.
Table of Contents
- 1 3 Essential Components of WooCommerce Shipping
- 2 Understanding Shipping Zones
- 3 Adding Shipping Methods in WooCommerce
- 4 Setting up Shipping Classes in WooCommerce
- 5 Configuring Shipping Options
- 6 How to Set Up WooCommerce Shipping in Your Online Store?
- 7 7 Best Advanced WooCommerce Shipping Plugins
- 8 Closing Notes on WooCommerce Shipping
3 Essential Components of WooCommerce Shipping
WooCommerce is a popular e-commerce platform for WordPress. It offers a variety of shipping options and components to help you manage and customize your online store's shipping methods.
To understand how WooCommerce shipping works, you need to understand the different components of this E-Commerce platform. Here are the different components and aspects of WooCommerce shipping:
Here's how they work together:
- Shipping Zones control where you ship and what rates apply per region
- Shipping Methods control how you charge (flat rate, free shipping, local pickup)
- Shipping Classes control product-specific pricing based on weight, size, or handling needs
Let's understand each of them one by one.
Understanding Shipping Zones
A shipping zone is a geographical region or area where the carriers deliver items. It's defined by combining different zip codes and measuring the package shipment from the point of origin to its destination.
You can set up different zones for local, regional, national, and international customers, each with its own set of shipping options.
You can get as specific as you need, from country to state to regions and zip codes. This is important because it lets you set up separate shipping zones and charge them differently for different locations.
For example, if you are a New York-based company, you can create a specific shipping zone for New York, setting up lower shipping rates for customers in that area.
Simultaneously, you can create a separate shipping zone for Texas and charge higher WooCommerce shipping rates for customers because you are shipping to a different location.
Let’s check how you can create a shipping zone.
How to Add a Shipping Zone in WooCommerce?
Before creating any shipping zone, you should navigate to WooCommerce ⇒ Settings. On the General tab, you must ensure the Shipping Location is not set to “Disable Shipping and Shipping calculations.”

After checking this setting, go to the Shipping tab. Here, you will find a default shipping zone named “Locations not covered by your other zones.”
This zone is used for customers who do not belong to any areas you include in the custom shipping zone. As you most likely don’t ship to the location you don’t need to include in your shipping zone, there is no need to add a WooCommerce shipping method.
As a result, when a user enters a shipping address that is in a zone without shipping methods, they will be informed that no shipping is available.
To create a new shipping zone, click the Add Shipping Zone button on the prompt. Or you can even click on the “Add Zone” button next to Shipping Zones.

After that, provide a name for the Zone and specify the region.
You can type the initial of the region you want to choose and then select from the suggested dropdown list.
As mentioned earlier, you can select a country or state if you want. As shown below, you can choose the whole country, Australia, or any of the states.

Regions can consist of multiple countries, states, or continents.

You can also choose a specific ZIP or postal code of one state.
For that, click on the “Limit to Specific Postcodes” and add the postcodes. You can add a set of postcodes (one per line), a range of postcodes (e.g., 2000…2999 for NSW), or use wildcards (e.g., 20*).

You need to add WooCommerce shipping methods after adding a name and choosing the regions. (We’ve discussed shipping methods in the next section).
To add shipping methods, click on Add Shipping Method, then from the dropdown, choose an option and click on “Add Shipping Method”. Finally, click on Save Changes.

After adding the shopping methods, click on Save Changes to save the zone.
How Do You Sort WooCommerce Shipping Zones?
WooCommerce will match a customer’s shipping address to a single zone and offer them the shipping methods assigned to that zone. Shipping zones match the customer address from top to bottom; the first to match is always used.
You can sort the existing shipping zones just by drag and drop. For that, navigate to WooCommerce ⇒ Settings ⇒ Shipping ⇒ Shipping Zones. Now, click the three horizontal lines on the left side and drag and drop to change the order.

This is how you can rearrange your WooCommerce shipping zones.
How Do You Edit Shipping Zones in WooCommerce?
To edit a shipping zone, hover over the Zone and click on the “Edit” option.

Now, you can modify the shipping name, zone, and shipping methods in WooCommerce. After making the changes, click on Save Changes.

This will update the shipping Zone.
That's how you can update the details of a shipping zone.
How to Delete a Shipping Zone in WooCommerce?
You can delete a shipping zone if you want. To delete any WooCommerce shipping zone, hover over it and click on Delete. After that, you will be asked to confirm; click OK to confirm and delete the shipping zone.

Now, let’s talk about shipping methods.
Adding Shipping Methods in WooCommerce
WooCommerce shipping methods represent a set of rules for how a store decides how much to charge customers for shipping when they buy something online.
These rules can be based on things like where the user lives, how heavy the items they are buying, or even if customers want to pick up the items in person themselves.
By default, you get three shipping methods built into WooCommerce:
- Free shipping
- Flat rate
- Local pick up
Free shipping
WooCommerce Free Shipping refers to a shipping method that allows you to offer free shipping to your customers for specific orders or under certain conditions.
To enable free shipping in WooCommerce, select Free Shipping as your shipping method and click Edit to customize.
Set a title for your customers to see and define the conditions for free shipping. If you want it to apply with no conditions, simply select "No requirement".
Here are the other options:
A valid free shipping coupon: If you choose this option, anyone with a valid coupon can avail of free shipping for an order.

A minimum order amount: This option allows you to set up a minimum order amount that a customer has to place to avail the free shipping. If you choose this option, you will get two more options:
- Minimum order amount: Set a minimum amount one must purchase to avail of the free shipping. For example, here we have put 150 amount, so if someone wants to avail free shipping, they have to purchase a minimum of 150.
- Coupons discount: As for coupon discounts, you can check the “Apply minimum order rule before coupon discount” option. The checking option will allow free shipping based on the pre-discount order amount.

A minimum order amount OR a coupon: This option gives users both options. Either they can avail free shipping using a coupon or if they purchase a product worth a certain amount.

A minimum order amount AND a coupon: If you choose this option, then customers have to do both: buy products worth a certain amount and apply a coupon code to avail of free shipping.

Flat rate
The "Flat Rate" shipping method is a commonly used and flexible option that allows you to charge a fixed shipping fee for orders based on various criteria.
Flat-rate shipping in WooCommerce is quite handy for e-commerce stores with straightforward and predictable shipping costs.
Here's how the flat rate settings work in WooCommerce:
- Title: Set a title for the Flat Rate shipping method. It will be displayed to customers during the checkout process.
- Tax Status: Choose whether the shipping fee will be taxable or not.
- Cost: You define a fixed cost or fee that will be charged for shipping using the Flat Rate method. You can use a placeholder to charge per item or percentage of the total order total instead of a flat rate.
The placeholder [qty] charges an additional fee for each product in the cart. For example, using 10 + (2 * [qty]) will charge base $10 plus $2 for each item in the order.
The placeholder [fee] charges an extra shipping fee based on a percentage of the total. Set a percent, then a min_fee or max_fee, which means the fee can’t go below or above a certain amount. For example, you can use something like 5 + [fee percent=”5″ max_fee=”15″]. This will cost your customer $5 dollar plus 5 percent of their order total but not exceeding $15.

Make sure to hit the ‘Save changes’ button when done.
Local pickup
The local pickup shipping option allows customers to place orders online and then pick up their purchased items in person from a physical location, such as a retail store, warehouse, or any pickup point.
It's a convenient shipping method for businesses that have a physical presence and want to offer a no-cost or low-cost alternative to traditional shipping.
- Title: Set a title that will be displayed to customers during the checkout process.
- Cost: Define a fixed cost or fee that will be charged for this type of shipping.
- Tax Status: Specify whether the cost will be taxable or not. You can choose between "Taxable" and "None".

How to remove a shipping method from a shipping zone?
As mentioned earlier, if you want, you can offer multiple shipping methods for one shipping zone in WooCommerce.
But you can remove any unnecessary shipping methods from a shipping Zone at the same time.
For that, go to that shipping zone, hover on the shipping method, and click on ‘Delete’. After that, click on “OK” to confirm and delete the shipping method.

If you do not want to remove the shipping method completely, you can temporarily disable it by turning off the toggle button.

This will remove shipping from the WooCommerce checkout page.
Setting up Shipping Classes in WooCommerce
Shipping classes in WooCommerce allow you to group similar products together to set the same shipping rates and methods. This feature is particularly useful when you have products with different shipping requirements, such as size, weight, or shipping destination, and you want to apply specific shipping rules to each group of products.
For example, a shirt weighs much less than boots. In this scenario, if you want to charge differently for these two items, you can set different shipping classes for them, like assigning lightweight to t-shirts and heavyweight to boots.
To use a WooCommerce shipping class, first, you need to create the class, then set up rates, and lastly, assign the classes to the products for which you want the WooCommerce shipping rates applicable.
How to Create a Shipping Class?
To create a shipping class, navigate to WooCommerce ⇒ Settings ⇒ Shipping. Then go to the WooCommerce shipping classes tab and click on “Add Shipping Class.” After that, provide the shipping class name, slug, and description; finally, click on “Save Shipping classes” to save the new class.

You can add as many WooCommerce shipping classes as you want.

Now, you can set up different rates for the WooCommerce shipping zones with flat rates for products with different shipping classes.
How to set up different rates for different shipping classes?
Edit flat rate shipping for the zone where you want to set up custom rates. Now you should see new settings options.
You will find a field to set shipping rates for all the WooCommerce shipping classes you created. We created two, so here, we need to provide rates for those.
You also have to choose the calculation type. The options are listed below:
- Per Class: Shipping class determines shipping cost.
- Per Order: The most expensive item determines the shipping cost.
Note: If you use the per-class calculation type, you’ll want to fill in the “No shipping class cost” field. On the other hand, if you use per order, then the flat rate would be counted in case products don’t have any shipping class assigned to them.

After setting up the rates, click on Save Changes.
Once your shipping classes are created, you must assign them to your WooCommerce store products.
How to assign WooCommerce shipping classes to products?
To assign a shipping class, edit any product. On the product tab section, move to the Shipping tab. Here, you can add the shipping class from the dropdown.

After adding the shipping class, click on Update.
Hopefully, now you understand all the components of the WooCommerce shipping class.
Now let’s take a look at some of the shipping options WooCommerce provides:
Configuring Shipping Options
Along with the above three components, WooCommerce also offers some generation shipping settings. You can find those options in the “Shipping Options” section. Make you choose your preferred choice among these WooCommerce shipping options:
Calculations: As per the calculation, you can enable the shipping calculator on the cart page. You can also choose to hide shipping costs until an address is entered.
Shipping destination: As per the shipping destination, you get three options to choose from:
- Default to the customer's shipping address
- Default to the customer billing address
- Force shipping to the customer's billing address

To provide you with a comprehensive understanding, let's explore the step-by-step journey of how the shipping process unfolds.
How to Set Up WooCommerce Shipping in Your Online Store?
Here, we will show you the process of creating a shipping option where we offer flat-rate shipping all over America.
The WooCommerce shipping rates will be calculated based on the product weight, which will be counted based on the shipping class.
So, let’s begin.
Step 1: Create a shipping zone
Navigate to WooCommerce ⇒ Settings ⇒ Shipping ⇒ Shipping Zone and click on “Add shipping zone”.

Now, provide a name and choose the region; here is our case: choosing the whole ‘United States’ as our region.

Step 2: Add a shipping method
Now, it’s time to add a shipping method. For that, click “Add Shipping Method” and choose one option from the dropdown. Here, we are going to choose a Flat Rate. After that, click on “Add Shipping Method” to add.

This will add a flat-rate shipping method to your WooCommerce shipping zone.
Step 3: Add a shipping class
Now, move to the ‘Shipping Classes’ section and add a shipping class by providing the name, slug, and description.
Make sure to click on “Save shipping classes”.

Step 4: Set up the WooCommerce shipping rates
To set up the shipping rate, return to the shipping zone tab and click on the edit option for the shipping zone.

Now, click on the Edit option to configure your shipping method.

Now, set up the following options:
- Method title: Enter the title of this method that will appear on the cart and checkout page.
- Tax status: Choose taxable if you want the shipping rate to be taxable; otherwise, choose none.
- Cost: Basic cost of the shipping.
- "Heavy" shipping class cost: Provide the shipping rate for the class. Here, we are going with “10 + [fee percent=”5″ max_fee=”50″].” So, the shipping cost will be $10+ 5 percent of the total order value, but not exceeding $50.
- No shipping class cost: Here, provide the shipping cost for products without a shipping class.
- Calculation type: Here, you get two options:
- Per Order – Pick the most expensive option based on shipping costs in the cart.
- Per Class – Charges shipping for each shipping class.
If you choose per class, you must provide a value for the “no shipping class cost” field.
After making the changes, click on 'Save Changes'.

Step 5: Assign the shipping class to your product
As shown earlier, go to the WooCommerce shipping tab on the product data section and add the shipping class.

Click on ‘Update’ when done to save the changes.
Step 6: Test the shipping method
The last step is to check if the rates you set up are working currently. Add the items with the shipping classes to your cart and try to check out with the billing address included in the shipping zone you created.

As you can see, your WooCommerce checkout page will display all the shipping options here.
The shipping rates have been calculated using the formula we assigned to the heavy shipping class that this product in the cart belongs to.
7 Best Advanced WooCommerce Shipping Plugins
You can expand WooCommerce shipping functionality with many advanced plugins.
We installed and tested each plugin on a live WooCommerce environment, configuring multi-zone shipping with weight-based rates. We checked checkout behavior, verified compatibility with common themes and page builders, and reviewed each plugin's update frequency and support quality.
Here are some of the best free and paid WooCommerce shipping plugins:
| Plugin Name | What It Does | Best For | Pricing |
| Table Rate Shipping | Creates multiple shipping rates based on location, price, weight, item count, or product class, with support for multiple rules per zone | Stores with complex or variable shipping pricing | $119/year |
| Order Tracking for WooCommerce | Shares order status and shipment tracking details on order pages and via email | Stores that want to reduce support queries and improve post-purchase trust | $49/year |
| FedEx Shipping Method | Shows real-time FedEx shipping rates at checkout using the FedEx API | US and Canada-based stores using FedEx carrier rates | $109/year |
| Flat Rate Shipping Plugin For WooCommerce | Builds conditional flat-rate or cost-based shipping methods by product, category, country, or quantity | Stores needing simple and predictable shipping rules | Free, Premium starts at $179/year |
| WooCommerce Weight-Based Shipping | Applies shipping rules based on order weight, destination, and cart subtotal | Stores selling products with varying weights or bulk orders | Free |
| WooCommerce PDF Invoices, Packing Slips, Delivery Notes, and Shipping Labels | Generates branded shipping documents directly from the WooCommerce dashboard | Stores handling in-house fulfillment and shipping paperwork | Free |
| Conditional Shipping for WooCommerce | Enables or restricts shipping methods based on products, weight, dimensions, or order value | Stores with shipping limitations or special delivery rules | Free |
Closing Notes on WooCommerce Shipping
Effective shipping management is crucial for the success of any WooCommerce store. By setting clear shipping policies and offering various shipping options, you can enhance the overall shopping experience for your customers.
A great WooCommerce shipping strategy helps you meet customer expectations and leads to increased sales, customer loyalty, and overall business growth.
If you need more features than the default shipping options in WooCommerce, you can always rely on the advanced WooCommerce shipping plugin we discussed.
So make sure you develop a solid WooCommerce shipping strategy to start growing your business.
More WooCommerce Resources:
- How to Set Up WooCommerce Free Shipping
- How to Set Up WooCommerce Free Shipping Bar
- How to Set Up WooCommerce Flat Rate Shipping
- Best WooCommerce Shipping Plugins

Editorial Team
December 15, 2025Your WooCommerce order confirmation email isn’t just a simple receipt; it’s a powerful marketing opportunity! With an average open rate of 65%, a click rate of 17%, and an order...

Editorial Team
November 18, 2025Do you want to add a custom field to your WooCommerce checkout page? The default WooCommerce checkout offers a one-size-fits-all solution and it cannot be optimized for your unique business...

Editorial Team
October 27, 2025A slow shopping experience can quietly kill your WooCommerce sales. Imagine this: a shopper finds a product they love, clicks “Add to Cart,” and boom, the entire page reloads. It’s...






