To set up flat rate shipping in WooCommerce, go to WooCommerce > Settings > Shipping, add a shipping zone, then add the Flat Rate method and enter a fixed cost or a cost formula. WooCommerce also supports placeholders like [qty] and fee percent so the flat rate can scale with cart quantity or order value.
This guide covers the default flat rate settings, ready-to-use cost formulas, weight-based rates using shipping classes, and how to add more advanced rate rules with a plugin.
What Does WooCommerce Flat Rate Shipping Mean?
Flat rate shipping is a WooCommerce shipping method that charges a fixed cost per order, per item, or per shipping class, regardless of a product’s actual weight or the customer’s distance from the warehouse.
It’s built into WooCommerce by default, configured under WooCommerce > Settings > Shipping inside each shipping zone. Combined with shipping classes and cost formulas, a single flat rate method can produce several different rates for different order types. It is not the same as real-time carrier rates, which pull live quotes from a shipping provider; a flat rate stays fixed at whatever formula the store sets.
How to Set Up WooCommerce Flat Rate Shipping Using Default Settings
Step 1: Set Your Store Address
Go to WooCommerce > Settings > General and confirm the store address you’re shipping from. WooCommerce uses this to calculate zone-based shipping rules.
Step 2: Create a Shipping Zone
Go to WooCommerce > Settings > Shipping and add a zone. A zone is a geographic area you ship to, such as a continent (Asia, Europe), a country (USA, Spain), or a more specific area filtered by state or postal code.
Step 3: Add the Flat Rate Shipping Method
Inside the zone, click Add Shipping Method. WooCommerce offers three default options: Free Shipping, Flat Rate, and Local Pickup. Select Flat Rate and continue.
Step 4: Configure Name, Tax Status, and Cost
- Name: The label customers see at checkout, for example “Economy Shipping.”
- Tax status: Whether shipping is taxable. If taxable, tax is added on top of the shipping cost.
- Cost: The flat charge per order. Entering
7.00charges $7.00 shipping regardless of cart size.
Step 5: Add Shipping Class Costs (Optional)
Shipping classes group products with similar shipping needs. If you create a “Fragile Items” class with a $3.00 surcharge, a customer buying two fragile items pays an extra $6.00 on top of the base flat rate.
WooCommerce Flat Rate Shipping Cost Field Placeholders
The flat rate cost field supports placeholders that turn a single number into a formula, so the charge can scale with quantity, order value, or both.
- [qty]: Represents the number of items in the cart. Use it to charge per item, for example
[qty] * 3to charge $3 per item. - fee percent=”numeric value”: Charges a percentage of the order total.
[fee percent="7"]on a $200 order adds a $14 fee. - min_fee=”numeric value”: Sets a shipping cost floor so small orders still cover your shipping cost.
- max_fee=”numeric value”: Caps the shipping cost so large orders don’t get an unexpectedly high charge.
WooCommerce Flat Rate Shipping Formula Examples
Use these ready-made formulas as a starting point, then adjust the numbers to match your own shipping costs.
Flat rate for all orders Cost field: 6.00 Every order pays a flat $6.00, regardless of size or value.
Quantity-based flat rate Cost field: 4 + (2 * [qty]) A $4 base rate plus $2 per item. 1 item = $6, 2 items = $8, 3 items = $10.
Percentage-based flat rate Cost field: 5 + [fee percent="3"] A $5 base rate plus 3% of the order total. A $100 order costs $8.00; a $300 order costs $14.00.
Percentage-based flat rate with a minimum fee Cost field: 7 + [fee percent="5" min_fee="12"] A $7 base rate plus 5% of the order total, with a $12 floor. A $50 order would normally cost $9.50, but the minimum fee raises it to $12.00.
Weight-Based Flat Rate Using Shipping Classes
To charge different flat rates by weight (for example, $5 up to 1 kg, $8 for 1–5 kg, $10 for 5–10 kg, and $15 over 10 kg):
- Go to WooCommerce > Settings > Shipping > Classes and create a class for each weight range.
- Assign each product to the matching class. To do this in bulk, filter products on the All Products page, select them, and use Quick Edit to set the shipping class.
- Open the Flat Rate method in your shipping zone. Each class you created now appears under Shipping Class Costs.
- Set your base cost in the main Cost field and enter each class’s surcharge in its own field, then save.
For example, with a $5 base cost and a $15 surcharge on the “Over 10 kg” class, a heavy product totals $20 at checkout ($5 base + $15 class cost). Adding a second product from the “1–5 kg” class on top brings the total to $28 ($5 + $15 + $8).
How to Set Up Flat Rate Shipping in WooCommerce Using a Plugin
The default Flat Rate method covers most stores, but a plugin adds conditions the built-in settings can’t handle on their own, such as rate tables based on cart total, distance, or multiple combined conditions at once.
Flexible Shipping by Octolize is a free table rate shipping plugin for WooCommerce that lets you build cost rules on top of the default zones. To create a cart-total-based rate:
- Install the plugin, open a shipping zone, and add the Flexible Shipping method.
- Open the method’s edit screen and scroll to Shipping Cost Calculation Rules.
- Add a Price condition, for example a $20 rate for cart totals between $1 and $100.
- Add further rules for other price bands, and set a free shipping threshold if you offer one (for example, free shipping over $300).
- Save the zone and test the rates from the cart or checkout page.
Key features of Flexible Shipping:
- Unlimited shipping methods and cost rules on the free version
- Rate conditions based on cart total, weight, or a combination of both
- A free shipping threshold built into the same method, with no separate setup needed
- CSV export of rate rules (import is a PRO feature)
- WPML and Polylang support for multilingual stores
At the time of writing, the free version covers cart-total and weight-based rules; conditions like shipping-class-based pricing and CSV import require the PRO version. Check the plugin’s pricing page for current plan details before publishing.
Frequently Asked Questions
What does the “flat rate” shipping method in WooCommerce mean?
It’s a WooCommerce shipping option that charges a fixed cost per order, item, or shipping class instead of calculating shipping from weight, distance, or a carrier’s live rate. The cost is set by the store owner in the Flat Rate method’s Cost field and stays the same for every matching order.
How do I charge a flat rate for shipping in WooCommerce?
Add a shipping zone under WooCommerce > Settings > Shipping, add the Flat Rate method, and enter a cost. Use placeholders like [qty] or fee percent in the Cost field if you want the charge to scale with quantity or order value instead of staying fixed.
How is flat rate shipping calculated?
It’s calculated from whatever formula is entered in the Cost field: a flat number for a fixed charge, or a formula combining a base cost with [qty], fee percent, min_fee, or max_fee for quantity- or value-based scaling.
What’s the difference between flat rate and free shipping in WooCommerce?
Flat rate charges a fixed shipping cost on every qualifying order. Free shipping charges nothing, usually unlocked above a minimum cart total. Many stores combine both: a flat rate below a threshold, free shipping above it.
Does WooCommerce flat rate shipping use real-time carrier rates?
No. Flat rate shipping uses a cost you set manually; it does not pull live rates from a carrier like USPS, UPS, or FedEx. Real-time carrier rates require a separate shipping method or plugin built for live rate lookups.
Can I set different flat rates for different WooCommerce shipping classes?
Yes. Create shipping classes under WooCommerce > Settings > Shipping > Classes, assign products to them, then add a surcharge for each class inside the Flat Rate method’s Shipping Class Costs section.
Key Takeaways
- WooCommerce’s built-in Flat Rate method is configured per shipping zone under WooCommerce > Settings > Shipping.
- The Cost field accepts formulas, not just flat numbers, using [qty], fee percent, min_fee, and max_fee.
- Shipping classes let a single flat rate method charge different rates by product weight or type.
- Flat rate shipping is fixed and manually set, unlike real-time carrier rates, which change per shipment.
- A plugin like Flexible Shipping adds cart-total and combined-condition rules beyond what the default settings support.
- Pair a flat rate with a free-shipping threshold to cover both budget-conscious and larger orders.
Free version on WordPress.org. Every Pro licence includes a 30-day money-back guarantee.