Flexible Shipping for WooCommerce


Table Rate Shipping Killer

Flexible Shipping is the most advanced shipping plugin for WooCommerce stores allowing you to calculate shipping costs based on weight and/or cart total. Combine it with the PRO version and it will become the only WooCommerce Shipping plugin you’ll ever need.

Upgrade to Flexible Shipping PRO
Get priority e-mail support and access all PRO features, upgrade to Flexible Shipping PRO now →

Possible Shipping Scenarios

  • Shipping costs based on cart weight
  • Shipping costs based on cart total
  • Adding handling or insurance costs above a certain value
  • Creating COD (cash on delivery) shipping method with additional costs
  • Different shipping costs for different shipping classes (PRO)
  • Disable shipping method if a rule is matched in the cart (PRO)
  • Add a cost for order and per every product (PRO)

These are just a few examples. The possibilities are probably endless ๐Ÿ˜‰ We described some of the in our DIY section.


  • Unlimited shipping methods and cost rules
  • Add titles and descriptions to your shipping methods
  • Shipping cost based on cart total and/or weight
  • Minimum and maximum values for cart total and/or weight
  • Summing cost rules if they are matched – option to add costs based on cart total and weight at the same time
  • Free shipping override
  • Show selected shipping methods only for logged in users
  • Integrations (see below for details)
  • Compatible with WooCommerce 2.6 Shipping Zones (see below for details)
  • WPML and Polylang support
  • CSV Import
  • Integrations with couriers

PRO Features

  • All free features
  • Support for shipping classes
  • Shipping costs based on product item count and/or cart line item count
  • Additional costs for price, weight, item, cart line item
  • Stopping a rule (if the rule is matched the following rules are not calculated)
  • Cancelling a rule (if the rule is matched it is removed from available shipping methods at the checkout)
  • Additional calculation methods (sum, lowest cost, highest cost)
  • Maximum shipping cost per shipping method
  • Coupons support for free shipping
  • CSV Export

Upgrade to PRO Now →

Locations Based Shipping Add-On

The Location Based Shipping Add-On extends Flexible Shipping for WooCommerce with additional rules based on locations. Works with both the free and PRO versions, so you can buy it separately if you donโ€™t need the PRO features.

Buy Locations Add-On Now →

WooCommerce Compatibility

WooCommerce 3.5 ready! In Flexible Shipping 2.1.8 we added support for WooCommerce 3.5. WooCommerce 3.4 is supported from version 2.1.2.

Shipping Zones ready! Flexible Shipping is compatible with WooCommerce Shipping Zones introduced in version 2.6. Read more about WooCommerce Shipping Zones.

Flexible Shipping also plays well with older versions of WooCommerce. We tested the plugin with WooCommerce 3.1.0 and up.


View Flexible Shipping Docs

Support Policy

We provide a limited support for the free version in the plugin Support Forum. Please upgrade to PRO version to get priority e-mail support as well as all pro features. Upgrade Now →


Flexible Shipping Connect supports UPS (Worldwide) by default.

United Kingdom

We created WooCommerce DPD UK integration for Flexible Shipping. Check DPD UK for WooCommerce →


There are several integrations that we provide for Flexible Shipping in Poland:

  • DPD – WooCommerce
  • DHL – WooCommerce
  • Paczkomaty InPost – WooCommerce
  • eNadawca Poczta Polska – WooCommerce
  • Paczka w Ruchu – WooCommerce

View the Polish integrations →

Get more WooCommerce plugins from WP Desk
We provide premium plugins for customizing checkout, shipping, invoicing and more. Check out our premium WooCommerce plugins here โ†’

Supported Currency Switchers

  • Aelia Currency Switcher
  • Multi Currency Store
  • WooCommerce Currency Switcher
  • WPML


  • English – default, always included
  • Polish
  • German by jensratzel

Flexible Shipping in a nutshell

Key features:

  • improved user experience related to shipping,
  • create custom shipping rules,
  • offer free shipping based on the price or quantity of products in the basket,
  • cost based shipping cost
  • weight based shipping cost
  • total order based shipping cost,
  • item count based shipping cost,
  • shipping class based shipping cost,
  • WooCommerce shipping cost rules,
  • WooCommerce shipping plugin,
  • WooCommerce table rate shipping,
  • WooCommerce UPS shipping.

Check out this WooCommerce Table Rate Shipping Plugin today!


  • Main Settings in WooCommerce 2.5.
  • Main Settings in WooCommerce 2.6 and up.
  • Shipping Methods list.
  • Add/Edit Shipping Method.
  • Shipping Rules Settings.


You can install this plugin like any other WordPress plugin.

  1. Download and unzip the latest release zip file.
  2. Upload the entire plugin directory to your /wp-content/plugins/ directory.
  3. Activate the plugin through the Plugins menu in WordPress Administration.

You can also use WordPress uploader to upload plugin zip file in menu Plugins -> Add New -> Upload Plugin. Then go directly to point 3.


How to configure the plugin?

Just check out our Flexible Shipping Docs here.

Do you offer support?

