Skip to content

Plugin Documentation

Complete guide to installing, configuring, and using the Tiered Pricing Table plugin.

Video tutorials

Eight short videos, from your first bulk discount to importing a price list.

  1. Play, 4:00 Add bulk quantity discounts
  2. Play, 2:49 Set minimum, maximum and step quantities
  3. Play, 3:18 Set prices by user role
  4. Play, 3:15 Create a wholesale store
  5. Play, 2:20 Make a private store
  6. Play, 2:24 Increase average order value
  7. Play, 1:50 Add a request a quote button
  8. Play, 2:33 Import and export bulk pricing

On this page

Getting started

What Tiered Pricing Table does

Charge different prices depending on the quantity a customer buys. You set the tiers; the plugin shows them on the product page, updates the price, totals and savings as the quantity changes, charges the right price in the cart and checkout, and shows the lowest price or a price range in the catalog.

Also included: minimum, maximum and step quantities, prices per customer role or individual customer, global rules for categories, tags, brands or roles, request a quote, tier labels such as “Best value”, and a wholesale module with registration, a private store and cart rules.

Tiered pricing on the product page
Everything reacts to the quantity field: price, highlighted tier, ‘You save’ and totals.

How pricing tiers work

  • A tier is a quantity and the price (or discount) that applies from that quantity up to the next tier.
  • Tiers start at quantity 2; quantity 1 always pays the regular or sale price.
  • Fixed rules set the unit price; percentage rules set a discount from the product price; amount rules take an amount off the product price per unit.
  • The highest tier the quantity reaches is used: tiers at 10 and 20 give quantity 15 the 10+ price.
What you enter
Regular price$100.00
Tier: 10 pieces$90.00
Tier: 20 pieces$80.00
What customers see
QuantityDiscountPrice
1 – 9 pieces—$100.00
10 – 19 pieces10 %$90.00
20+ pieces20 %$80.00

Quick start: your first tiered price

  1. Products → Edit → General: under the price, choose a Tiered pricing type and add rows (quantity and price or discount) with New tier. The quantity limits (minimum, maximum, step) sit right below the tiers.
  2. Optional, on the Tiered Pricing tab: a layout and a unit label for this product, and prices per role or customer in the Role & Customer Prices section.
  3. Update. The table appears above Add to cart and the price follows the quantity.
Tiered pricing fields in the product data

Store-wide defaults

How tiers look (layout, colours, texts, position, catalog prices) is set once under WooCommerce → Settings → Tiered Pricing. Product fields only decide what the prices are.

Where to find everything

ScreenWhat you do there
Products → Edit → GeneralTiered pricing rows and quantity limits (min / max / step) for the product or each variation
Products → Edit → Tiered PricingSections: variable product (the parent’s tiers and quantity limits, default variation, shared pricing, minimum calculation), display (layout, unit label), visibility (who can see the product) and role & customer prices
WooCommerce → Pricing RulesGlobal rules for many products, roles or customers, with priority, schedule and status
WooCommerce → Settings → Tiered PricingGeneral (Pricing Display, Price Calculation), Badges & Labels, Request a Quote, Wholesale, Integrations, Multicurrency, Product Addons, Advanced (Modules, Roles Management, Pricing Test, Cache, Debug, Data clean-up)
WooCommerce → Wholesale ApplicationsWholesale account applications to approve or reject
Products → Categories → EditWho can see the category (Private store)
WooCommerce → Quote RequestsSubmitted quotes
WooCommerce → Settings → TaxPer-role tax settings

Pricing rules

Fixed, percentage and amount rules

Fixed rules set a unit price per tier. Percentage rules set a discount from the product price (from the sale price if there is one; switch to the regular price in Settings → General → Price Calculation). Amount rules take an amount off the product price per unit and start from the same price as percentage rules; a tier never goes below zero. All three examples below give 1–9 = $100, 10–19 = $90, 20+ = $80: fixed 10:90, 20:80, percentage 10:10, 20:20, amount 10:10, 20:20.

Fixed tiered pricing rules
Fixed rules; percentage and amount rules use the same rows with a discount or an amount off instead of a price

Please note

Never enter the regular price as a tier: tiers start at quantity 2.

Minimum, maximum and quantity step

