How to Show Shipping Options in WooCommerce - Sunny HQ

How to Show Shipping Options in WooCommerce

Last Updated on December 5, 2025 by Sunny Staff

How to Show Shipping Options in WooCommerce

Key Takeaways

  • WooCommerce shipping depends on zones, methods, and classes — each must be configured correctly for rates to appear.
  • Missing or misconfigured zones are the most common reason shipping options don’t show at checkout.
  • Conditional logic and plugins can help create flexible, location-based or product-based shipping rules.
  • Displaying clear shipping choices reduces cart abandonment and improves customer trust.

Quick Reference

Feature Purpose
Shipping Zones Define geographic areas and link them to shipping methods.
Shipping Methods Determine how customers pay for delivery — flat rate, free, or live rates.
Shipping Classes Group similar products to assign specific rates (e.g., “Heavy” items).
Local Pickup Allow customers to collect orders in person.

Key Definitions

Term Meaning
Flat Rate A fixed shipping fee per order or per item.
Conditional Logic Rules that control which shipping options appear based on cart contents or location.
Carrier Rate Live rates from USPS, FedEx, DHL, or UPS pulled through plugins.

Customers expect clear shipping options at checkout — but in WooCommerce, getting them to display correctly isn’t always a plug-and-play process. Whether you’re offering flat rates, live carrier rates, or local pickup, configuring it all can be surprisingly tricky.

In this post, we’ll walk through how WooCommerce handles shipping, common reasons options don’t appear, and how to fix them.

Why it matters: clear shipping options have real business benefits.

  • Reduced cart abandonment: Offering multiple methods gives customers flexibility and lowers checkout drop-offs.
  • Improved brand reputation: Transparent shipping builds trust and loyalty.
  • More flexibility and control: WooCommerce lets you define zones, methods, and conditions for smooth fulfillment.

Also read: From Downtime to Prime Time: How WooCommerce Maintenance Services Keep You Online

Getting Started With Shipping in WooCommerce

Shipping is enabled by default, but you can change or disable it under WooCommerce > Settings > General. Under Shipping location(s), choose:

  • Ship to all countries you sell to
  • Ship to all countries
  • Ship to specific countries only
  • Disable shipping and shipping calculations

Enable shipping in WooCommerce

If unsure, use Ship to all countries you sell to. Then navigate to WooCommerce > Settings > Shipping. The four main tabs you’ll see are:

Shipping Zones | Shipping Settings | Classes | Local Pickup

WooCommerce shipping settings

1. Shipping Zones

WooCommerce shipping zones

Shipping zones define where you ship and how much it costs. Each zone can include one or more regions with assigned methods.

  • Add zones (e.g., United States, Western Europe, California only)
  • Assign shipping methods: Flat rate, Free shipping, Local pickup, or Live carrier rates
  • Reorder zones — WooCommerce applies the first matching one

Example: Free shipping to the U.S., $10 flat rate to Canada, no shipping elsewhere.

2. Shipping Settings

WooCommerce global shipping settings

This tab controls global shipping behavior. Enable debug mode for troubleshooting, or manage plugin-specific settings (for instance, from PluginHive or Flexible Shipping).

Note: The default tab is minimal until extended by a plugin.

3. Shipping Classes

WooCommerce shipping classes

Shipping classes group similar products to assign special rates. Create classes like Heavy, Fragile, or Lightweight, assign them to products, and use them when defining Flat Rate pricing.

Example: Charge $20 for “Heavy” items and $5 for “Lightweight” within the same zone.

4. Local Pickup

WooCommerce local pickup

Local Pickup has its own tab in WooCommerce 8+ for easier management. You can:

  • Configure pickup locations globally
  • Set tax status
  • Rename the method (e.g., “Collect at warehouse”)
  • Restrict to specific zones

Example: Offer free pickup near your store while charging shipping elsewhere.

Also read: WooCommerce for Beginners: Get Serious About Sales

How to Set Up Shipping Options in WooCommerce

Now that we’ve covered the essentials, let’s configure your shipping so options appear correctly at checkout.