We provide a limited support for the free version in the plugin Support Forum. Please upgrade to PRO version to get priority e-mail support as well as all pro features. Upgrade Now →


Keep the free version

This plugin does the job in his free version but the pro one doesn't provides what I paid for, impossible to have a shipping costs based on product item count and/or cart line item count.

Did the job perfectly

I was looking for a plugin allowing to make free delivery for some products. Its perfect and much more powerfull. thanx

Easy handling, good performance

We use this plugin in several stores we create and I can highly recommend it to everyone who looking easy handling plugin with good support - plugin has many updates and is very fast ready for any new WordPress/Woocommerce version.

Disappointed with the ethos of the company

Unfortunately, I'm pretty disappointed with my experience with this company. I purchased a plugin from their website which I have no issues with, but my issue is with the ethos of the company itself. I was charged a renewal yearly subscription on a plugin that I no longer use and to be honest, had forgotten about. It's completely uninstalled from the website and no longer active. I was away at the time so only noticed after they taken the payment. I contacted them directly about 4 days after the payment had left my account and asked for a refund to which they replied no and said they have a no refunds policy and that they had sent me a reminder email before it was due to go out. This email was only sent 2 days before it was due to out which I missed due to being away and not checking my emails frequently. I don't think a 2-day warning is adequate enough as it is and especially during the festive period when people aren't checking their emails as often. I feel like they're being unfair. Surely there should get a cool off period for any payments taken on subscriptions that have been forgotten about and aren't active rather than just a "no, no refund".

Issue displaying order details (administration) – WP 4.9.8, WC 2.6.14

I've installed the plugin some days ago (on WP 4.9.8 and WC 2.6.14). The plugin works, but it's impossible to display order details in administration caused by the following error: FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Error: Call to a member function get_meta() on array in ... /wp-content/plugins/flexible-shipping/classes/order-add-shipping.php:74
Read all 27 reviews

Contributors & Developers

“Flexible Shipping for WooCommerce” is open source software. The following people have contributed to this plugin.


“Flexible Shipping for WooCommerce” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Flexible Shipping for WooCommerce” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


3.2.0 – 2019-03-11

  • Added support for UPS Access Points for FS Connect
  • Removed argument types for WooCommerce types (ie. WC_Order)

3.1.12 – 2019-03-05

  • Fixed inifinite method call on WooCommerce 3.1

3.1.11 – 2019-02-27

  • Fixed empty description in commodities (customs values)

3.1.10 – 2019-02-27

  • Fixed price calculation in customs values

3.1.9 – 2019-02-21

  • Fixed fatal error on wp-notice library

3.1.8 – 2019-02-19

  • Fixed error handling on bulk labels generation
  • Fixed polish translation for Create

3.1.7 – 2019-02-12

  • Fixed warnings in cart or checkout when shipment default method is not valid for current package

3.1.6 – 2019-02-07

  • Added filter for deactivation data in tracker

3.1.5 – 2019-02-04

  • Fixed parameters order in notice constructor
  • Fixed default shipment method in cart/checkout

3.1.4 – 2019-01-28

  • Fixed fatal when free shipment
  • Fixed issue for shipment with no costs

3.1.3 – 2019-01-23

  • Tweaked pl translation
  • Fixed issues on shipment creating by FS Connect

3.1.2 – 2019-01-16

  • Fixed adding slashes to title and description
  • Fixed error on saving integration settings when no service settings are saved
  • Fixed configuration of shipping method integration form when multiple integrations enabled

3.1.1 – 2018-12-20

  • Fixed label file extension

3.1 – 2018-12-13

  • Added Cache settings in FS Connect Advanced settings
  • Added info and link to planned integrations
  • Added support for not allowed demo domain
  • Fixed missing tracker message
  • Fixed typo in Connect notices
  • Fixed COD Enable for shipping methods functionality
  • Fixed UK counties
  • Fixed for free shipping zero value in settings

3.0.7 – 2018-12-07

  • Added define to change shop saas domain using SAAS_FLEXIBLESHIPPING_URL_SHOP_DOMAIN
  • Added filter to change shop saas domain flexible_shipping_saas_domain
  • Fixed required PHP version
  • Fixed missing manifests functions
  • Fixed typo in connect notice
  • Fixed translations in integration settings

3.0.6 – 2018-11-29

  • Added Flexible Shipping Connect to create packages and generate shipping labels automatically from WooCommerce Orders list and manually from each order
  • Added integration with UPS (Worldwide). Now you can connect your shop with your UPS account. No extra software is needed. You can cover the whole shipping process directly from your UPS WooCommerce environment.

3.0.5 – 2018-11-28

  • Fixed residential address and send-as field from saas
  • Fixed empty services handler

3.0.4 – 2018-11-22

  • Fixed live rates on non supported service should not to initialize
  • Fixed negotiated rates in live rates

3.0.4 – 2018-11-09

  • Fixed negotiated rates

3.0.3 – 2018-11-09

  • Fixed urls

3.0.0 – 2018-11-07

  • First release of flexibleshipping.com platform integration
  • Fixed multiple shipments in some cases

2.1.10 – 2018-10-17

Fixed error 500 after update to 2.1.8/2.1.9 version