Set under the tiers on the General tab (for a variable product in the Variable product section of the Tiered Pricing tab), and in every role, customer and global rule:

  • Minimum: the quantity field starts there and smaller quantities are rejected.
  • Maximum: the quantity field is capped and checked on add-to-cart and cart update.
  • Group of (step): multiples only (10, 20, 30 …).

With a minimum of 10 and tiers 10–19 = $100, 20–49 = $90, 50+ = $80, enter: regular price $100, minimum 10, tiers 20 = $90 and 50 = $80.

Mix & match lets the minimum apply to the sum of all variations in the cart: per product under Calculate minimum quantity by in the Variable product section, or for every product in Settings → General → Price Calculation.

Variable products

  • Each variation has its own tiered pricing rows and minimum.
  • Rules on the parent (Tiered Pricing tab) apply to variations without rules of their own.
  • The Variable product section of the Tiered Pricing tab holds the parent’s tiers and quantity limits, the default variation, whose table is shown before attributes are selected; Variations share pricing, so the table never reloads when attributes change (needs a default variation); and how the minimum quantity is counted across variations.

Per-product display options

The Display section of the Tiered Pricing tab: a layout for this product only and a unit label (“bottle / bottles”) next to quantities. Empty means the global settings.

Role-based pricing

Tiered Pricing tab → Role & Customer Prices section → pick a role in the search field → Add. The rule appears as a row with a one-line summary; Edit opens its form. A role rule can set a base price (flat regular or sale prices, or a percentage discount), minimum, maximum and step, tiered pricing rules, and a tax status and class. Empty fields keep the product’s values.

Role-based pricing rule form

A role rule replaces the product’s pricing for customers with that role; the first matching role wins. Also available on variations and in global rules, and exportable via CSV (see Import and export). Guests (not logged in) is listed with the roles, so visitors who are not logged in can get a price of their own.

Customer-specific pricing

Same section, same fields, for one customer: type a name or e-mail in the search field, pick the customer → Add. A customer rule beats the role rule, which makes it the place for negotiated prices.

Global pricing rules

WooCommerce → Pricing Rules → Add new applies one pricing to many products at once.

Global pricing rule editor
TabWhat you set
Rule type (in the Rule status box)Product prices (the default: the tabs below) or Cart rule (a discount on the cart from a subtotal or an item count, free shipping, and a minimum order, see Cart rules)
PricingBase price override (flat or %), tiers, and Count quantities: Per product, or Across all products in this rule (mix and match: the quantities of every covered product are added up)
ProductsCategories, tags, brands, products, plus exclusions. Empty = all products. Include subcategories covers the subcategories of the selected (and excluded) categories
Users & RolesRoles and customers to include or exclude. Empty = everyone. Guests (not logged in) is listed with the roles
Quantity limitsMin, max, step, mix & match minimum
TaxTax status and class for matching products (free)
Product overridesWhat happens when a product has its own pricing next to the rule (see Which rule wins?)

The Rule status box on the right replaces the Publish box: the status with its reason, Suspend / Reactivate, the Priority number, optional start and end dates, the rules that override this one, and Test this rule.

Rule status box

Cart rules

A Cart rule works on the cart as a whole instead of pricing products: a discount once the cart reaches a tier, for example 5% from a subtotal of 200, 10% from 400 and 15% from 600, on top of whatever tiered unit prices the lines already have; and a minimum order the cart must reach before checking out. The free version gives a fixed amount off; percentage discounts and the minimum order are premium.

TabWhat you set
DiscountTiers on the subtotal of the counted lines or their number of items, the discount type (a fixed amount off, or a percentage of the discounted lines in premium), the tiers (from → discount; the highest tier reached is used) and the label of the discount line, with the placeholders {discount} and {threshold}
Free shippingGrant free shipping (tick it, then choose: on every order under the rule, or from a subtotal or a number of items of the counted lines; the rule only adds free shipping and never removes what the shipping settings give) and the free shipping bar (premium): switch it on, and give the rule its own Message until reached ({remaining}, {threshold}, {progress}) and Message when reached ({threshold}), or leave them empty for the store messages
Minimum orderAn amount and/or a number of items the counted lines must reach before the order can be placed (premium)
ProductsAs for product rules, and for a cart rule these lists are the scope: only the matching lines count towards the tiers and the minimum, and only they are discounted. Empty lists count the whole cart
Users & RolesAs for product rules: who gets the discount and must meet the minimum
Cart rule editor: the Discount tab
A cart rule: £25 off from £300 and £60 off from £600, with the rule type in the status box
The Free shipping tab
Free shipping from a subtotal, with the free shipping bar and its messages

