In this guide
Explore the steps and reference sections below.
On this page
The Quantity Limits feature allows you to control how many products customers can purchase from your WooCommerce store. Set minimum and maximum quantity rules at the product level, order level, or category level to manage inventory, enforce wholesale minimums, or control purchasing behavior.
Key Capabilities
- Product-Level Limits: Set min/max quantities for individual products
- Variation-Level Limits: Apply different rules to specific product variations
- Order-Level Rules: Enforce minimum/maximum items per order or order totals
- Category-Level Rules (Pro): Apply quantity rules to entire product categories
- Step Quantities: Require products to be purchased in specific multiples (e.g., packs of 6)
- Validation Controls: Block checkout if rules aren’t met
Getting Started
Enabling Quantity Limits
- Go to Swift Commerce → Products → Quantity Limits in your WordPress admin
- Turn on the feature with its header switch if it is disabled
- Configure your global settings, then set rules on individual products
- Click Save Changes to apply changes
Setting Quantity Limits on Products
The most common use of this feature is setting quantity rules directly on products. Here’s how to do it:
Step 1: Edit a Product
- Go to Products → All Products in your WordPress admin
- Click on the product you want to configure
- In the Product Data section, click the Quantity Limits tab
Step 2: Configure Product Rules
| Field | Description |
|---|---|
| Minimum Quantity | The minimum number of items required to add this product to cart. Leave empty for no minimum. |
| Maximum Quantity | The maximum number of items allowed per order. Leave empty for no maximum. |
| Quantity Step | Products must be purchased in multiples of this number. For example, set to 6 for six-packs. |
| Exclude from Order Rules | Check this to exclude the product from global order quantity/total rules. |
Step 3: Save the Product
Click Update to save your quantity limit settings.
Examples
| Scenario | Minimum | Maximum | Step |
|---|---|---|---|
| Wholesale minimum order | 12 | — | — |
| Limited edition (max 2 per customer) | — | 2 | — |
| Six-packs only | 6 | — | 6 |
| Wholesale with case quantities | 24 | — | 12 |
Variable Product Support
Quantity limits work seamlessly with variable products. You can set rules at both the parent product level and for individual variations.
Parent Product Rules
Rules set on the parent variable product apply to all variations unless overridden.
Variation-Level Rules
To set different limits for specific variations:
- Go to the Variations tab in the product data
- Expand the variation you want to configure
- Look for the Quantity Limits fields below the pricing section
- Enter values for Min Qty, Max Qty, and Step (Multiples)
| Field | Description |
|---|---|
| Min Qty | Minimum quantity for this specific variation |
| Max Qty | Maximum quantity for this specific variation |
| Step (Multiples) | Multiples required for this variation |
Note: If a variation field is left empty, it will inherit the parent product’s rules.
General Tab
Configure global display and validation options.
Display Options
| Setting | Description | Default |
|---|---|---|
| Show Product Notices | Display quantity limit information on product pages | On |
| Notice Style | Visual style for notices: Info (Blue), Warning (Yellow), Success (Green), or Neutral (Gray) | Info |
When enabled, customers will see helpful notices like “Minimum order quantity: 6” on product pages.
Validation Options
| Setting | Description | Default |
|---|---|---|
| Block Checkout on Violation | Prevent customers from completing checkout if quantity rules are not met | On |
| Combine Variation Quantities | Count all variations of a product together for maximum quantity limits | Off |
Combine Variation Quantities Example:
- Product has a max limit of 5
- Customer adds 3x Blue and 3x Red variations
- With setting OFF: Each variation is checked independently (both pass)
- With setting ON: Total is 6, which exceeds the max of 5 (blocked)
Products Tab
This tab provides quick access to manage product-level quantity limits.
Quick Links
| Link | Description |
|---|---|
| View All Products | Opens the Products list where you can edit any product |
| Add New Product | Create a new product with quantity limits |
Available Product Options
| Option | Description |
|---|---|
| Minimum Quantity | Per-product minimum requirement |
| Maximum Quantity | Per-product maximum limit |
| Quantity Step | Per-product multiple requirement |
| Exclude from Order Rules | Per-product order rules exclusion |
Cart tab (Pro)
Set global rules that apply to entire orders, regardless of individual product settings.
Cart Quantity Restrictions
| Setting | Description |
|---|---|
| Minimum Items per Order | The minimum total number of items required to checkout |
| Maximum Items per Order | The maximum total number of items allowed per order |
Examples:
- Minimum of 5 items = Customers must have at least 5 products in their cart
- Maximum of 50 items = Limit bulk orders to 50 products
Cart Spend Restrictions
| Setting | Description |
|---|---|
| Minimum Order Total | The minimum cart value required to checkout (in your store currency) |
| Maximum Order Total | The maximum cart value allowed per order |
Examples:
- Minimum $50 = Enforce a minimum spend before checkout
- Maximum $10,000 = Limit high-value orders for fraud protection
Excluded Products
Some products shouldn’t count toward order rules. Use the search field to find and exclude products:
- Type a product name in the search field
- Click a product from the dropdown to add it to the exclusion list
- Excluded products appear as badges below the search
- Click the X on any badge to remove the exclusion
Use Cases:
- Exclude gift cards from minimum order totals
- Exclude shipping insurance from item counts
- Exclude free samples from quantity rules
Categories tab (Pro)
Apply quantity limits to entire product categories. Products inherit these rules unless they have their own settings.
Setting Category Rules
The Category Rules tab displays a table of all your product categories:
| Column | Description |
|---|---|
| Category | The category name |
| Products | Number of products in this category |
| Min Qty | Minimum quantity for products in this category |
| Max Qty | Maximum quantity for products in this category |
| Step | Multiples required for products in this category |
To set a rule:
- Find the category in the table
- Enter values in the Min Qty, Max Qty, or Step fields
- Rules save automatically when you leave the field
Rule Priority
When multiple rules might apply, this is the order of precedence:
- Variation-Level Rules (highest priority)
- Product-Level Rules
- Category-Level Rules (Pro)
- No Rule (lowest priority)
Example:
- Category “Beverages” has max_qty = 24
- Product “Premium Coffee” in that category has max_qty = 6
- Result: Premium Coffee uses max of 6 (product rule overrides category rule)
Messages Tab (Pro)
Customize the error messages shown to customers when quantity rules are violated.
Product Messages
| Message Type | Placeholder | Description |
|---|---|---|
| Minimum Quantity | {min}, {product} | Shown when quantity is below minimum |
| Maximum Quantity | {max}, {product} | Shown when quantity exceeds maximum |
| Step Quantity | {step}, {product} | Shown when quantity isn’t a valid multiple |
Order Messages
| Message Type | Placeholder | Description |
|---|---|---|
| Min Order Quantity | {min} | Shown when cart has too few items |
| Max Order Quantity | {max} | Shown when cart has too many items |
| Min Order Total | {min} | Shown when cart value is too low |
| Max Order Total | {max} | Shown when cart value is too high |
Category Messages (Pro)
| Message Type | Placeholder | Description |
|---|---|---|
| Category Minimum | {min}, {category} | Shown when category quantity is below minimum |
| Category Maximum | {max}, {category} | Shown when category quantity exceeds maximum |
Example Custom Messages
| Default Message | Custom Message |
|---|---|
| “Minimum quantity for {product} is {min}.” | “Please order at least {min} units of {product} to continue.” |
| “A minimum of {min} items is required to checkout.” | “Your cart needs at least {min} items. Add more to proceed!” |
| “Minimum order total is {min}.” | “We require a ${min} minimum order. Add more items to checkout.” |
Current dashboard map
Use General for display and validation behavior, Products for product-level rules and links to edit products, Categories (Pro) for category rules, Cart (Pro) for whole-cart quantity and spend limits, and Messages for customer-facing validation copy.
Cart restrictions (Pro)
Minimum and maximum cart quantity use zero for no restriction. Cart Spend Restrictions can set minimum and maximum spend in the store currency; include shipping rates and related fees only if your policy requires it. Excluded Products are left out of cart quantity and spend calculations. Test mixed carts containing
included and excluded products, and test checkout as well as the cart page.
Rule test checklist
- Check a simple product below, at, and above its minimum and maximum.
- For variable products, compare parent-level rules with variation-level overrides and confirm which rule wins.
- Add products from multiple categories to the same cart and confirm category and cart-level restrictions do not produce contradictory guidance.
- Review storefront messages and order validation in the active WooCommerce checkout type.
Product Defaults and additional product controls (Pro)
The additional controls below require licensed Pro. Enable Quantity Limits, edit a WooCommerce product and open Product data → Quantity Limits. Save with the product’s normal Update or Publish button. Existing product minimum, maximum and step controls remain in Free.
Choose a dropdown or quantity buttons
- In Quantity selector, choose Use dashboard default, Number input, Dropdown or Quantity buttons.
- For Dropdown or Quantity buttons, set Quantity choices to generate from the range or use custom quantities. Enter custom choices such as
1, 3, 6, 12. - Optionally set Control width (px) from 80–320 and a Label suffix, such as items.
- To change the inherited default, go to Swift Commerce → Quantity Limits → Product Defaults, configure the selector and click Save Changes. Only products using Use dashboard default inherit this change.
Generated choices need a finite maximum. Custom lists support up to 100 positive whole quantities and can work without a finite maximum; duplicates are removed and choices are sorted. Both sources are filtered through the current minimum, maximum, step and stock. An invalid range, a read-only quantity input or more than 100 valid choices falls back to the number input. This is not a purchase cap. Classic product forms are supported; Cart and Checkout Blocks retain native quantity controls.
Set quantities for each role
Expand Role-specific quantities. Each WordPress role and Guest has its own row. Enter Minimum, Maximum or Step only where that role needs an override. Blank fields inherit the product/variation or category rule. If a customer matches several roles, the highest specified minimum, lowest specified maximum and common step multiples apply. For example, steps of 2 and 3 require multiples of 6. Test the intended customer role after saving.
Cap a customer’s purchases over time
- Expand Customer purchase limit. Set Maximum units per customer; blank or zero disables it.
- Choose Lifetime, Last 24 hours, Last 7 days, Last 30 days or Last 365 days. Rolling windows use order creation time; they are not calendar-day resets.
- Save the product and test with a logged-in customer that has relevant order history.
The limit uses the customer account, not an IP address or a guest-entered email. Restricted products require sign-in. All variations of the same parent count together. Paid orders, On hold and Pending payment orders reserve units, along with current cart quantities. Cancelled, Failed and Refunded orders do not. Partial refunds restore only refunded item quantities; a money-only refund does not restore units. Pending orders reserve allowance until their status changes. The current order is excluded when validating its own payment.
Set product-specific spend limits
In Product spend limits, enter a minimum and/or maximum in the store’s base currency. Blank or zero disables that bound. The check combines this product’s discounted cart line totals and its variations, excluding tax, shipping and fees. It runs in the cart and at checkout after discounts; minimum spend does not prevent a shopper building the cart incrementally. With Swift Commerce Currency Switcher, the thresholds use the selected currency’s exchange rate—not fixed product prices, conversion fees or price-ending rounding.
Exclude category rules separately
Exclude from category rules skips inherited category quantity rules and removes the product from category quantity totals. It does not disable the product’s own quantity, role, customer-history or spend restrictions. Exclude from Order Rules separately controls global order quantity and spend restrictions. Set the two independently.
Verify the additional rules
- Compare Guest, Customer and any custom role you configured. Check overlapping roles do not leave an impossible quantity range.
- Switch product variations and confirm the selector, quantity range and stock remain consistent.
- Test a prior purchase, a pending order and a quantity refund when using customer-history limits.
- Test spend after coupons, then check your active classic or block checkout.
- Confirm dashboard selector changes affect only products using dashboard defaults.