Example: two zones — United States (Free Shipping) and Canada ($25 Flat Rate). You can further refine rates using Shipping Classes.

WooCommerce flat rate setup

Assign products to a class in the Product Data › Shipping tab:

WooCommerce heavy class

Shipping to the US

Free shipping applies to most products delivered within the U.S.

US delivery example

Shipping to Canada

Products sent to Canada incur the configured $25 rate.

Canada delivery example

Using the “Heavy” Shipping Class

Earlier we created a Heavy class. Here’s an example product using that rule:

Heavy shipping example

The checkout now applies the $60 rate (Flat + Heavy Class).
To handle U.S. heavy items, edit the U.S. zone › Flat Rate method › set $50 for the Heavy class.

Flat rate per class

When Multiple Methods Show

If both “Free Shipping” and “Heavy Rate” display, control visibility using the Conditional Shipping for WooCommerce plugin.

Conditional shipping rules

Create a ruleset such as US – Heavy › Condition: Product includes Anvil › Action: Disable Free Shipping (US). Save changes to apply.

WooCommerce heavy ruleset
Anvil shipping option result

Also read: Turbocharge Your WP-Admin – Essential Guide to a Faster WordPress Backend

How Customers Can Choose Their Own Shipping Method

To give buyers control over delivery speed, create multiple methods within a zone.

  1. WooCommerce › Settings › Shipping › Zones › Add or Edit Zone
  2. Add several Flat Rate methods (e.g., Normal, Fast, Overnight).

Mexico shipping zone
Multiple shipping methods
Frontend multiple shipping options

Shipping Plugins – When to Use One

Plugins extend WooCommerce shipping beyond basic features—ideal for automation, live rates, and conditional logic.

When to Use a Shipping Plugin

  1. Real-time carrier rates: Show live prices from UPS, FedEx, DHL, USPS.
  2. Conditional logic: Hide Free Shipping when heavy items exist, etc.
  3. Label printing & tracking: Integrate carriers to generate labels and notifications.
  4. International shipping: Handle zones, taxes, and customs forms automatically.
  5. Product-level rules: Different rates for books vs furniture using shipping classes.

Popular Shipping Plugins

Choosing the right plugin streamlines fulfillment, reduces costs, and creates a better checkout experience.

In a Nutshell

Shipping is one of the most important—and often most frustrating—parts of running a WooCommerce store.
With the right zones, classes, and plugins, you can build a seamless checkout experience that boosts trust and conversions.

Sign up today and let Sunny HQ simplify your WooCommerce shipping so you can focus on growing your store.

WooCommerce Shipping FAQ

1. Why aren’t shipping options showing at checkout?

Usually because shipping is disabled or no zone matches the address.
Fix: Ensure zones and methods cover the customer’s location.

2. How do I offer free shipping over a certain amount?

WooCommerce › Settings › Shipping › Zones › Add Free Shipping method › Set condition to Minimum order amount.

3. Can I hide free shipping if a heavy product is in the cart?

Yes. Use the Conditional Shipping for WooCommerce plugin or custom code in functions.php.

4. Why are multiple methods displaying together?

WooCommerce shows all valid methods. Use Flexible or Table Rate Shipping to control priority or visibility.

5. Difference between zones, methods, and classes?
  • Zones: Regions served (e.g., U.S., Europe)
  • Methods: Shipping types assigned per zone
  • Classes: Product groups for custom rates
6. How do I offer different rates for different products?

Create shipping classes (e.g., Books, Furniture, Heavy) and configure rates for each under Flat Rate.

7. “There are no shipping options available.” Why?

No enabled method matches the address or product class. Add a “Rest of the World” fallback zone.

8. Can I use live carrier rates?

Yes — with plugins like WooCommerce Shipping, PluginHive, or Flexible Shipping PRO.

9. Do I need to charge tax on shipping?

Usually yes. Configure under WooCommerce › Settings › Tax › Tax Options › Enable tax on shipping.

10. Can I offer Local Pickup only to nearby customers?

Yes. Restrict Local Pickup by zone or postcode using conditional shipping plugins.