How it works in the store:

  • The subtotal is counted after tiered prices, before shipping. Whether it includes tax follows the cart’s tax display setting, or a fixed choice on the Cart rules settings page (Subtotal basis).
  • The discount is applied as an automatic coupon, so it shows as one labelled line in the cart, at checkout and in e-mails, and WooCommerce Analytics counts it under Coupons. Free shipping rides on the same coupon: a WooCommerce Free shipping method whose Free shipping requires is set to A valid free shipping coupon (or … OR coupon) becomes available; the Free shipping tab says which zones are set up that way. Customers cannot remove it; it appears and disappears as the subtotal crosses a tier. The checkout block shows the rule title as the coupon code.
  • One cart discount per cart. When several cart rules match a customer, the lowest priority number applies, and a rule with no counted line in the cart is skipped. Product rules and cart rules never compete with each other.
  • Every minimum counts. The minimum order of every cart rule that matches the customer (and counts a line of the cart) must be met; the cart and the checkout, classic and blocks, block the order until then. The two messages take {minimum}, {subtotal} and {count} and live on the Cart rules settings page.
  • A customer coupon stacks with the cart discount by default (Keep the discount next to customer coupons on the Cart rules settings page); an individual-use coupon always replaces it.
  • The nudge (“Add {remaining} more to get {discount} off your order.”) shows under the totals of the classic cart, in the classic checkout’s order review and in the mini cart until the top tier is reached; edit or empty it on the Cart rules settings page. The Cart and Checkout blocks show the discount line but not the nudge.
  • The free shipping bar (premium) is a progress bar towards the rule’s free shipping threshold (“Add $40.00 more for free shipping.”), then a message once it is reached. It follows the rule the cart is under, so a rule without the bar shows none even when a lower-priority rule has one; with an empty cart it shows the first rule covering the visitor at zero. Where it shows is set on the Cart rules settings page (Where it shows): the classic cart totals, the classic checkout’s order review and the mini cart by default, and the product page above the add to cart form. The shortcode [tiered_pricing_free_shipping_bar] and the Free Shipping Bar block put it anywhere else, such as the header or the page of the Cart block; those copies refresh when something is added to the cart. The same page holds the store messages, the two colours (until reached, reached) and the height.
  • The Cart rules settings page is where these store-wide options live: listed among the settings sections only while it is open, but one click away from where they matter. Open it with Cart rules settings next to Add Pricing Rule on the rules list, or with the Customize the cart messages, Edit the minimum order messages and Customize the free shipping bar links on a cart rule’s tabs. The options sit on the left, a sample cart on the right: switch between the cart, the checkout, the mini cart and a product page, and move the Sample cart subtotal slider to see the discount line, the next tier message, the minimum order notices and the free shipping bar change as a customer’s cart would. Changes preview at once; Save changes stores them.
Cart rules settings
The Cart rules settings page: the messages, the free shipping bar’s places and look, with a live preview of the cart, the checkout and the mini cart
A cart rule in the cart
The discount line, the next tier message and the free shipping bar in the classic cart

In the rules list each rule shows its type once the store has both types, and the list filters by type. On the store’s first pricing rule a tip at the rule type explains the two types.

Priority, schedule and status

  • One rule per product and customer. When several match, the lowest priority number is applied (same number: the newer rule). New rules start at 10; give campaigns a low number and the store-wide fallback a high one.
  • Overridden by lists the higher-priority rules that take products and customers away from the rule you edit; the list shows Overridden by N rules.
  • Schedule: a start date, an end date or both, as whole days in the site’s timezone. Outside the window the rule is ignored.
  • Status: Active, Scheduled, Expired, Suspended, Skipped (the rule changes nothing: no price or discount of its pricing type, no tiers, limits or tax; for a cart rule, no tiers, free shipping or minimum) or Draft. The links above the rules list filter by status; rules can also be suspended, duplicated and tested from the row.
Pricing rules list