2.1.9 – 2018-10-17

Fixed error 500 after update to 2.1.8 version

2.1.8 – 2018-10-16

  • Added support for WooCommerce 3.5
  • Dropped support for WooCommerce below 3.0 (the plugin may still work with older versions but we do not declare official support)
  • Fixed multiple shipments in some cases

2.1.7 – 2018-09-05

  • Fixed issue with the generation of many shipments for one order

2.1.6 – 2018-06-26

  • Fixed error with conflict static tracker

2.1.5 – 2018-06-25

  • Tweaked tracker data anonymization
  • Fixed tracker notice

2.1.4 – 2018-06-11

  • Fixed missing metabox Add Shipment in WooCommerce 3.4

2.1.3 – 2018-05-29

  • Fixed opt-in/opt-out links

2.1.2 – 2018-05-23

  • Added support for WooCommerce 3.4

2.1.1 – 2018-05-10

  • Fixed calculation method message when taxes disabled
  • Fixed session starting – do not start session in AJAX calls

2.1 – 2018-05-07

  • Added Flexible Shipping tab on WooCommerce Shipping
  • Tweaked calculation method for shipping rules – based on WooCommerce tax display
  • Fixed display printer name on order edit
  • Fixed notice after all rules delete

2.0.1 – 2018-03-01

  • Fixed problems with deactivation plugin on multisite
  • Fixed WP Desk Tracker warning after enabling the plugin

2.0 – 2018-01-24

  • Added support for WooCommerce 3.3
  • Fixed installing the plugin by wp-cli
  • Fixed error on cart page for WooCommerce below 3.2

1.9.12 – 2017-12-22

  • Fixed generating empty zip file for labels with no shipment
  • Fixed some minor notices with WooCommerce 3.2.x

1.9.11 – 2017-11-20

  • Fixed shipment filtering for shipping integrations
  • Fixed saving decimal values for free shipping

1.9.10 – 2017-10-10

  • Added support for WooCommerce 3.2

1.9.9 – 2017-09-25

  • Fixed parse error on PHP 5.3 after update to version 1.9.8

1.9.8 – 2017-09-11

  • Added compatibility with WooCommerce DPD UK 1.0

1.9.7 – 2017-08-09

  • Added compatibility with Flexible Shipping PRO 1.5

1.9.6 – 2017-07-27

  • Fixed a problem with WPML when using multiple currencies
  • Fixed an error when product weight is not set
  • Tweaked message in WP Desk Tracker class

1.9.5 – 2017-07-14

  • Added support for WooCommerce 3.1
  • Fixed display shipping methods after adding Flexible Shipping to COD payment method

1.9.4 – 2017-06-22

  • Added support for WordPress below 4.7 in the WP Desk Tracker class
  • Fixed shipping methods export in Flexible Shipping PRO

1.9.3 – 2017-06-13

  • Added compatibility with WooCommerce DPD 1.0
  • Integrated WP Desk Tracker class to help us understand how you use the plugin (you need to opt in to enable it)

1.9.2 – 2017-06-07

  • Added compatibility with WooCommerce InPost 3.4

1.9.1 – 2017-06-02

  • Added compatibility with WooCommerce InPost 3.3

1.9 – 2017-03-30

  • Added support for upcoming WooCommerce 3.0
  • Added support for bulk shipping available in our shipping integrations

1.8 – 2017-01-24

  • Added CSV import for shipping methods including rules
  • Added WooCommerce Currency Switcher support
  • Added shipping classes support in WPML
  • Changed cart weight calculting to WC()->cart->cart_contents_weight
  • Dropped support for WooCommerce 2.4 and lower
  • Removed Enable checkbox in general settings

1.7 – 2016-12-14

  • Added WPML and Polylang support
  • Added custom “free shipping” label
  • Removed decrecated enable/disable for main shipping method
  • Fixed choosing default shipping method in the checkout

1.6.2 – 2016-10-26

  • Tweaked support for the default “Rest of the world” shipping zone
  • Added support for “Network activated” WooCommerce on Multisite installations

1.6.1 – 2016-10-14

  • Added information about DHL WooCommerce integration

1.6 – 2016-09-29

  • Added support for Flexible Shipping Locations Add-On
  • Fixed WooCommerce 2.3.x compatibility

1.5 – 2016-09-12

  • Added support for currency switching: WPML, Aelia Currency Switcher, Multi Currency Store
  • Added optional shipping method description

1.4.1 – 2016-06-17

  • Fixed default shipping method in the checkout

1.4 – 2016-06-14

  • Converted to English
  • Added Polish (pl_PL) translation
  • Added FREE and PRO versions

1.3.2 – 2016-04-12

  • Fixed a few notices

1.3.1 – 2016-03-14

  • Fixed default shipping method in the checkout

1.3 – 2016-03-07

  • Added enabling shipping method only for logged in users
  • Fixed a notice in generate_shipping_methods_html

1.2 – 2016-01-26

  • Automatic updates

1.1.1 – 2015-12-01

  • Added WooCommerce 2.3 compatibility

1.0 – 2015-11-03

  • First release!