Which rule wins?

  1. Product rules: the tiers, base price and limits on the product or variation.
  2. A role rule replaces them for customers with that role.
  3. A customer rule replaces both for that customer.
  4. A global rule is applied on top according to its Product overrides tab: Keep the product’s settings (the rule is used only when the product has none of its own), This rule overrides them (always wins), Decide per setting (separately for base prices, tiers and quantity limits) or Follow the store default, which is Prioritize global pricing rules in Price Calculation. Among global rules, the lowest priority number is applied.

Tip

Unsure what applied? Run the Pricing test, or switch on Debug mode to see the source of the pricing under the table and in the cart.

Price calculation settings

Settings → General → Price Calculation, each switch with an Off / On example:

  • Combine variations for quantity calculation: variations of one product count as one item for the tier quantity.
  • Combine variations for minimum quantity: the minimum applies to the sum of all variations in the cart.
  • Calculate percentage discounts from regular price: percentage and amount tiers start from the regular price even during a sale.
  • Round calculated prices: tier prices are rounded to the store’s decimals.
  • Prioritize global pricing rules: a matching global rule wins over the product’s own rules.
Price Calculation settings with Off / On examples

Product page

Everything the customer sees on the product page is set under Settings → General → Pricing Display.

The layout configurator

Pricing Display is a visual editor: the options on the left, a live preview of the product page, the shop grid or the cart on the right. Three tabs cover the storefront: Product page, Shop & category pages and Cart & Checkout. Nothing is stored until you click Save changes.

Layout configurator with the Product page tab and the live preview
The Product page tab: layout, design style, colours and texts on the left, the live preview on the right.

Classic settings

Switch off Layout Configurator under Settings → Advanced → Modules to get the classic rows of settings instead; both edit the same options.

Layouts and design styles

Pick a Layout and a Design style on the Product page tab; a product can override the layout on its Tiered Pricing tab. All layouts highlight the active tier and can be clickable.

LayoutBest forDesign styles
TableQuantity / discount / price, extra columnsDefault + 6
BlocksCompact cards, 3–8 tiersDefault + 8
OptionsRadio list, optional totalsDefault + 6
DropdownMany tiers, little spaceDefault + 1
Horizontal tableTiers as columns—
Plain textOne templated sentence per tierDefault + 2
TooltipTable on hover next to the price—
Table layout design styles
Table: the default style and styles #1 – #6.
Blocks layout design styles
Blocks: the default style and styles #1 – #8.
Options layout design styles
Options: the default style and styles #1 – #6.
Dropdown layout design styles
Dropdown: the default style and the pill style #1.
Plain text layout design styles
Plain text: the default style, the check list #1 and the one-line #2.
Horizontal table layout
Horizontal table
Tooltip layout
Tooltip

Settings shared by all layouts

  • Show on the product page: off means nothing is inserted automatically; place the layout yourself with the shortcode, the block or the Elementor widget.
  • Position: above or below the Add to cart button or form, above the title, or before the summary.
  • Compact layout, Spacing between tiers and Cell padding (Auto keeps the style’s own values).
  • Active tier colour, Discount badge colour and an Active tier border for some table styles. On a new store the active tier colour starts as your theme’s button or accent colour when the plugin can read it (block themes, Storefront, Astra, OceanWP, Flatsome), otherwise as a dark neutral; the field says when the colour came from the theme.
  • Title, Quantity format (Range “10 – 24” or Static “10”), Tier order, Make pricing tiers clickable.
  • Quantity unit (singular and plural), Column headers (rename, or empty to hide a column), Discount format (percentage, amount saved, or both).

Table columns and custom columns

The Custom table columns card adds columns to the table layouts: custom data (price, number or text, entered per tier in the product editor, role rules and global rules) or dynamic values (price excl. or incl. taxes, total row price, saving per item).

Custom column on the product page
A custom ‘Unit price’ column, entered per tier in the product editor

Layout-specific options

  • Blocks: show or hide the discount label.
  • Options / dropdown: crossed-out regular price, the total for the selected option, a base price option (“Buy 1 – 9”), and the option text with {tp_quantity}, {tp_discount}, {tp_rounded_discount}, {tp_base_unit_name}.
  • Plain text: the pricing string (also {tp_price}), first tier on or off.
  • Tooltip: icon colour and size, border.

Tier labels

Design labels such as “Most popular” or “Best value” under Settings → Badges & Labels (shape, icon, colours, live preview) and assign them to tiers in products, role rules or global rules. They show in every layout. On the highlighted row of a table a label switches to inverted colours so it stays readable; each label can keep its colours or use its own pair instead (“On the active tier”).

Tier labels settings with preview

Pricing summary

The Pricing summary card adds a quantity × price block near the layout that updates live: Detailed, Compact or Inline labels, with a title, a position, the Total and Each labels, and a switch for products without tiers.

Savings badge

The Savings badge card shows “You save …” for the selected quantity: a template with {tp_ys_price}, {tp_ys_total_price} and {tp_ys_percentage_discount}, a style (text, pill or outline) and colour (Auto follows the active tier colour), a position (under the price, above the add-to-cart button or after the layout), and switches to include the WooCommerce sale discount and to show it on products without tiers. Also the [tiered_price_you_save] shortcode.

Price display

The Price card decides what the main product price shows: Match shop & categories (the lowest price or a range, as in the grid) or Price for the selected quantity, optionally with the original price crossed out and the total instead of the price per item.

Dynamic price on the product page

Request a quote

Settings → Request a Quote: build forms (text, e-mail, phone, number, select, checkbox, date, file and more) and show them integrated in the layout (an extra row, optionally opening above a quantity) or next to Add to cart (a button beside or instead of it, also for non-purchasable products). Attach a form per product, role rule or global rule. Requests land in WooCommerce → Quote Requests with one-click convert to order; e-mails are WooCommerce e-mails; reCAPTCHA v3 is supported.

Request a quote form

Shop and category pages

Configured on the Shop & category pages tab of Pricing Display.

Layout configurator: shop and category pages tab
Visibility, ‘Where it shows’, the grid item options and a custom layout for the product grid.

Catalog prices

The Price card replaces the regular price of products with tiers by the lowest price with a prefix (“From $19.80”), a price range (“$75.00 – $90.00”) or a custom template ({tp_lowest_price}, {tp_prices_range}, {tp_original_price}), optionally for variable products too.

Catalog prices

Pricing tiers in the product grid

Show on shop and category pages puts a reduced pricing layout in every product card.

  • Where it shows: everywhere, or selected lists (shop, categories, tags, search, related, upsells, cross-sells, shortcodes, the Product Collection block), optionally only for chosen categories.
  • Position: above or below the add-to-cart button or the title.
  • Grid item: compact layout, a dynamic price that follows the quantity, a quantity selector for themes without one, and the number of tiers per card (the rest sit behind a “+N more tiers” link).
  • Layout source: the same as the product page, or a custom layout, style, spacing, colours and title.

Bulk savings badge

A badge on the product image with the biggest discount the product’s tiers give. Template (Save up to {tp_max_discount} by default; also {tp_lowest_price}, {tp_lowest_quantity}, {tp_max_saving}), position (top left or right) and colour (Auto = the active tier colour).

Bulk savings badge and pricing tiers in the product grid
Badge on the image, two tiers per card and a ‘+N more tiers’ link.

Cart and checkout

Configured on the Cart & Checkout tab of Pricing Display.

Layout configurator: cart and checkout tab
Cart prices, total savings and the upsell message, with the cart preview.

Tiered prices in the cart

The cart charges the tier price for the quantity in the cart. Cart prices decides how discounted items look (original price and subtotal crossed out, regular instead of sale price for products on sale). Total savings adds a row before the order total in the cart and the classic checkout (not the Checkout block). Variations are counted together with Combine variations for quantity calculation; Mix and Match global rules add up every covered product.

Cart upsells

Upsell message: “Add 13 more to get $14.50 each” under the item while a higher tier is within reach (not with the Cart block). The template takes {tp_required_quantity}, {tp_next_price}, {tp_next_discount} and {tp_actual_discount}. Next tier shortcuts make the quantity a one-click link and add a progress bar.

Classic cart with the next-tier link, progress bar and Total savings row
Next-tier link and progress bar under the item, ‘Total savings’ in the cart totals.

Coupons

Tick Disable tiered pricing on a coupon and covered products are charged the regular price while it is applied.

Wholesale

Please note

These features belong to the Wholesale & Guest Users module and live on the Wholesale tab. All of them are off until you switch them on. Registration and the private store are in the free plugin; the cart rules and the guest options need the premium version.

Wholesale registration and approval

Let customers apply for a wholesale account on your site. Under Settings → Wholesale → Wholesale registration:

  1. Create the wholesale role (Settings → Advanced → Roles Management) and give it prices with a global rule or per product.
  2. Switch on Enable wholesale registration and pick the Wholesale role approved applicants get.
  3. Choose the Approval mode: by hand, or automatic.
  4. Put the [tiered_pricing_wholesale_registration] shortcode on a page and select it as the Registration page. Optionally set a login redirect page and show an Apply for a wholesale account link under the My Account login form.
Wholesale registration settings
The registration group: the role, the approval mode, the registration page, the login redirect and the login-form link.

The form asks for name, e-mail and, when WooCommerce does not generate passwords, a password. Add your own fields under Application form (text, phone, e-mail, URL, number, dropdown, checkbox, required or not) or pick common ones such as Company, Phone, Tax ID and Website. An optional terms page adds an “I agree” checkbox; a honeypot and optional reCAPTCHA v3 keep spam out. The three status messages are editable.

Wholesale registration form
The form on the storefront. A logged-in customer applies without re-entering name and e-mail.

Applications land under WooCommerce → Wholesale Applications, with a pending counter in the menu. Approve or reject from the list, in bulk, or from the application screen with a reason for the applicant. Approving gives the customer the wholesale role. Four WooCommerce e-mails cover the flow: new application (to the shop), received, approved and rejected (to the applicant).

Wholesale applications queue
One pending application with the row actions.

Guest users

Settings → Wholesale → Guest Users: hide prices from visitors who are not logged in (with a custom message) and/or prevent purchasing (relabelled button and notice).

Private store

Two switches under Settings → Wholesale → Private store, both free:

  • Closed store sends visitors who are not logged in to the login page and back after the login. My Account, the registration page and the pages you list stay open. Exclude the store from page caching for visitors.
  • Catalog visibility by role adds a Who can see rule to every product (Tiered Pricing tab, Visibility section) and category: everyone, only the selected roles, or everyone except them. Guests count as a role. A product’s own rule wins; otherwise it follows its categories, parents included.
Private store settings
The Private store group: closed store with its open pages, and catalog visibility.
Who can see this product
A retail-only product: everyone except the Wholesale role.

Hidden products and categories leave every list, menu, search, the sitemap and the Store API, cannot be bought and are removed from the cart. A visitor who opens a hidden page goes to the login page or gets a not-found page, as you choose. Shop managers see everything; the products list shows a Who can see column and can be filtered by it.

Payment and shipping methods by role

Settings → Wholesale (premium): Payment methods by role and Shipping methods by role: for each method, the roles that may use it. Empty keeps it for everyone; guests count as a role. A minimum order amount or quantity is set per Cart rule, where it can be limited to roles, products and dates; the minimums of earlier versions become such rules on update.

Payment and shipping methods by role
Cash on delivery for wholesale customers only; free freight for guests and retail customers.

Admin order screens keep every method, so you can still create any order by hand.

Orders

Manually created orders

Admin orders skip the cart: click Re-calculate with tiered pricing on the order screen to price every line by the customer’s rules. An order note is added.

Re-calculate tiered pricing in a manual order

Import and export

WooCommerce CSV importer and exporter

Products → Export / Import handle tiered pricing; the columns map automatically (group Tiered Pricing), one column set per role for role-based pricing.

ColumnFormatExample
Tiered pricing typefixed / percentage / amountfixed
Fixed pricing rulesquantity:price,… or quantity=price,…10:90,20:80
Percentage pricing rulesquantity:discount,… or quantity=discount,…10:10,20:20
Amount pricing rulesquantity:amount_off,… or quantity=amount_off,…10:10,20:20
Minimum order quantitynumber5

Spreadsheets turn 20:100 into a time

Excel, Google Sheets and Numbers read a single rule such as 20:100 as a time and save it as 21:40:00, which the importer ignores. Open the CSV with the rule columns as Text, or write the rules as 20=100.

WooCommerce CSV importer column mapping

WP All Import

A Tiered Pricing Table section in product and variation templates: fixed, percentage or amount-off tiers (10:5,20:15), pricing type, minimum quantity and per-role pricing.

Taxes

  • Per rule: role rules and global rules have a Tax section with a tax status (taxable, shipping only, none) and a tax class.
  • Per role: WooCommerce → Settings → Tax → Role-based tax settings: tax-exempt roles, tax class, prices shown incl. or excl. tax, entered prices incl. tax, and a price suffix.

Integrations

Toggles under Settings → Integrations:

CategoryPluginsEffect
Product add-onsWooCommerce Product Add-ons, Acowebs WCPA, Advanced Product Fields (StudioWombat)Add-on costs on top of tier prices
Currency switchersFOX (WOOCS), WP Experts (WCCS), CURCY, Aelia, WPML Multi-currency, YITH Multi Currency, WooPaymentsTier prices converted
Product typesWooCommerce Subscriptions (+ All Products for Subscriptions), Product Bundles, WPC Bundles, Mix & Match, DepositsCorrect prices for plans, bundles, deposits
SEOYoast, Rank Math, SEOPresslowest price / price range variables, offer per tier in structured data
TranslationWPML, PolylangPricing copied to translations; global rules match translated terms
OtherElementor (widget), WP All Import, YITH / Addify Request a QuoteWidget, import add-on, correct quote prices
DiscountsDiscount Rules for WooCommerce (Flycart)Its product discounts take priority: while a rule discounts a product, that product’s tiers are switched off and the discounted price applies at every quantity; free gift items are never re-priced. Switch off under Integrations to let tier prices win instead
ThemesAvada, Astra, Divi, Flatsome, Shopkeeper, The Retailer, Merchandiser, Zakra, OceanWPStyling fixes

Shortcodes, blocks and page builders

Set the position to “I display the table via shortcode / block / Elementor”, then:

MethodHow
Shortcode[tiered-pricing-table] (current product) or [tiered-pricing-table product_id="123"]; attributes override settings: display_type="blocks", title="…", active_tier_color="#96598a", show_discount_column="no", quantity_type="static"
You save[tiered_price_you_save] next to your own price output
BlockTiered Pricing block (WooCommerce category) in a single-product template
ElementorTiered Pricing Table widget in a single-product template

Tools and maintenance

Modules

Settings → Advanced → Modules switches every feature on or off. The Wholesale & Guest Users module carries the whole Wholesale tab.

Cache

Catalog prices are cached and refresh on product save. After bulk changes click Purge cache (Settings → Advanced → Cache), or disable caching while setting up.

Debug mode

Settings → Advanced → Debug prints the pricing source, tiers, limits and a change log under the table and each cart item. It is visible to everyone, so turn it off when done.

Pricing test

Settings → Advanced → Utilities → Pricing Test: pick a product and a visitor or a customer, and see what they pay per quantity, where the prices come from, and every global rule with its verdict and the reasons. Switch to A cart to test the cart rules instead: add a few lines (product and quantity) and see the counted subtotal and items, the order rule that applies and its discount, every minimum met or missed, the next tier message, and each order rule’s verdict. Test in the rules list and Test this rule in the editor open the right mode with that rule highlighted.

Pricing test

Utilities

Settings → Advanced also holds Roles management (create, edit and delete customer roles) and Data clean-up (remove tiered pricing data from products, delete all global rules, or reset every plugin setting to its default, dismissed tips and badges included; products, rules and quote requests stay).

Troubleshooting

  • No table on the product page: Show on the product page must be on, the product needs a tier of 2 or more, and nothing is inserted automatically when the position is set to shortcode or block.
  • Price doesn’t change with quantity: choose Price for the selected quantity under Product page → Price; themes with custom quantity fields need a one-line override (see Developer Docs).
  • Quantity 1 isn’t discounted: by design; lower the regular price or use a role or global base price.
  • Cart shows another tier: the cart counts the cart quantity, plus variations with Combine variations and plus other products for Mix and Match rules; check coupons.
  • Wrong prices for a customer: run the Pricing test for that product and customer; a global rule’s status (Skipped, Suspended, Scheduled, Expired, Overridden by) says why it does nothing.
  • Stale catalog prices: purge the plugin cache (Settings → Advanced) and your page cache.
  • Contact us or read the Guides.

Guides and further reading